Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
Functions/Subroutines | |
subroutine, public | sll_s_apply_fd (nin, maxorder, xdata, ydata, xtgt, out) |
Apply finite difference formula to compute derivative. More... | |
subroutine, public | sll_s_populate_weights (z, x, nd, m, c) |
subroutine, public sll_m_fornberg::sll_s_apply_fd | ( | integer(kind=i32), intent(in) | nin, |
integer(kind=i32), intent(in) | maxorder, | ||
real(kind=f64), dimension(0:nin - 1), intent(in) | xdata, | ||
real(kind=f64), dimension(0:nin - 1), intent(in) | ydata, | ||
real(kind=f64), intent(in) | xtgt, | ||
real(kind=f64), dimension(0:maxorder), intent(out) | out | ||
) |
Apply finite difference formula to compute derivative.
[in] | nin | number of points where the function is evaluated |
[in] | maxorder | maximum order of the derivative |
[in] | xdata | abscissae vector |
[in] | ydata | ordinates vector |
[in] | xtgt | position where the derivatives will be evaluated |
[out] | out(0:n) | values of n th derivatives at xtgt |
Definition at line 54 of file sll_m_fornberg.F90.
subroutine, public sll_m_fornberg::sll_s_populate_weights | ( | real(kind=f64), intent(in) | z, |
real(kind=f64), dimension(0:nd), intent(in) | x, | ||
integer(kind=i32), intent(in) | nd, | ||
integer(kind=i32), intent(in) | m, | ||
real(kind=f64), dimension(0:nd, 0:m), intent(out) | c | ||
) |
[in] | z | location where approximations are to be accurate, |
[in] | x(0:nd) | grid point locations, found in x(0:n) |
[in] | nd | dimension of x- and c-arrays in calling program x(0:nd) and c(0:nd,0:m), respectively, |
[in] | m | highest derivative for which weights are sought, |
[out] | c(0:nd,0:m) | weights at grid locations x(0:n) for derivatives of order 0:m, found in c(0:nd,0:m) |
See: Generation of Finite Difference Formulas on Arbitrarily Spaced Grids, Bengt Fornberg, Mathematics of compuation, 51, 184, 1988, 699-706
Definition at line 80 of file sll_m_fornberg.F90.