t_cubspl Interface

public interface t_cubspl

Calls

interface~~t_cubspl~~CallsGraph interface~t_cubspl t_cubspl proc~cubspl_new cubspl_new interface~t_cubspl->proc~cubspl_new interface~interpolate_cubic_spline interpolate_cubic_spline proc~cubspl_new->interface~interpolate_cubic_spline proc~sll_s_bsplines_new sll_s_bsplines_new proc~cubspl_new->proc~sll_s_bsplines_new interface~interpolate_cubic_spline->interface~interpolate_cubic_spline init init proc~sll_s_bsplines_new->init sll_assert sll_assert proc~sll_s_bsplines_new->sll_assert

Module Procedures

public function cubspl_new(x, f, BC, BC_val) result(sf)

Interpolation of function values f(x_i)=f_i, i=1,n with a cubic spline, given left and right boundary condition types of boundary conditions: 0: not-a-knot 1: f'(x_boundary)=0 2: f''(x_boundary)=0

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x(:)

x positions

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

function values at x positions

integer, intent(in) :: BC(1:2)

Boundary condition at x(1)/x(n): =0: not-a-knot, =1: first der. =BC_val(1)/BC_val(2), =2: second der. =BC_val(1)/BC_val(2)

real(kind=wp), intent(in), optional :: BC_val(1:2)

Boundary value for BC(1:2) >0,

Return Value type(t_cubspl)

self