f_spline_1d__eval_deriv Function

private pure function f_spline_1d__eval_deriv(self, x) result(y)

Type Bound

sll_t_spline_1d

Arguments

Type IntentOptional Attributes Name
class(sll_t_spline_1d), intent(in) :: self

1D spline

real(kind=wp), intent(in) :: x

evaluation point

Return Value real(kind=wp)


Calls

proc~~f_spline_1d__eval_deriv~~CallsGraph proc~f_spline_1d__eval_deriv sll_t_spline_1d%f_spline_1d__eval_deriv eval_deriv eval_deriv proc~f_spline_1d__eval_deriv->eval_deriv

Called by

proc~~f_spline_1d__eval_deriv~~CalledByGraph proc~f_spline_1d__eval_deriv sll_t_spline_1d%f_spline_1d__eval_deriv proc~s_spline_1d__eval_array_deriv sll_t_spline_1d%s_spline_1d__eval_array_deriv proc~s_spline_1d__eval_array_deriv->proc~f_spline_1d__eval_deriv

Source Code

  SLL_PURE function f_spline_1d__eval_deriv( self, x ) result( y )

    class(sll_t_spline_1d), intent(in) :: self
    real(wp)              , intent(in) :: x
    real(wp) :: y

    real(wp) :: derivs(1:self%bspl%degree+1)
    integer  :: jmin, jmax

    call self % bspl % eval_deriv( x, derivs, jmin )

    jmax = jmin + self%bspl%degree

    y = dot_product( self%bcoef(jmin:jmax), derivs )

  end function f_spline_1d__eval_deriv