derivative Function

public function derivative(f, dh, order) result(df)

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in), dimension(:) :: f
real(kind=8), intent(in) :: dh
integer, intent(in), optional :: order

Return Value real(kind=8), dimension(size(f))


Source Code

  function derivative(f,dh,order)  result(df)
    real(8),dimension(:),intent(in) :: f
    real(8),intent(in)              :: dh
    integer,intent(in),optional     :: order
    real(8),dimension(size(f))      :: df
    integer                         :: i,L,order_
    L=size(f)
    order_=4;if(present(order))order_=order
    if(L < order_ + 1) stop "derivative: L < order+1."
    select case(order_)
    case(1)
       df = derivF_n121(f,dh)
    case(2)
       df = derivF_n222(f,dh)
    case(4)
       df = derivF_n444(f,dh)
    case(6)
       df = derivF_n666(f,dh)
    case default
       stop "derivative: order is not 1,2,4 or 6"
    end select
  end function derivative