Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
Module for 1D splines, linear combination of B-spline functions.
Here we define a 1D spline type as an element of the linear space given by the span of the given B-splines (basis functions). Therefore, initialization of a 1D spline object requires an existing B-splines object, to which a private (polymorphic) pointer is associated. The B-spline coefficients are stored in a public allocatable array; at initialization the array is allocated to the proper size and all values are set to zero. In most situations the B-spline coefficients are not set directly by the end user, but are computed by some other object (e.g., a Poisson solver or a spline interpolator). Various public methods allow the user to evaluate the 1D spline S(x) and its derivative ∂S(x)/∂x any position x.
Derived types and interfaces | |
type | sll_t_spline_1d |
1D spline More... | |
Functions/Subroutines | |
subroutine | s_spline_1d__init (self, bsplines) |
Initialize 1D spline object as element of span(B-splines) More... | |
subroutine | s_spline_1d__free (self) |
Destroy 1D spline (re-initialization is possible afterwards) More... | |
Variables | |
integer, parameter | wp = f64 |
Working precision. More... | |
|
private |
Destroy 1D spline (re-initialization is possible afterwards)
[in,out] | self | 1D spline |
Definition at line 91 of file sll_m_spline_1d.F90.
|
private |
Initialize 1D spline object as element of span(B-splines)
[out] | self | 1D spline: new element of 1D spline space |
[in] | bsplines | B-splines: given basis of 1D spline space |
Definition at line 66 of file sll_m_spline_1d.F90.
|
private |
Working precision.
Definition at line 37 of file sll_m_spline_1d.F90.