Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
Interpolator 1d using cubic splines on regular mesh.
the following provides an implementation for the abstract interface sll_interpolator_1d and define spline interpolation of values in data define on original grid at points coordinates
Derived types and interfaces | |
type | sll_t_cubic_spline_interpolator_1d |
Cubic spline interpolator 1d regular grid. More... | |
type | sll_cubic_spline_interpolator_1d_ptr |
Pointer to cubic spline interpolator implementation 1D. More... | |
interface | sll_o_delete |
Deallocate the interpolator object. More... | |
Functions/Subroutines | |
subroutine | spline_interpolate1d (this, num_pts, data, coordinates, output_array) |
subroutine | spline_interpolate1d_disp (this, num_pts, data, alpha, output_array) |
Computes the interpolated values at each grid point replaced by alpha using cubic spline interpolation. More... | |
subroutine | spline_interpolate1d_disp_inplace (this, num_pts, data, alpha) |
subroutine | compute_interpolants_cs1d (interpolator, data_array, eta_coords, size_eta_coords) |
subroutine | interpolate_values_cs1d (interpolator, num_pts, vals_to_interpolate, output_array) |
subroutine | interpolate_derivatives_cs1d (interpolator, num_pts, vals_to_interpolate, output_array) |
real(kind=f64) function | interpolate_value_cs1d (interpolator, eta1) |
real(kind=f64) function | interpolate_deriv1_cs1d (interpolator, eta1) |
type(sll_t_cubic_spline_interpolator_1d) function, pointer, public | sll_f_new_cubic_spline_interpolator_1d (num_points, xmin, xmax, bc_type, slope_left, slope_right, fast_algorithm) |
subroutine | initialize_cs1d_interpolator (interpolator, num_points, xmin, xmax, bc_type, slope_left, slope_right, fast_algorithm) |
initialize cubic spline interpolator More... | |
subroutine | delete_cs1d (obj) |
subroutine | set_coefficients_cs1d (interpolator, coeffs) |
real(kind=f64) function, dimension(:), pointer | get_coefficients_cs1d (interpolator) |
|
private |
Definition at line 182 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 383 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 400 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
initialize cubic spline interpolator
Definition at line 317 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 236 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 216 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 229 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 203 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 388 of file sll_m_cubic_spline_interpolator_1d.F90.
type(sll_t_cubic_spline_interpolator_1d) function, pointer, public sll_m_cubic_spline_interpolator_1d::sll_f_new_cubic_spline_interpolator_1d | ( | integer(kind=i32), intent(in) | num_points, |
real(kind=f64), intent(in) | xmin, | ||
real(kind=f64), intent(in) | xmax, | ||
integer(kind=i32), intent(in) | bc_type, | ||
real(kind=f64), intent(in), optional | slope_left, | ||
real(kind=f64), intent(in), optional | slope_right, | ||
logical, intent(in), optional | fast_algorithm | ||
) |
Definition at line 252 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 97 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Computes the interpolated values at each grid point replaced by alpha using cubic spline interpolation.
Definition at line 112 of file sll_m_cubic_spline_interpolator_1d.F90.
|
private |
Definition at line 128 of file sll_m_cubic_spline_interpolator_1d.F90.