WARPXM v1.10.0
Loading...
Searching...
No Matches
wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables Class Reference

2D2V Kelvin-Helmholtz Instability where the kinetic variables are converted to fluid Used in hybrid simulation where the domain in split into kinetic and fluid parts, with this function initilizing the fluid More...

#include <kh_instability_kinetic.h>

Inheritance diagram for wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables:
WmApplication wxm::app_base

Detailed Description

2D2V Kelvin-Helmholtz Instability where the kinetic variables are converted to fluid Used in hybrid simulation where the domain in split into kinetic and fluid parts, with this function initilizing the fluid

Public Member Functions

 Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables ()
 Constructor.
 
 ~Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables ()
 Destructor.
 
void setup (const WxCryptSet &wxc) override
 Setup.
 
const std::vector< int > & getOutputVariableIndexes (int flag) const override
 Grab output variable indices.
 
void evaluate_function (const real *q, const real *aux, const solverVariables_t *pSV, real *result) const override
 Redefinition of the function evaluator.
 
void bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const override
 Boundary Condition Application which sets the boundary condition on ghost nodes.
 
- 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 ()
 
- Public Member Functions inherited from wxm::app_base
virtual const std::vector< int > & getInputVariableIndexes (int flag=0) const
 
virtual const std::vector< int > & getOutputVariableIndexes (int flag=0) const
 

Protected Attributes

std::vector< int > _output_fluid
 
real _gamma
 
real _mass
 
real _d_width
 
real _perturbation_wavelength
 
real _perturbation_amplitude
 
std::vector< real_perturbation_center
 
std::vector< real_n_fit_xvec
 
std::vector< real_n_fit_acoeffs
 
std::vector< real_n_fit_bcoeffs
 
std::vector< real_vy_fit_xvec
 
std::vector< real_vy_fit_acoeffs
 
std::vector< real_vy_fit_bcoeffs
 
std::vector< real_Ty_fit_xvec
 
std::vector< real_Ty_fit_acoeffs
 
std::vector< real_Ty_fit_bcoeffs
 
std::map< real, real_n_fit_cache
 
std::map< real, real_vy_fit_cache
 
std::map< real, real_Ty_fit_cache
 
real _Tx
 
- 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

◆ Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables()

wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables ( )

Constructor.

◆ ~Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables()

wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::~Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables ( )

Destructor.

Member Function Documentation

◆ bc_q()

void wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::bc_q ( const real q_in,
const real aux_in,
const real aux_out,
const solverVariables_t pFV,
real q_out 
) const
overridevirtual

Boundary Condition Application which sets the boundary condition on ghost nodes.

Parameters
q_inis the q variable vector on the inside (or "internal", "interior", "left", "minus", etc.) face node of the interface on which the boundary condition is set - this is an input
aux_inis the aux variable vector on the inside (or "internal", "interior", "left", "minus", etc.) face node of the interface on which the boundary condition is set - this is an input
aux_outis the aux variable vector on the outside (or "external", "exterior", "right", "plus", etc.) face node (a.k.a ghost node) of the interface on which the boundary condition is set - this is an input
q_outis the q variable vector on the outside (or "external", "exterior", "right", "plus", etc.) face node (a.k.a ghost node) of the interface on which the boundary condition is set - this is an output - this is waht is being set

NOTE: If the boundary condition is virtual - the in and out nodes actually becomes the same: Thus q_in and q_out as well as aux_in and aux_out are actually the same internal node of the virtual subdomain. See dfem/variable_adjusters/boundary_conditions/boundary_condition.cc

Reimplemented from WmApplication.

◆ evaluate_function()

void wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::evaluate_function ( const real q,
const real aux,
const solverVariables_t pSV,
real result 
) const
overridevirtual

Redefinition of the function evaluator.

Parameters
constq - input variable
constaux - auxiliary variable
constpSV - solver variable structure
result- output variable

Reimplemented from WmApplication.

◆ getOutputVariableIndexes()

const std::vector< int > & wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::getOutputVariableIndexes ( int  flag) const
inlineoverridevirtual

Grab output variable indices.

Parameters
intflag - usually flag is given like flux type but usually not checked
Returns
vector of output variable indices

Reimplemented from wxm::app_base.

◆ setup()

void wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::setup ( const WxCryptSet wxc)
overridevirtual

Setup.

Parameters
WxCryptSetobject

Reimplemented from WmApplication.

Member Data Documentation

◆ _d_width

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_d_width
protected

◆ _gamma

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_gamma
protected

◆ _mass

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_mass
protected

◆ _n_fit_acoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_n_fit_acoeffs
protected

◆ _n_fit_bcoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_n_fit_bcoeffs
protected

◆ _n_fit_cache

std::map<real, real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_n_fit_cache
mutableprotected

◆ _n_fit_xvec

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_n_fit_xvec
protected

◆ _output_fluid

std::vector<int> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_output_fluid
protected

◆ _perturbation_amplitude

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_perturbation_amplitude
protected

◆ _perturbation_center

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_perturbation_center
protected

◆ _perturbation_wavelength

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_perturbation_wavelength
protected

◆ _Tx

real wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_Tx
protected

◆ _Ty_fit_acoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_Ty_fit_acoeffs
protected

◆ _Ty_fit_bcoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_Ty_fit_bcoeffs
protected

◆ _Ty_fit_cache

std::map<real, real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_Ty_fit_cache
mutableprotected

◆ _Ty_fit_xvec

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_Ty_fit_xvec
protected

◆ _vy_fit_acoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_vy_fit_acoeffs
protected

◆ _vy_fit_bcoeffs

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_vy_fit_bcoeffs
protected

◆ _vy_fit_cache

std::map<real, real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_vy_fit_cache
mutableprotected

◆ _vy_fit_xvec

std::vector<real> wxm::apps::functions::five_moment::Kinetics2d2vKelvinHelmholtzInstabilityFluidVariables::_vy_fit_xvec
protected

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