A class that initializes the distribution function as a perturbed Maxwellian. More...
Public Member Functions | |
void | perturbation_initialization (DFieldX perturbation, int const perturb_mode, double const perturb_amplitude) const |
Initialization of the perturbation. | |
SingleModePerturbInitialization (DConstFieldSpVx fequilibrium, host_t< IFieldMemSp > init_perturb_mode, host_t< DFieldMemSp > init_perturb_amplitude) | |
Creates an instance of the SingleModePerturbInitialization class. | |
DFieldSpXVx | operator() (DFieldSpXVx allfdistribu) const override |
Initializes the distribution function as as a perturbed Maxwellian. | |
void | perturbation_initialization (DFieldXY perturbation, int const perturb_mode, double const perturb_amplitude) const |
Initialization of the perturbation. | |
SingleModePerturbInitialization (DConstFieldSpVxVy fequilibrium, host_t< IFieldMemSp > init_perturb_mode, host_t< DFieldMemSp > init_perturb_amplitude) | |
Creates an instance of the SingleModePerturbInitialization class. | |
DFieldSpXYVxVy | operator() (DFieldSpXYVxVy allfdistribu) const override |
Initializes the distribution function as as a perturbed Maxwellian. | |
Public Member Functions inherited from IInitialization | |
virtual DFieldSpVparMu | operator() (DFieldSpVparMu allfdistribu) const =0 |
Operator for initializing a distribution function. | |
Static Public Member Functions | |
static SingleModePerturbInitialization | init_from_input (DConstFieldSpVx allfequilibrium, IdxRangeSp idx_range_kinsp, PC_tree_t const &yaml_input_file) |
Read init_perturb_mode and init_perturb amplitude in a YAML input file to initialize the perturbation. | |
static SingleModePerturbInitialization | init_from_input (DConstFieldSpVxVy allfequilibrium, IdxRangeSp idx_range_kinsp, PC_tree_t const &yaml_input_file) |
Read init_perturb_mode and init_perturb amplitude in a YAML input file to initialize the perturbation. | |
A class that initializes the distribution function as a perturbed Maxwellian.
Initialization operator with a sinusoidal perturbation of a Maxwellian. This initializes all species.
A class that initializes the distribution function as a perturbed Maxwellian defined as $f = f_{maxw}(v) * (1 + perturb(x))$, where $f_{maxw}(v)$ is a Maxwellian, and $perturb(x)$ is a sinusoidal perturbation.
SingleModePerturbInitialization::SingleModePerturbInitialization | ( | DConstFieldSpVx | fequilibrium, |
host_t< IFieldMemSp > | init_perturb_mode, | ||
host_t< DFieldMemSp > | init_perturb_amplitude | ||
) |
Creates an instance of the SingleModePerturbInitialization class.
[in] | fequilibrium | A Maxwellian. |
[in] | init_perturb_mode | The perturbation mode. |
[in] | init_perturb_amplitude | The perturbation amplitude. |
SingleModePerturbInitialization::SingleModePerturbInitialization | ( | DConstFieldSpVxVy | fequilibrium, |
host_t< IFieldMemSp > | init_perturb_mode, | ||
host_t< DFieldMemSp > | init_perturb_amplitude | ||
) |
Creates an instance of the SingleModePerturbInitialization class.
[in] | fequilibrium | A Maxwellian. |
[in] | init_perturb_mode | The perturbation mode. |
[in] | init_perturb_amplitude | The perturbation amplitude. |
void SingleModePerturbInitialization::perturbation_initialization | ( | DFieldX | perturbation, |
int const | perturb_mode, | ||
double const | perturb_amplitude | ||
) | const |
Initialization of the perturbation.
[in,out] | perturbation | On input: an uninitialized array On output: an array containing a values that has a sinusoidal variation with given amplitude and mode. |
[in] | perturb_mode | The mode of the perturbation. |
[in] | perturb_amplitude | The amplitude of the perturbation. |
|
static |
Read init_perturb_mode and init_perturb amplitude in a YAML input file to initialize the perturbation.
[in] | allfequilibrium | equilibrium distribution function. |
[in] | idx_range_kinsp | Index range for the kinetic species. |
[in] | yaml_input_file | YAML input file. |
|
overridevirtual |
Initializes the distribution function as as a perturbed Maxwellian.
[in,out] | allfdistribu | The initialized distribution function. |
Implements IInitialization.
void SingleModePerturbInitialization::perturbation_initialization | ( | DFieldXY | perturbation, |
int const | perturb_mode, | ||
double const | perturb_amplitude | ||
) | const |
Initialization of the perturbation.
[in,out] | perturbation | On input: an uninitialized array On output: an array containing a values that has a sinusoidal variation with given amplitude and mode. |
[in] | perturb_mode | The mode of the perturbation. |
[in] | perturb_amplitude | The amplitude of the perturbation. |
|
overridevirtual |
Initializes the distribution function as as a perturbed Maxwellian.
[in,out] | allfdistribu | The initialized distribution function. |
Implements IInitialization.
|
static |
Read init_perturb_mode and init_perturb amplitude in a YAML input file to initialize the perturbation.
[in] | allfequilibrium | equilibrium distribution function. |
[in] | idx_range_kinsp | Index range for the kinetic species. |
[in] | yaml_input_file | YAML input file. |