Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
Data types that collect the parameters for various types of initial distributions and define the corresponding functions. This module takes care of the 6d case.
Derived types and interfaces | |
type | sll_t_array |
Array type. More... | |
type | sll_c_distribution_params_6d |
Abstract parameter type. More... | |
type | sll_t_landau_sum_parameters_6d |
Type to define parameters of Landau damping. More... | |
type | sll_t_landau_sum_df_parameters_6d |
Type to define parameters of Landau damping. More... | |
type | sll_t_landau_prod_parameters_6d |
Type to define parameters of Landau damping. More... | |
type | sll_t_landau_diag_parameters_6d |
Type to define parameters of Landau damping. More... | |
type | sll_t_twogaussian_parameters_6d |
Type to specify parameter for double Gaussian (includes bump-on-tail and TSI) More... | |
type | sll_t_itg_parameters_6d |
Type for a ITG simulation. More... | |
type | sll_t_pslab_parameters_6d |
Type for a periodic slab. More... | |
type | sll_t_pslab2_parameters_6d |
Type for a periodic slab. More... | |
type | sll_t_delta_parameters_6d |
interface | signature_init |
interface | signature_eval |
interface | signature_eval_v |
Functions/Subroutines | |
subroutine, public | sll_s_set_local_grid (local_sizes, indices_min, eta_min, delta_eta, tensor_grid) |
subroutine, public | sll_s_set_local_grid_en (local_sizes, indices_min, eta_min, delta_eta, tensor_grid) |
subroutine, public | sll_s_distribution_params_6d_new (params, distrib_type, file_id) |
subroutine, public | sll_s_distribution_initializer_6d (local_sizes, data_indices_min, params, tensor_grid, fdistrib) |
Initialize distribution function with given distribution parameter. More... | |
subroutine, public | sll_s_compute_velocity_transformation (vin, vtrans) |
subroutine, public | sll_s_compute_velocity_transformation_en (vin, vtrans) |
subroutine | init_landau_sum (self, file_id) |
subroutine | init_landau_prod (self, file_id) |
subroutine | init_twogaussian (self, file_id) |
subroutine | init_pslab (self, file_id) |
subroutine | init_delta (self, file_id) |
real(kind=f64) function | eval_landau_sum (self, x) |
real(kind=f64) function | eval_landau_sum_df (self, x) |
real(kind=f64) function | eval_landau_prod (self, x) |
real(kind=f64) function | eval_landau_v (self, x) |
real(kind=f64) function | eval_landau_v_sum (self, x) |
real(kind=f64) function | eval_landau_diag (self, x) |
real(kind=f64) function | eval_twogaussian_sum (self, x) |
real(kind=f64) function | eval_twogaussian_v (self, x) |
real(kind=f64) function | eval_pslab (self, x) |
real(kind=f64) function | eval_delta (self, x) |
real(kind=f64) function | eval_pslab2 (self, x) |
real(kind=f64) function | eval_pslab_v (self, x) |
Variables | |
integer(kind=i32), parameter, public | sll_p_landau_prod = 0 |
Parameters describing various types of initial conditions. More... | |
integer(kind=i32), parameter, public | sll_p_landau_sum = 1 |
integer(kind=i32), parameter, public | sll_p_landau_diag = 2 |
integer(kind=i32), parameter, public | sll_p_pslab = 3 |
integer(kind=i32), parameter | sll_p_twogaussian_prod = 4 |
integer(kind=i32), parameter, public | sll_p_twogaussian_sum = 5 |
integer(kind=i32), parameter | sll_p_twogaussian_diag = 6 |
integer(kind=i32), parameter, public | sll_p_pslab2 = 7 |
integer(kind=i32), parameter, public | sll_p_delta = 9 |
integer(kind=i32), parameter, public | sll_p_landau_sum_df = 8 |
|
private |
Definition at line 836 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 728 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 689 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 658 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 674 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 704 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 716 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 782 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 854 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 924 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 745 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 765 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 628 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 547 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 526 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 597 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 567 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_compute_velocity_transformation | ( | real(kind=f64), intent(in) | vin, |
real(kind=f64), intent(out) | vtrans | ||
) |
Definition at line 450 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_compute_velocity_transformation_en | ( | real(kind=f64), intent(in) | vin, |
real(kind=f64), intent(out) | vtrans | ||
) |
Definition at line 486 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_distribution_initializer_6d | ( | integer(kind=i32), dimension(6), intent(in) | local_sizes, |
integer(kind=i32), dimension(6), intent(in) | data_indices_min, | ||
class(sll_c_distribution_params_6d), intent(in) | params, | ||
type(sll_t_array), dimension(6), intent(in) | tensor_grid, | ||
real(kind=f64), dimension(1:,1:,1:,1:,1:,1:), intent(out) | fdistrib | ||
) |
Initialize distribution function with given distribution parameter.
Definition at line 413 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_distribution_params_6d_new | ( | class( sll_c_distribution_params_6d ), intent(out), allocatable | params, |
character(*), intent(in) | distrib_type, | ||
integer(kind=i32) | file_id | ||
) |
Definition at line 373 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_set_local_grid | ( | integer(kind=i32), dimension(6), intent(in) | local_sizes, |
integer(kind=i32), dimension(6), intent(in) | indices_min, | ||
real(kind=f64), dimension(6), intent(in) | eta_min, | ||
real(kind=f64), dimension(6), intent(in) | delta_eta, | ||
type(sll_t_array), dimension(6), intent(out) | tensor_grid | ||
) |
Definition at line 312 of file sll_m_distribution_function_initializer_6d.F90.
subroutine, public sll_m_distribution_function_initializer_6d::sll_s_set_local_grid_en | ( | integer(kind=i32), dimension(6), intent(in) | local_sizes, |
integer(kind=i32), dimension(6), intent(in) | indices_min, | ||
real(kind=f64), dimension(6), intent(in) | eta_min, | ||
real(kind=f64), dimension(6), intent(in) | delta_eta, | ||
type(sll_t_array), dimension(6), intent(out) | tensor_grid | ||
) |
Definition at line 339 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_delta = 9 |
Definition at line 63 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_landau_diag = 2 |
Definition at line 57 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_landau_prod = 0 |
Parameters describing various types of initial conditions.
Definition at line 55 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_landau_sum = 1 |
Definition at line 56 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_landau_sum_df = 8 |
Definition at line 64 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_pslab = 3 |
Definition at line 58 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_pslab2 = 7 |
Definition at line 62 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 61 of file sll_m_distribution_function_initializer_6d.F90.
|
private |
Definition at line 59 of file sll_m_distribution_function_initializer_6d.F90.
integer(kind=i32), parameter, public sll_p_twogaussian_sum = 5 |
Definition at line 60 of file sll_m_distribution_function_initializer_6d.F90.