WARPXM v1.10.0
Loading...
Searching...
No Matches
WmICFunction Class Referenceabstract

Base class for functions used in generating initial conditions. More...

#include <wmicfunction.h>

Inheritance diagram for WmICFunction:
WmICFunction_5Moment_Electron_Zpinch_1D WmICFunction_5Moment_Electron_Zpinch_1D_Car WmICFunction_5Moment_Electron_Zpinch_2D WmICFunction_5Moment_Ion_Zpinch_1D WmICFunction_5Moment_Ion_Zpinch_1D_Car WmICFunction_5Moment_Ion_Zpinch_2D WmICFunction_Bandpass WmICFunction_BrioWu_ShockTube WmICFunction_Bump WmICFunction_Couette_Fluid5 WmICFunction_Cylindrical_Couette_Fluid5 WmICFunction_DaiWoodward_ShockTube WmICFunction_Field_Zpinch_1D WmICFunction_Field_Zpinch_1D_Car WmICFunction_Field_Zpinch_2D WmICFunction_Field_Zpinch_Test_1D WmICFunction_Fluid13_Custom WmICFunction_Fourier WmICFunction_Gaussian WmICFunction_Hartmann_Field WmICFunction_Hartmann_Fluid13 WmICFunction_Hartmann_MHD WmICFunction_Heaviside WmICFunction_IMhd_Zpinch_1D WmICFunction_IMhd_Zpinch_2D WmICFunction_Langmuir_Dispersion_Field WmICFunction_Langmuir_Dispersion_Fluid5 WmICFunction_Mhd_Custom WmICFunction_Orszag_Tang_MHD WmICFunction_PHField_Zpinch_1D WmICFunction_Polynomial WmICFunction_Pulse_Fluid13 WmICFunction_Pulse_Fluid5 WmICFunction_Pulses_Fluid13 WmICFunction_Pulses_Fluid5 WmICFunction_Ramp WmICFunction_RandomVelocity_Fluid13 WmICFunction_SetTo WmICFunction_ShockTube_Fluid13 WmICFunction_ShockTube_Fluid5 WmICFunction_Sinc_Field WmICFunction_Sinc_Field_2D WmICFunction_Sinc_Fluid13 WmICFunction_Sine_Field WmICFunction_Slab_Fluid5 WmICFunction_TE_TM_Mode WmICFunction_Vlasov_Landau_Damping WmICFunction_Vlasov_Two_Stream WmICFunction_Vlasovmaxwell_Custom wxm::functions::five_moment::PlasmaSwitch wxm::functions::five_moment::ein_ic wxm::functions::five_moment::ein_ic_EM wxm::functions::five_moment::ein_ic_phEM wxm::functions::five_moment::euler1d_arbitrary_shocktube wxm::functions::five_moment::euler1d_double_rarefaction wxm::functions::five_moment::euler1d_shock_entropy wxm::functions::five_moment::euler2d_forward_facing_step wxm::functions::five_moment::euler2d_rp1 wxm::functions::five_moment::flow_init wxm::functions::five_moment::flow_init2 wxm::functions::five_moment::flow_init_EM wxm::functions::five_moment::gem wxm::functions::five_moment::gem1D wxm::functions::five_moment::gem2 wxm::functions::five_moment::harris_current_sheet wxm::functions::five_moment::rti_instability wxm::functions::hallmhd::gem wxm::functions::hallmhd::gem1D wxm::functions::imhd::PlasmaPulse wxm::functions::kinetics::kinetics1d1v_arbitrary_shocktube wxm::functions::kinetics::kinetics1d1v_double_rarefaction wxm::functions::kinetics::maxwellian wxm::functions::maxwell::CustomMaxwell wxm::functions::maxwell::Field1D1VVlasovCases wxm::functions::maxwell::gem wxm::functions::maxwell::gem1D wxm::functions::maxwell::harris_current_sheet wxm::functions::maxwell::rti_instability wxm::functions::plasma_switch_fields wxm::functions::thirteen_moment::brio_wu wxm::functions::thirteen_moment::couette_flow wxm::functions::thirteen_moment::gem wxm::functions::thirteen_moment::harris_current_sheet wxm::functions::thirteen_moment::plasma_switch wxm::functions::trapezoid

Detailed Description

Base class for functions used in generating initial conditions.

Public Member Functions

 WmICFunction ()
 Create new WmICFunction.
 
virtual ~WmICFunction ()
 Destroy WmICFunction.
 
virtual void setup (const WxCryptSet &wxc)
 Setup WmICFunction object using supplied cryptset.
 
const std::string & getName () const
 Get name of this function.
 
int getNumArguments () const
 Get number of arguments returned by this icFunction.
 
template<typename T >
void apply (const real position[3], T *value) const
 Evaluate the function at a position and return the result through a pointer position and value must be double precision.
 

Protected Member Functions

virtual void applyFunction (const real *position, real *value) const =0
 This is the currently apply function call - recasts to real.
 

Protected Attributes

std::string _name
 
int _numArgs
 
real_rvalues
 

Constructor & Destructor Documentation

◆ WmICFunction()

WmICFunction::WmICFunction ( )

Create new WmICFunction.

◆ ~WmICFunction()

virtual WmICFunction::~WmICFunction ( )
virtual

Destroy WmICFunction.

Member Function Documentation

◆ apply()

template<typename T >
void WmICFunction::apply ( const real  position[3],
T *  value 
) const
inline

Evaluate the function at a position and return the result through a pointer position and value must be double precision.

Template Parameters
Templateparameter for value
Parameters
pPosition to evaluate function
vValue evaluated at position (must be allocated outside function)

◆ applyFunction()

virtual void WmICFunction::applyFunction ( const real position,
real value 
) const
protectedpure virtual

This is the currently apply function call - recasts to real.

Parameters
pPosition to evaluate function
vValue evaluated at position (must be allocated outside function)

Implemented in wxm::functions::thirteen_moment::brio_wu, wxm::functions::five_moment::ein_ic, wxm::functions::five_moment::ein_ic_EM, wxm::functions::five_moment::ein_ic_phEM, wxm::functions::five_moment::euler1d_arbitrary_shocktube, wxm::functions::five_moment::euler1d_double_rarefaction, wxm::functions::five_moment::euler1d_shock_entropy, wxm::functions::five_moment::euler2d_forward_facing_step, wxm::functions::five_moment::euler2d_rp1, wxm::functions::five_moment::flow_init, wxm::functions::five_moment::flow_init2, wxm::functions::five_moment::flow_init_EM, wxm::functions::five_moment::gem, wxm::functions::five_moment::gem1D, wxm::functions::five_moment::gem2, wxm::functions::five_moment::rti_instability, wxm::functions::hallmhd::gem, wxm::functions::hallmhd::gem1D, wxm::functions::thirteen_moment::harris_current_sheet, wxm::functions::five_moment::harris_current_sheet, wxm::functions::maxwell::harris_current_sheet, wxm::functions::imhd::PlasmaPulse, wxm::functions::kinetics::kinetics1d1v_arbitrary_shocktube, wxm::functions::kinetics::kinetics1d1v_double_rarefaction, WmICFunction_Vlasov_Landau_Damping, WmICFunction_Vlasov_Two_Stream, wxm::functions::kinetics::maxwellian, wxm::functions::maxwell::CustomMaxwell, wxm::functions::maxwell::Field1D1VVlasovCases, wxm::functions::maxwell::gem, wxm::functions::maxwell::gem1D, wxm::functions::maxwell::rti_instability, wxm::functions::thirteen_moment::gem, WmICFunction_5Moment_Electron_Zpinch_1D, WmICFunction_5Moment_Electron_Zpinch_1D_Car, WmICFunction_5Moment_Electron_Zpinch_2D, WmICFunction_5Moment_Ion_Zpinch_1D, WmICFunction_5Moment_Ion_Zpinch_1D_Car, WmICFunction_5Moment_Ion_Zpinch_2D, WmICFunction_Bandpass, WmICFunction_BrioWu_ShockTube, WmICFunction_Bump, WmICFunction_Couette_Fluid5, WmICFunction_Cylindrical_Couette_Fluid5, WmICFunction_DaiWoodward_ShockTube, WmICFunction_Field_Zpinch_1D, WmICFunction_Field_Zpinch_1D_Car, WmICFunction_Field_Zpinch_2D, WmICFunction_Field_Zpinch_Test_1D, WmICFunction_Fluid13_Custom, WmICFunction_Fourier, WmICFunction_Gaussian, WmICFunction_Hartmann_Field, WmICFunction_Hartmann_Fluid13, WmICFunction_Hartmann_MHD, WmICFunction_Heaviside, WmICFunction_IMhd_Zpinch_1D, WmICFunction_IMhd_Zpinch_2D, WmICFunction_Langmuir_Dispersion_Field, WmICFunction_Langmuir_Dispersion_Fluid5, WmICFunction_Mhd_Custom, WmICFunction_Orszag_Tang_MHD, WmICFunction_PHField_Zpinch_1D, WmICFunction_Polynomial, WmICFunction_Pulse_Fluid13, WmICFunction_Pulse_Fluid5, WmICFunction_Pulses_Fluid13, WmICFunction_Pulses_Fluid5, WmICFunction_Ramp, WmICFunction_RandomVelocity_Fluid13, WmICFunction_SetTo, WmICFunction_ShockTube_Fluid13, WmICFunction_ShockTube_Fluid5, WmICFunction_Sinc_Field, WmICFunction_Sinc_Field_2D, WmICFunction_Sinc_Fluid13, WmICFunction_Sine_Field, WmICFunction_Slab_Fluid5, WmICFunction_TE_TM_Mode, WmICFunction_Vlasovmaxwell_Custom, wxm::functions::five_moment::PlasmaSwitch, wxm::functions::plasma_switch_fields, wxm::functions::thirteen_moment::couette_flow, wxm::functions::thirteen_moment::plasma_switch, and wxm::functions::trapezoid.

◆ getName()

const std::string & WmICFunction::getName ( ) const
inline

Get name of this function.

◆ getNumArguments()

int WmICFunction::getNumArguments ( ) const
inline

Get number of arguments returned by this icFunction.

◆ setup()

virtual void WmICFunction::setup ( const WxCryptSet wxc)
virtual

Setup WmICFunction object using supplied cryptset.

Parameters
wxcCryptset to use for setting

Reimplemented in wxm::functions::thirteen_moment::brio_wu, wxm::functions::five_moment::ein_ic, wxm::functions::five_moment::ein_ic_EM, wxm::functions::five_moment::ein_ic_phEM, wxm::functions::five_moment::euler1d_arbitrary_shocktube, wxm::functions::five_moment::euler1d_double_rarefaction, wxm::functions::five_moment::euler1d_shock_entropy, wxm::functions::five_moment::euler2d_forward_facing_step, wxm::functions::five_moment::euler2d_rp1, wxm::functions::five_moment::flow_init, wxm::functions::five_moment::flow_init2, wxm::functions::five_moment::flow_init_EM, wxm::functions::five_moment::gem, wxm::functions::five_moment::gem1D, wxm::functions::five_moment::gem2, wxm::functions::five_moment::rti_instability, wxm::functions::hallmhd::gem, wxm::functions::hallmhd::gem1D, wxm::functions::thirteen_moment::harris_current_sheet, wxm::functions::five_moment::harris_current_sheet, wxm::functions::maxwell::harris_current_sheet, wxm::functions::imhd::PlasmaPulse, wxm::functions::kinetics::kinetics1d1v_arbitrary_shocktube, wxm::functions::kinetics::kinetics1d1v_double_rarefaction, WmICFunction_Vlasov_Landau_Damping, WmICFunction_Vlasov_Two_Stream, wxm::functions::kinetics::maxwellian, wxm::functions::maxwell::CustomMaxwell, wxm::functions::maxwell::Field1D1VVlasovCases, wxm::functions::maxwell::gem, wxm::functions::maxwell::gem1D, wxm::functions::maxwell::rti_instability, wxm::functions::thirteen_moment::gem, WmICFunction_5Moment_Electron_Zpinch_1D, WmICFunction_5Moment_Electron_Zpinch_1D_Car, WmICFunction_5Moment_Electron_Zpinch_2D, WmICFunction_5Moment_Ion_Zpinch_1D, WmICFunction_5Moment_Ion_Zpinch_1D_Car, WmICFunction_5Moment_Ion_Zpinch_2D, WmICFunction_Bandpass, WmICFunction_BrioWu_ShockTube, WmICFunction_Bump, WmICFunction_Couette_Fluid5, WmICFunction_Cylindrical_Couette_Fluid5, WmICFunction_DaiWoodward_ShockTube, WmICFunction_Field_Zpinch_1D, WmICFunction_Field_Zpinch_1D_Car, WmICFunction_Field_Zpinch_2D, WmICFunction_Field_Zpinch_Test_1D, WmICFunction_Fluid13_Custom, WmICFunction_Fourier, WmICFunction_Gaussian, WmICFunction_Hartmann_Field, WmICFunction_Hartmann_Fluid13, WmICFunction_Hartmann_MHD, WmICFunction_Heaviside, WmICFunction_IMhd_Zpinch_1D, WmICFunction_IMhd_Zpinch_2D, WmICFunction_Langmuir_Dispersion_Field, WmICFunction_Langmuir_Dispersion_Fluid5, WmICFunction_Mhd_Custom, WmICFunction_Orszag_Tang_MHD, WmICFunction_PHField_Zpinch_1D, WmICFunction_Polynomial, WmICFunction_Pulse_Fluid13, WmICFunction_Pulse_Fluid5, WmICFunction_Pulses_Fluid13, WmICFunction_Pulses_Fluid5, WmICFunction_Ramp, WmICFunction_RandomVelocity_Fluid13, WmICFunction_SetTo, WmICFunction_ShockTube_Fluid13, WmICFunction_ShockTube_Fluid5, WmICFunction_Sinc_Field, WmICFunction_Sinc_Field_2D, WmICFunction_Sinc_Fluid13, WmICFunction_Sine_Field, WmICFunction_Slab_Fluid5, WmICFunction_TE_TM_Mode, WmICFunction_Vlasovmaxwell_Custom, wxm::functions::five_moment::PlasmaSwitch, wxm::functions::plasma_switch_fields, wxm::functions::thirteen_moment::couette_flow, wxm::functions::thirteen_moment::plasma_switch, and wxm::functions::trapezoid.

Member Data Documentation

◆ _name

std::string WmICFunction::_name
protected

◆ _numArgs

int WmICFunction::_numArgs
protected

◆ _rvalues

real* WmICFunction::_rvalues
protected

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