|  | Semi-Lagrangian Library
    Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices. | 
Particle pusher based on a variation of the energy and charge-conserving discrete gradient method with subcycling, implicit.
MPI parallelization by domain cloning. Periodic boundaries. Spline DoFs numerated by the point the spline starts. Reference: Kormann, Sonnendrücker, Energy-conserving time propagation for a structure-preserving particle-in-cell Vlasov–Maxwell solver, Journal of Computational Physics 425, 109890, 2021
| Derived types and interfaces | |
| type | sll_t_time_propagator_pic_vm_1d2v_disgradec_sub | 
| Functions/Subroutines | |
| subroutine | strang_splitting_pic_vm_1d2v_disgradec (self, dt, number_steps) | 
| Strang splitting.  More... | |
| subroutine | lie_splitting_pic_vm_1d2v_disgradec (self, dt, number_steps) | 
| Lie splitting.  More... | |
| subroutine | lie_splitting_back_pic_vm_1d2v_disgradec (self, dt, number_steps) | 
| Lie splitting.  More... | |
| subroutine | initialize_pic_vm_1d2v_disgradec (self, maxwell_solver, kernel_smoother_0, kernel_smoother_1, particle_group, phi_dofs, efield_dofs, bfield_dofs, x_min, Lx, filter) | 
| Constructor.  More... | |
| subroutine | initialize_file_pic_vm_1d2v_disgradec (self, maxwell_solver, kernel_smoother_0, kernel_smoother_1, particle_group, phi_dofs, efield_dofs, bfield_dofs, x_min, Lx, filter, filename) | 
| Constructor.  More... | |
| subroutine | delete_pic_vm_1d2v_disgradec (self) | 
| subroutine | reinit_fields_disgradec_sub (self) | 
| 
 | private | 
| [in,out] | self | time splitting object | 
Definition at line 198 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
Constructor.
| [out] | self | time splitting object | 
| [in] | maxwell_solver | Maxwell solver | 
| [in] | kernel_smoother_0 | Kernel smoother | 
| [in] | kernel_smoother_1 | Kernel smoother | 
| [in] | particle_group | Particle group | 
| phi_dofs | DoFs describing the scalar potential phi | |
| [in] | efield_dofs | array for the coefficients of the efields | 
| [in] | bfield_dofs | array for the coefficients of the bfield | 
| [in] | x_min | Lower bound of x domain | 
| [in] | lx | Length of the domain in x direction. | 
| [in] | filename | name of nml-file | 
Definition at line 156 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
Constructor.
| [out] | self | time splitting object | 
| [in] | maxwell_solver | Maxwell solver | 
| [in] | kernel_smoother_0 | Kernel smoother | 
| [in] | kernel_smoother_1 | Kernel smoother | 
| [in] | particle_group | Particle group | 
| phi_dofs | DoFs describing the scalar potential phi | |
| [in] | efield_dofs | array for the coefficients of the efields | 
| [in] | bfield_dofs | array for the coefficients of the bfield | 
| [in] | x_min | Lower bound of x domain | 
| [in] | lx | Length of the domain in x direction. | 
Definition at line 116 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
Lie splitting.
| [in,out] | self | time splitting object | 
| [in] | dt | time step | 
| [in] | number_steps | number of time steps | 
Definition at line 98 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
Lie splitting.
| [in,out] | self | time splitting object | 
| [in] | dt | time step | 
| [in] | number_steps | number of time steps | 
Definition at line 81 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
| [in,out] | self | time splitting object | 
Definition at line 206 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
| 
 | private | 
Strang splitting.
| [in,out] | self | time splitting object | 
| [in] | dt | time step | 
| [in] | number_steps | number of time steps | 
Definition at line 61 of file sll_m_time_propagator_pic_vm_1d2v_disgradEC_sub.F90.
 1.9.1
 1.9.1