Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Data Types | Modules | Functions/Subroutines | Variables
sll_m_operator_splitting.F90 File Reference
#include "sll_assert.h"
#include "sll_memory.h"
#include "sll_working_precision.h"
Include dependency graph for sll_m_operator_splitting.F90:

Go to the source code of this file.

Data Types

type  sll_t_operator_splitting
 operator splitting object More...
 

Modules

module  sll_m_operator_splitting
 Base class of operator splitting library. It is only used with particle-in-cell method.
 

Functions/Subroutines

subroutine operator (this, dt)
 dummy implementation of an sll_t_operator_splitting needed to provide the interface. The class cannot be abstract because the splitting coefficients are initialised here as they are generic for any type of operator. More...
 
class(sll_t_operator_splitting) function, pointer new_operator_splitting (split_case, split_step, nb_split_step, split_begin_T, dt)
 Returns a pointer to a heap-allocated sll_t_operator_splitting object. More...
 
subroutine, public sll_s_operator_splitting_init (split, split_case, split_step, nb_split_step, split_begin_T, dt)
 Initialises data for operator splitting. More...
 
subroutine, public sll_s_do_split_steps (split, dt, number_time_steps)
 Apply the composition method for given number of times steps. More...
 

Variables

integer(kind=i32), parameter sll_user_defined = 0
 user defined splitting More...
 
integer(kind=i32), parameter, public sll_p_lie_tv = 1
 Lie splitting T first (order 1) More...
 
integer(kind=i32), parameter, public sll_p_lie_vt = 2
 Lie splitting V first x (order 1) More...
 
integer(kind=i32), parameter, public sll_p_strang_tvt = 3
 Strang splitting T first (order 2) More...
 
integer(kind=i32), parameter, public sll_p_strang_vtv = 4
 Strang splitting V first (order 2) More...
 
integer(kind=i32), parameter, public sll_p_triple_jump_tvt = 5
 Triple jump splitting T first (order 4) More...
 
integer(kind=i32), parameter, public sll_p_triple_jump_vtv = 6
 Triple jump splitting V first (order 4) More...
 
integer(kind=i32), parameter, public sll_p_order6_tvt = 7
 Order 6 splitting T first (order 6) More...
 
integer(kind=i32), parameter, public sll_p_order6_vtv = 8
 Order 6 splitting V first (order 6) More...
 
integer(kind=i32), parameter sll_order6vp_tvt = 9
 Specific Vlasov-Poisson splitting T first (order 6) More...
 
integer(kind=i32), parameter sll_order6vp_vtv = 10
 Specific Vlasov-Poisson splitting V first (order 6) More...
 
integer(kind=i32), parameter sll_order6vpnew_tvt = 11
 Specific Vlasov-Poisson splitting T first (order 6) More...
 
integer(kind=i32), parameter sll_order6vpnew1_vtv = 12
 Specific Vlasov-Poisson splitting V first (order 6) More...
 
integer(kind=i32), parameter sll_order6vpnew2_vtv = 13
 Specific Vlasov-Poisson splitting V first (order 6) More...
 
integer(kind=i32), parameter sll_order6vp2d_vtv = 14
 Specific Vlasov-Poisson splitting V first (order 6) More...
 
integer(kind=i32), parameter sll_order6vpot_vtv = 15
 Specific Vlasov-Poisson splitting V first (order 6) More...
 
    Report Typos and Errors