Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Private Member Functions | Private Attributes | List of all members
sll_t_const_coef_advection_2d Type Reference

Simple operator splitting type for 2D constant coefficient advection Extends operator splitting. More...

Inheritance diagram for sll_t_const_coef_advection_2d:
Collaboration diagram for sll_t_const_coef_advection_2d:

Private Member Functions

procedure, pass(this) operatort => adv1
 advection in first direction More...
 
procedure, pass(this) operatorv => adv2
 advection in second direction More...
 

Private Attributes

class(sll_c_interpolator_1d), pointer interp1
 interpolator object in first direction More...
 
class(sll_c_interpolator_1d), pointer interp2
 interpolator object in second direction More...
 
real(kind=f64), dimension(:, :), pointer data
 function do be evolved More...
 
integer(kind=i32) n1
 dimension in first direction More...
 
integer(kind=i32) n2
 dimension in second direction More...
 
real(kind=f64) a1
 advection coefficient first direction More...
 
real(kind=f64) a2
 advection coefficient second direction More...
 
real(kind=f64) current_time = 0.0_f64
 current time to be incremented More...
 
integer(kind=i32) split_case
 defines the splitting method to be chosen from those defined as global variables in sll_m_operator_splitting module More...
 
integer(kind=i32) nb_split_step
 number of split steps in the method More...
 
real(kind=f64), dimension(:), pointer split_step
 array containing the coefficients of the each split step More...
 
logical split_begin_t
 Start with operatorT if true and with operatorV if false. More...
 
integer(kind=i32) dim_split_v
 Used for specific Vlasov-Poisson splitting. More...
 

Detailed Description

Simple operator splitting type for 2D constant coefficient advection Extends operator splitting.

This should be treated as an opaque type. No access to its internals is directly allowed.

Definition at line 29 of file sll_m_const_coef_advection_2d.F90.

Member Function/Subroutine Documentation

◆ operatort()

procedure, pass(this) operatort
private

advection in first direction

Definition at line 45 of file sll_m_const_coef_advection_2d.F90.

◆ operatorv()

procedure, pass(this) operatorv
private

advection in second direction

Definition at line 46 of file sll_m_const_coef_advection_2d.F90.

Member Data Documentation

◆ a1

real(kind=f64) a1
private

advection coefficient first direction

Definition at line 41 of file sll_m_const_coef_advection_2d.F90.

◆ a2

real(kind=f64) a2
private

advection coefficient second direction

Definition at line 43 of file sll_m_const_coef_advection_2d.F90.

◆ current_time

real(kind=f64) current_time = 0.0_f64
privateinherited

current time to be incremented

Definition at line 65 of file sll_m_operator_splitting.F90.

◆ data

real(kind=f64), dimension(:, :), pointer data
private

function do be evolved

Definition at line 35 of file sll_m_const_coef_advection_2d.F90.

◆ dim_split_v

integer(kind=i32) dim_split_v
privateinherited

Used for specific Vlasov-Poisson splitting.

Definition at line 76 of file sll_m_operator_splitting.F90.

◆ interp1

class(sll_c_interpolator_1d), pointer interp1
private

interpolator object in first direction

Definition at line 31 of file sll_m_const_coef_advection_2d.F90.

◆ interp2

class(sll_c_interpolator_1d), pointer interp2
private

interpolator object in second direction

Definition at line 33 of file sll_m_const_coef_advection_2d.F90.

◆ n1

integer(kind=i32) n1
private

dimension in first direction

Definition at line 37 of file sll_m_const_coef_advection_2d.F90.

◆ n2

integer(kind=i32) n2
private

dimension in second direction

Definition at line 39 of file sll_m_const_coef_advection_2d.F90.

◆ nb_split_step

integer(kind=i32) nb_split_step
privateinherited

number of split steps in the method

Definition at line 70 of file sll_m_operator_splitting.F90.

◆ split_begin_t

logical split_begin_t
privateinherited

Start with operatorT if true and with operatorV if false.

Definition at line 74 of file sll_m_operator_splitting.F90.

◆ split_case

integer(kind=i32) split_case
privateinherited

defines the splitting method to be chosen from those defined as global variables in sll_m_operator_splitting module

Definition at line 68 of file sll_m_operator_splitting.F90.

◆ split_step

real(kind=f64), dimension(:), pointer split_step
privateinherited

array containing the coefficients of the each split step

Definition at line 72 of file sll_m_operator_splitting.F90.

    Report Typos and Errors