Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
#include "sll_working_precision.h"
#include "sll_memory.h"
#include "sll_assert.h"
Go to the source code of this file.
Data Types | |
type | sll_t_nufft_2d |
Nufft object for 2d interpolation. It contains fft plan and 1d array to pass data to nufft2d subroutine from nufft package. More... | |
Modules | |
module | sll_m_nufft_interpolation |
Functions/Subroutines | |
subroutine | sll_s_nufft_2d_init (self, nc_eta1, eta1_min, eta1_max, nc_eta2, eta2_min, eta2_max) |
Allocate and initialize data and prepare the fft plan. More... | |
subroutine | sll_s_nufft_2d_free (self) |
Delete the nufft object. More... | |
subroutine | sll_s_nufft_2d_compute_fft (self, f_in) |
Compute the fft and prepare data for nufft call. More... | |
real(kind=f64) function | sll_f_nufft_2d_interpolate_value_from_fft (self, x, y) |
Interpolate single value when the fft is already compute. More... | |
subroutine | sll_s_nufft_2d_interpolate_array_values (self, f_in, x, y, f_out) |
Compute the fft and interpolate array values. More... | |
subroutine | sll_s_nufft_2d_interpolate_array_values_axi (self, f, x, y) |
Compute the fft and interpolate array values when x and y could be outside the domaine. Useful for rotation and axisymetric geometry. More... | |
subroutine | sll_s_nufft_2d_interpolate_array_from_fft (self, x, y, f) |
Compute the fft and interpolate array values when x and y are surely inside the domain. Optimized version for advector. More... | |
type sll_m_nufft_interpolation::sll_t_nufft_2d |
Nufft object for 2d interpolation. It contains fft plan and 1d array to pass data to nufft2d subroutine from nufft package.
Definition at line 13 of file sll_m_nufft_interpolation.F90.
Class Members | ||
---|---|---|
real(kind=f64) | epsnufft | |
real(kind=f64) | eta1_max | |
real(kind=f64) | eta1_min | |
real(kind=f64) | eta2_max | |
real(kind=f64) | eta2_min | |
complex(kind=f64), dimension(:), allocatable | f1 | |
complex(kind=f64), dimension(:), allocatable | f1d | |
complex(kind=f64), dimension(:), allocatable | f2 | |
complex(kind=f64), dimension(:, :), allocatable | fcmplx | |
type(sll_t_fft) | fft | |
integer(kind=i32), dimension(:), allocatable | i | |
integer(kind=i32), dimension(:), allocatable | j | |
integer(kind=i32) | nc_eta1 | |
integer(kind=i32) | nc_eta2 | |
real(kind=f64), dimension(:), allocatable | x | |
real(kind=f64), dimension(:), allocatable | y |