Gyselalib++
 
Loading...
Searching...
No Matches
MaxwellianEquilibrium Class Reference

Equilibrium operator as Maxwellian. This initializes all species. More...

Inheritance diagram for MaxwellianEquilibrium:
IEquilibrium IEquilibrium IEquilibrium

Public Member Functions

 MaxwellianEquilibrium (host_t< DFieldMemSp > mass, host_t< DFieldMemSp > density_eq, host_t< DFieldMemSp > temperature_eq, host_t< DFieldMemSp > mean_velocity_eq, double magnetic_field)
 The constructor for the MaxwellianEquilibrium class.
 
DFieldSpVparMu operator() (DFieldSpVparMu allfequilibrium) const override
 Initializes allfequilibrium as a Maxwellian.
 
host_t< DConstFieldSp > mass () const
 A method for accessing the m_mass member variable of the class.
 
host_t< DConstFieldSp > density_eq () const
 A method for accessing the m_density_eq member variable of the class.
 
host_t< DConstFieldSp > temperature_eq () const
 A method for accessing the m_temperature_eq member variable of the class.
 
host_t< DConstFieldSp > mean_velocity_eq () const
 A method for accessing the m_mean_velocity_eq member variable of the class.
 
 MaxwellianEquilibrium (host_t< DFieldMemSp > density_eq, host_t< DFieldMemSp > temperature_eq, host_t< DFieldMemSp > mean_velocity_eq)
 The constructor for the MaxwellianEquilibrium class.
 
DFieldSpVx operator() (DFieldSpVx allfequilibrium) const override
 Initializes allfequilibrium as a Maxwellian.
 
host_t< DConstFieldSp > density_eq () const
 A method for accessing the m_density_eq member variable of the class.
 
host_t< DConstFieldSp > temperature_eq () const
 A method for accessing the m_temperature_eq member variable of the class.
 
host_t< DConstFieldSp > mean_velocity_eq () const
 A method for accessing the m_mean_velocity_eq member variable of the class.
 
 MaxwellianEquilibrium (host_t< DFieldMemSp > density_eq, host_t< DFieldMemSp > temperature_eq, host_t< DFieldMemSp > mean_velocity_eq)
 The constructor for the MaxwellianEquilibrium class.
 
DFieldSpVxVy operator() (DFieldSpVxVy allfequilibrium) const override
 Initializes allfequilibrium as a Maxwellian.
 
host_t< ConstFieldSp< double > > density_eq () const
 A method for accessing the m_density_eq member variable of the class.
 
host_t< ConstFieldSp< double > > temperature_eq () const
 A method for accessing the m_temperature_eq member variable of the class.
 
host_t< ConstFieldSp< double > > mean_velocity_eq () const
 A method for accessing the m_mean_velocity_eq member variable of the class.
 

Static Public Member Functions

static MaxwellianEquilibrium 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 Maxwellian in a YAML input file.
 
static void compute_maxwellian (DFieldVparMu const fMaxwellian, double const mass, double const density, double const temperature, double const mean_velocity, double const magnetic_field)
 Compute a Maxwellian distribution function.
 
static MaxwellianEquilibrium 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 Maxwellian in a YAML input file.
 
static void compute_maxwellian (DFieldVx const fMaxwellian, double const density, double const temperature, double const mean_velocity)
 Compute a Maxwellian distribution function.
 
static MaxwellianEquilibrium 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 Maxwellian in a YAML input file.
 
static void compute_maxwellian (DFieldVxVy const fMaxwellian, double const density, double const temperature, double const mean_velocity)
 Compute a Maxwellian distribution function.
 

Detailed Description

Equilibrium operator as Maxwellian. This initializes all species.

A class that initializes the distribution function as a Maxwellian.

Constructor & Destructor Documentation

◆ MaxwellianEquilibrium() [1/3]

MaxwellianEquilibrium::MaxwellianEquilibrium ( host_t< DFieldMemSp >  mass,
host_t< DFieldMemSp >  density_eq,
host_t< DFieldMemSp >  temperature_eq,
host_t< DFieldMemSp >  mean_velocity_eq,
double  magnetic_field 
)

The constructor for the MaxwellianEquilibrium class.

Parameters
[in]massThe mass of the species
[in]density_eqThe density of the Maxwellian
[in]temperature_eqThe temperature of the Maxwellian
[in]mean_velocity_eqThe mean velocity of the Maxwellian
[in]magnetic_fieldThe magnetic field

◆ MaxwellianEquilibrium() [2/3]

MaxwellianEquilibrium::MaxwellianEquilibrium ( host_t< DFieldMemSp >  density_eq,
host_t< DFieldMemSp >  temperature_eq,
host_t< DFieldMemSp >  mean_velocity_eq 
)

The constructor for the MaxwellianEquilibrium class.

Parameters
[in]density_eqThe density of the Maxwellian
[in]temperature_eqThe temperature of the Maxwellian
[in]mean_velocity_eqThe mean velocity of the Maxwellian

◆ MaxwellianEquilibrium() [3/3]

MaxwellianEquilibrium::MaxwellianEquilibrium ( host_t< DFieldMemSp >  density_eq,
host_t< DFieldMemSp >  temperature_eq,
host_t< DFieldMemSp >  mean_velocity_eq 
)

The constructor for the MaxwellianEquilibrium class.

Parameters
[in]density_eqThe density of the Maxwellian
[in]temperature_eqThe temperature of the Maxwellian
[in]mean_velocity_eqThe mean velocity of the Maxwellian

Member Function Documentation

◆ init_from_input() [1/3]

static MaxwellianEquilibrium MaxwellianEquilibrium::init_from_input ( IdxRangeSp  idx_range_kinsp,
PC_tree_t const &  yaml_input_file 
)
static

Read the density, temperature and mean velocity required to initialize the Maxwellian in a YAML input file.

Parameters
[in]idx_range_kinspIndex range for the kinetic species
[in]yaml_input_fileYAML input file
Returns
an instance of Maxwellian distribution function.

◆ operator()() [1/3]

DFieldSpVparMu MaxwellianEquilibrium::operator() ( DFieldSpVparMu  allfequilibrium) const
overridevirtual

Initializes allfequilibrium as a Maxwellian.

Parameters
[out]allfequilibriumA Field containing a Maxwellian distribution function.
Returns
A Field containing a Maxwellian distribution function.

Implements IEquilibrium.

◆ compute_maxwellian() [1/3]

static void MaxwellianEquilibrium::compute_maxwellian ( DFieldVparMu const  fMaxwellian,
double const  mass,
double const  density,
double const  temperature,
double const  mean_velocity,
double const  magnetic_field 
)
static

Compute a Maxwellian distribution function.

The Maxwellian distribution function is defined as Compute $fM(v,mu) = (2*PI*T)**1.5*n*exp(-E)$ with

  • $n$ the density, $T$ the temperature and $u$ the mean velocity
  • $B$ the magnetic field and
  • $E$ the energy defined as $E = (0.5*(v-u)**2+mu*B)/T$.
    Parameters
    [out]fMaxwellianA Maxwellian distribution function.
    [in]massMass of the species.
    [in]densityA parameter that represents the density of Maxwellian.
    [in]temperatureA parameter that represents the temperature of Maxwellian.
    [in]mean_velocityA parameter that represents the mean velocity of Maxwellian.
    [in]magnetic_fieldMagnetic field.

◆ mass()

host_t< DConstFieldSp > MaxwellianEquilibrium::mass ( ) const
inline

A method for accessing the m_mass member variable of the class.

Returns
A field containing the m_mass value.

◆ density_eq() [1/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::density_eq ( ) const
inline

A method for accessing the m_density_eq member variable of the class.

Returns
A field containing the m_density_eq value.

◆ temperature_eq() [1/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::temperature_eq ( ) const
inline

A method for accessing the m_temperature_eq member variable of the class.

Returns
A field containing the m_temperature_eq value.

◆ mean_velocity_eq() [1/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::mean_velocity_eq ( ) const
inline

A method for accessing the m_mean_velocity_eq member variable of the class.

Returns
A field containing the m_velocity_eq value.

◆ init_from_input() [2/3]

static MaxwellianEquilibrium MaxwellianEquilibrium::init_from_input ( IdxRangeSp  idx_range_kinsp,
PC_tree_t const &  yaml_input_file 
)
static

Read the density, temperature and mean velocity required to initialize the Maxwellian in a YAML input file.

Parameters
[in]idx_range_kinspIndex range for the kinetic species
[in]yaml_input_fileYAML input file
Returns
an instance of Maxwellian distribution function.

◆ operator()() [2/3]

DFieldSpVx MaxwellianEquilibrium::operator() ( DFieldSpVx  allfequilibrium) const
overridevirtual

Initializes allfequilibrium as a Maxwellian.

Parameters
[out]allfequilibriumA Field containing a Maxwellian distribution function.
Returns
A Field containing a Maxwellian distribution function.

Implements IEquilibrium.

◆ compute_maxwellian() [2/3]

static void MaxwellianEquilibrium::compute_maxwellian ( DFieldVx const  fMaxwellian,
double const  density,
double const  temperature,
double const  mean_velocity 
)
static

Compute a Maxwellian distribution function.

The Maxwellian distribution function is defined as $f_M(v) = n/(sqrt(2*PI*T))*exp(-(v-u)**2/(2*T))$ with $n$ the density, $T$ the temperature and $u$ is the mean velocity.

Parameters
[out]fMaxwellianA Maxwellian distribution function.
[in]densityA parameter that represents the density of Maxwellian.
[in]temperatureA parameter that represents the temperature of Maxwellian.
[in]mean_velocityA parameter that represents the mean velocity of Maxwellian.

◆ density_eq() [2/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::density_eq ( ) const
inline

A method for accessing the m_density_eq member variable of the class.

Returns
A view containing the m_density_eq value.

◆ temperature_eq() [2/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::temperature_eq ( ) const
inline

A method for accessing the m_temperature_eq member variable of the class.

Returns
A view containing the m_temperature_eq value.

◆ mean_velocity_eq() [2/3]

host_t< DConstFieldSp > MaxwellianEquilibrium::mean_velocity_eq ( ) const
inline

A method for accessing the m_mean_velocity_eq member variable of the class.

Returns
A view containing the m_velocity_eq value.

◆ init_from_input() [3/3]

static MaxwellianEquilibrium MaxwellianEquilibrium::init_from_input ( IdxRangeSp  idx_range_kinsp,
PC_tree_t const &  yaml_input_file 
)
static

Read the density, temperature and mean velocity required to initialize the Maxwellian in a YAML input file.

Parameters
[in]idx_range_kinspIndex range for the kinetic species
[in]yaml_input_fileYAML input file
Returns
an instance of Maxwellian distribution function.

◆ operator()() [3/3]

DFieldSpVxVy MaxwellianEquilibrium::operator() ( DFieldSpVxVy  allfequilibrium) const
overridevirtual

Initializes allfequilibrium as a Maxwellian.

Parameters
[out]allfequilibriumA Field containing a Maxwellian distribution function.
Returns
A Field containing a Maxwellian distribution function.

Implements IEquilibrium.

◆ compute_maxwellian() [3/3]

static void MaxwellianEquilibrium::compute_maxwellian ( DFieldVxVy const  fMaxwellian,
double const  density,
double const  temperature,
double const  mean_velocity 
)
static

Compute a Maxwellian distribution function.

The Maxwellian distribution function is defined as $f_M(v) = n/(sqrt(2*PI*T))*exp(-(v-u)**2/(2*T))$ with $n$ the density, $T$ the temperature and $u$ is the mean velocity.

Parameters
[out]fMaxwellianA Maxwellian distribution function.
[in]densityA parameter that represents the density of Maxwellian.
[in]temperatureA parameter that represents the temperature of Maxwellian.
[in]mean_velocityA parameter that represents the mean velocity of Maxwellian.

◆ density_eq() [3/3]

host_t< ConstFieldSp< double > > MaxwellianEquilibrium::density_eq ( ) const
inline

A method for accessing the m_density_eq member variable of the class.

Returns
A field containing the m_density_eq value.

◆ temperature_eq() [3/3]

host_t< ConstFieldSp< double > > MaxwellianEquilibrium::temperature_eq ( ) const
inline

A method for accessing the m_temperature_eq member variable of the class.

Returns
A field containing the m_temperature_eq value.

◆ mean_velocity_eq() [3/3]

host_t< ConstFieldSp< double > > MaxwellianEquilibrium::mean_velocity_eq ( ) const
inline

A method for accessing the m_mean_velocity_eq member variable of the class.

Returns
A field containing the m_velocity_eq value.

The documentation for this class was generated from the following files: