A class that initializes the distribution function as a sum of two Maxwellian functions. More...
Public Member Functions | |
void | compute_twomaxwellian (DFieldVx fMaxwellian, double epsilon_bot, double temperature_bot, double mean_velocity_bot) const |
Compute a distribution function defined as a sum of two Maxwellians. | |
BumpontailEquilibrium (host_t< DFieldMemSp > epsilon_bot, host_t< DFieldMemSp > temperature_bot, host_t< DFieldMemSp > mean_velocity_bot) | |
Creates an instance of the BumpontailEquilibrium class. | |
DFieldSpVx | operator() (DFieldSpVx allfequilibrium) const override |
Initializes the distribution function as the sum of a bulk and a bump-on-tail Maxwellians. | |
host_t< DConstFieldSp > | epsilon_bot () const |
A method for accessing the m_epsilon_bot member variable of the class. | |
host_t< DConstFieldSp > | temperature_bot () const |
A method for accessing the m_temperature_bot member variable of the class. | |
host_t< DConstFieldSp > | mean_velocity_bot () const |
A method for accessing the m_mean_velocity_bot member variable of the class. | |
Public Member Functions inherited from IEquilibrium | |
virtual DFieldSpVparMu | operator() (DFieldSpVparMu allfequilibrium) const =0 |
Operator for initializing an equilibrium distribution function. | |
virtual DFieldSpVxVy | operator() (DFieldSpVxVy allfequilibrium) const =0 |
Operator for initializing a distribution function that does not depend on space. | |
Static Public Member Functions | |
static BumpontailEquilibrium | init_from_input (IdxRangeSp idx_range_kinsp, PC_tree_t const &yaml_input_file) |
Read the density, temperature and mean velocity required to initialize the bump-on-tail Maxwellian in a YAML input file. | |
A class that initializes the distribution function as a sum of two Maxwellian functions.
This class initializes the distribution function as a sum of two Maxwellian, enabling the study of the so-called bump-on-tail instability. One of the Maxwellians represents the bulk of the distribution function that has no mean velocity, and the other Maxwellian corresponds to high velocity particles. The second Maxwellian is referred to as the "bump-on-tail" Maxwellian.
BumpontailEquilibrium::BumpontailEquilibrium | ( | host_t< DFieldMemSp > | epsilon_bot, |
host_t< DFieldMemSp > | temperature_bot, | ||
host_t< DFieldMemSp > | mean_velocity_bot | ||
) |
Creates an instance of the BumpontailEquilibrium class.
[in] | epsilon_bot | A parameter that represents the density of the bump-on-tail Maxwellian for each species. |
[in] | temperature_bot | A parameter that represents the temperature of the bump-on-tail Maxwellian for each species. |
[in] | mean_velocity_bot | A parameter that represents the mean velocity of the bump-on-tail Maxwellian for each species. |
void BumpontailEquilibrium::compute_twomaxwellian | ( | DFieldVx | fMaxwellian, |
double | epsilon_bot, | ||
double | temperature_bot, | ||
double | mean_velocity_bot | ||
) | const |
Compute a distribution function defined as a sum of two Maxwellians.
This distribution function can be written as $f(x,v) = f1(v) + f2(v) $ with $f1(v) = (1-epsilon)/(sqrt(2*PI))*exp(-v**2/2)$ $f2(v) = epsilon/sqrt(2*PI*T0)[exp(-(v-v0)**2/2*T0)$
[out] | fMaxwellian | The initial distribution function. |
[in] | epsilon_bot | A parameter that represents the density of the bump-on-tail Maxwellian. |
[in] | temperature_bot | A parameter that represents the temperature of the bump-on-tail Maxwellian. |
[in] | mean_velocity_bot | A parameter that represents the mean velocity of the bump-on-tail Maxwellian. |
|
static |
Read the density, temperature and mean velocity required to initialize the bump-on-tail Maxwellian in a YAML input file.
[in] | idx_range_kinsp | Index range for the kinetic species |
[in] | yaml_input_file | YAML input file |
|
overridevirtual |
Initializes the distribution function as the sum of a bulk and a bump-on-tail Maxwellians.
[out] | allfequilibrium | The initialized distribution function. |
Implements IEquilibrium.
|
inline |
A method for accessing the m_epsilon_bot member variable of the class.
|
inline |
A method for accessing the m_temperature_bot member variable of the class.
|
inline |
A method for accessing the m_mean_velocity_bot member variable of the class.