XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
switch_em_es.hpp File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void switch_em_es (Simulation< DeviceType > &sml, Plasma &plasma, const PerturbedBField< DeviceType > &perturbed_B_field)
 

Function Documentation

void switch_em_es ( Simulation< DeviceType > &  sml,
Plasma plasma,
const PerturbedBField< DeviceType > &  perturbed_B_field 
)

Within the EM algorithm, this routine switches the behavior of the EM code between the electrostatic algorithm and the electromagnetic algorithm. At the fundamental level, this involves adjusting the time step size and the number of electron subcycling steps, and setting an indicator flag in the sml class to indicate to other parts of the code whether to use the ES or EM method. If the indicator is set to ES, the Ampere solver and pullback transform are skipped, the Poisson equation is set up with the adiabatic response term on the RHS, and the electron background distribution function will contain the adiabatic response (used in the weight update).

Parameters
[in,out]smlClass with simulation parameters
[in]perturbed_B_fieldClass with parameters for RMP field

Here is the call graph for this function: