WARPXM v1.10.0
Loading...
Searching...
No Matches
wxm::apps::rmhd::CylSource Class Reference

Implements the source terms in the resistitive diffusion terms that are added to Ideal MHD to produce the resistive MHD equations arising from a cylindrical geometry. More...

#include <cyl_source.h>

Inheritance diagram for wxm::apps::rmhd::CylSource:
WmApplication wxm::app_base

Detailed Description

Implements the source terms in the resistitive diffusion terms that are added to Ideal MHD to produce the resistive MHD equations arising from a cylindrical geometry.

Warpy constructor: warpy.apps.mhd.rmhd.rmhd.cyl_source

Parameters
gammaGas Gamma (Adiabatic Index)
skin_depth_norm
nu_p_norm
omega_p_norm
radial_indexindex of radial component (optional; defaults to 0) To configure the coordinate systems as [r,theta,z] or [z,r,theta], set this variable to either 0 or 1, respectively.
fluidFluid variable
fluid_gradientFluid gradient variable. Note that the fluid gradient variable must be present. However, if min_radius_equals_zero is false, the gradient variable may be a dummy variable, i.e., initialized, but not computed. There should be no significant computational expense to create and pass such a variable. The need for such a dummy variable could be eliminated if optional variable passing were possible.
fluid_componentsComponents of fluid variable
gradient_componentsComponents of fluid gradient variable.

Public Member Functions

 CylSource ()
 
 ~CylSource ()
 
void setup (const WxCryptSet &wxc) override
 
const std::vector< int > & getInputVariableIndexes (int flag) const override
 
const std::vector< int > & getAuxiliaryVariableIndexes (int flag) const override
 
const std::vector< int > & getOutputVariableIndexes (int flag) const override
 
real source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const override
 
- Public Member Functions inherited from WmApplication
 WmApplication ()
 
virtual ~WmApplication ()=default
 
virtual void setup (const WxCryptSet &wxc)
 
virtual const std::vector< int > & getAuxiliaryVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const
 
virtual const std::vector< int > & getCrossVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const
 
const std::vector< std::string > & getBoundaryNames () const
 
bool isOnBoundary (const std::string &boundaryName) const
 
bool has (int flag) const
 
virtual real numerical_flux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
 
virtual real internal_flux (const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const
 
virtual real source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const
 
virtual void bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const
 Boundary Condition Application which sets the boundary condition on ghost nodes.
 
virtual real bcNumericalFlux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const
 
virtual void conserved_to_primitive (const real *q, const real *aux, real *w) const
 
virtual void primitive_to_conserved (const real *w, const real *aux, real *q) const
 
virtual void evaluate_function (const real *q, const real *aux, const solverVariables_t *pSV, real *result) const
 
virtual void bc_q_kinetic (const real *q_in, const real *aux_in, const solverVariables_t *pFV, real *q_out) const
 
std::shared_ptr< std::string > app_name ()
 
virtual const std::vector< int > & getInputVariableIndexes (int flag=0) const
 
virtual const std::vector< int > & getOutputVariableIndexes (int flag=0) const
 

Protected Attributes

real _gas_gamma
 
real _skin_depth_norm
 
real _nu_p_norm
 
real _omega_p_norm
 
real _Ai
 
real _Zi
 
real _lnlam
 
int _radial_index
 
int _ir
 
int _ith
 
int _iz
 
real _constant_resistivity_eta
 
bool _const_resisitivity
 
real _min_density_floor
 
real _min_pressure_floor
 
real _max_eta
 
real _min_eta
 
std::string _resistivity_type
 
real _n_vac
 
real _eta_vac
 
std::vector< int > _input_variables
 
std::vector< int > _aux_variables
 
std::unique_ptr< WmApplication_floor_app
 
bool _has_floor_app
 
- Protected Attributes inherited from WmApplication
std::string _app_name
 
WxLogStream _debStrm
 
std::vector< int > _allowedFlags
 
std::vector< std::string > _onBoundaries
 

Additional Inherited Members

- Public Types inherited from WmApplication
typedef Application_Variable WmApplication_Variable
 
typedef std::map< std::string, std::string > replaceMap_t
 
- Static Public Attributes inherited from wxm::app_base
static std::vector< int > empty
 
- Protected Member Functions inherited from wxm::app_base
virtual ~app_base ()=default
 

Constructor & Destructor Documentation

◆ CylSource()

wxm::apps::rmhd::CylSource::CylSource ( )

◆ ~CylSource()

wxm::apps::rmhd::CylSource::~CylSource ( )

Member Function Documentation

◆ getAuxiliaryVariableIndexes()

const std::vector< int > & wxm::apps::rmhd::CylSource::getAuxiliaryVariableIndexes ( int  flag) const
inlineoverridevirtual

Reimplemented from WmApplication.

◆ getInputVariableIndexes()

const std::vector< int > & wxm::apps::rmhd::CylSource::getInputVariableIndexes ( int  flag) const
inlineoverridevirtual

Reimplemented from wxm::app_base.

◆ getOutputVariableIndexes()

const std::vector< int > & wxm::apps::rmhd::CylSource::getOutputVariableIndexes ( int  flag) const
inlineoverridevirtual

Reimplemented from wxm::app_base.

◆ setup()

void wxm::apps::rmhd::CylSource::setup ( const WxCryptSet wxc)
overridevirtual

Reimplemented from WmApplication.

◆ source()

real wxm::apps::rmhd::CylSource::source ( const real q,
const real aux,
const elementGeometry_t pEG,
real source 
) const
overridevirtual

Reimplemented from WmApplication.

Member Data Documentation

◆ _Ai

real wxm::apps::rmhd::CylSource::_Ai
protected

◆ _aux_variables

std::vector<int> wxm::apps::rmhd::CylSource::_aux_variables
protected

◆ _const_resisitivity

bool wxm::apps::rmhd::CylSource::_const_resisitivity
protected

◆ _constant_resistivity_eta

real wxm::apps::rmhd::CylSource::_constant_resistivity_eta
protected

◆ _eta_vac

real wxm::apps::rmhd::CylSource::_eta_vac
protected

◆ _floor_app

std::unique_ptr<WmApplication> wxm::apps::rmhd::CylSource::_floor_app
protected

◆ _gas_gamma

real wxm::apps::rmhd::CylSource::_gas_gamma
protected

◆ _has_floor_app

bool wxm::apps::rmhd::CylSource::_has_floor_app
protected

◆ _input_variables

std::vector<int> wxm::apps::rmhd::CylSource::_input_variables
protected

◆ _ir

int wxm::apps::rmhd::CylSource::_ir
protected

◆ _ith

int wxm::apps::rmhd::CylSource::_ith
protected

◆ _iz

int wxm::apps::rmhd::CylSource::_iz
protected

◆ _lnlam

real wxm::apps::rmhd::CylSource::_lnlam
protected

◆ _max_eta

real wxm::apps::rmhd::CylSource::_max_eta
protected

◆ _min_density_floor

real wxm::apps::rmhd::CylSource::_min_density_floor
protected

◆ _min_eta

real wxm::apps::rmhd::CylSource::_min_eta
protected

◆ _min_pressure_floor

real wxm::apps::rmhd::CylSource::_min_pressure_floor
protected

◆ _n_vac

real wxm::apps::rmhd::CylSource::_n_vac
protected

◆ _nu_p_norm

real wxm::apps::rmhd::CylSource::_nu_p_norm
protected

◆ _omega_p_norm

real wxm::apps::rmhd::CylSource::_omega_p_norm
protected

◆ _radial_index

int wxm::apps::rmhd::CylSource::_radial_index
protected

◆ _resistivity_type

std::string wxm::apps::rmhd::CylSource::_resistivity_type
protected

◆ _skin_depth_norm

real wxm::apps::rmhd::CylSource::_skin_depth_norm
protected

◆ _Zi

real wxm::apps::rmhd::CylSource::_Zi
protected

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