Theseus
Compressible flow solver
Loading...
Searching...
No Matches
Theseus::RHSOperatorBase Class Reference

#include <RHSOperator.hpp>

Inheritance diagram for Theseus::RHSOperatorBase:
Collaboration diagram for Theseus::RHSOperatorBase:

Public Member Functions

 RHSOperatorBase (std::shared_ptr< mfem::ParFiniteElementSpace > vfes_, std::shared_ptr< mfem::ParFiniteElementSpace > fes0_, std::shared_ptr< mfem::ParMesh > pmesh_, std::shared_ptr< mfem::ParGridFunction > eta_, std::shared_ptr< mfem::ParGridFunction > alpha_, std::shared_ptr< Prandtl::PerssonPeraireIndicator > indicator_, const mfem::real_t alpha_max=0.5, const mfem::real_t alpha_min=0.001)
 
virtual ~RHSOperatorBase ()=default
 
void SetBCDescriptorData (const mfem::Array< Theseus::BCDescriptor > &bc_descr, const mfem::Vector &bc_scalar_dat, const mfem::Vector &bc_vector_dat)
 
void AddBdrFaceMarker (mfem::Array< int > &bdr_marker_)
 
virtual void Finalize (mfem::real_t time=0)
 
IntegralMeasures GetIntegralMeasuresBaseline () const
 
mfem::real_t GetMaxCharSpeed () const
 
mfem::real_t & GetTimeRef ()
 
virtual void ComputeIntegralMeasures (const mfem::Vector &u, Theseus::IntegralMeasures &diag) const
 
virtual void Mult (const mfem::Vector &u, mfem::Vector &dudt) const override
 
virtual std::string GasModelName () const
 
virtual std::string NumFluxName () const
 
virtual std::string FlowModelName () const
 
virtual const GasModelInterfaceGetGasModelInterface () const
 

Protected Attributes

mfem::real_t max_char_speed
 
std::shared_ptr< mfem::ParFiniteElementSpace > vfes
 
std::shared_ptr< mfem::ParFiniteElementSpace > fes0
 
std::shared_ptr< mfem::ParMesh > pmesh
 
std::shared_ptr< mfem::ParGridFunction > eta
 
std::shared_ptr< Prandtl::PerssonPeraireIndicatorindicator
 
const int num_equations
 
const int dim
 
const int order
 
const int num_elements
 
const int num_dofs_scalar
 
const int Ndofs
 
const mfem::real_t sharpness_fac = 9.21024
 
const mfem::real_t modalThreshold
 
const mfem::real_t alpha_min
 
const mfem::real_t alpha_max
 
std::vector< mfem::Array< int > > bdr_marker
 
mfem::Array< Theseus::BCDescriptorbc_descriptors
 
mfem::Vector bc_vector_data
 
mfem::Vector bc_scalar_data
 
mfem::real_t alpha_dof
 
Theseus::IntegralMeasures diag0
 

Constructor & Destructor Documentation

◆ RHSOperatorBase()

Theseus::RHSOperatorBase::RHSOperatorBase ( std::shared_ptr< mfem::ParFiniteElementSpace >  vfes_,
std::shared_ptr< mfem::ParFiniteElementSpace >  fes0_,
std::shared_ptr< mfem::ParMesh >  pmesh_,
std::shared_ptr< mfem::ParGridFunction >  eta_,
std::shared_ptr< mfem::ParGridFunction >  alpha_,
std::shared_ptr< Prandtl::PerssonPeraireIndicator indicator_,
const mfem::real_t  alpha_max = 0.5,
const mfem::real_t  alpha_min = 0.001 
)
inline

◆ ~RHSOperatorBase()

virtual Theseus::RHSOperatorBase::~RHSOperatorBase ( )
virtualdefault

Member Function Documentation

◆ AddBdrFaceMarker()

void Theseus::RHSOperatorBase::AddBdrFaceMarker ( mfem::Array< int > &  bdr_marker_)
inline

◆ ComputeIntegralMeasures()

virtual void Theseus::RHSOperatorBase::ComputeIntegralMeasures ( const mfem::Vector &  u,
Theseus::IntegralMeasures diag 
) const
inlinevirtual

◆ Finalize()

virtual void Theseus::RHSOperatorBase::Finalize ( mfem::real_t  time = 0)
inlinevirtual

◆ FlowModelName()

virtual std::string Theseus::RHSOperatorBase::FlowModelName ( ) const
inlinevirtual

◆ GasModelName()

virtual std::string Theseus::RHSOperatorBase::GasModelName ( ) const
inlinevirtual

◆ GetGasModelInterface()

virtual const GasModelInterface & Theseus::RHSOperatorBase::GetGasModelInterface ( ) const
inlinevirtual

◆ GetIntegralMeasuresBaseline()

IntegralMeasures Theseus::RHSOperatorBase::GetIntegralMeasuresBaseline ( ) const
inline

◆ GetMaxCharSpeed()

mfem::real_t Theseus::RHSOperatorBase::GetMaxCharSpeed ( ) const
inline

◆ GetTimeRef()

mfem::real_t & Theseus::RHSOperatorBase::GetTimeRef ( )
inline

◆ Mult()

virtual void Theseus::RHSOperatorBase::Mult ( const mfem::Vector &  u,
mfem::Vector &  dudt 
) const
inlineoverridevirtual

◆ NumFluxName()

virtual std::string Theseus::RHSOperatorBase::NumFluxName ( ) const
inlinevirtual

◆ SetBCDescriptorData()

void Theseus::RHSOperatorBase::SetBCDescriptorData ( const mfem::Array< Theseus::BCDescriptor > &  bc_descr,
const mfem::Vector &  bc_scalar_dat,
const mfem::Vector &  bc_vector_dat 
)
inline

Member Data Documentation

◆ alpha_dof

mfem::real_t Theseus::RHSOperatorBase::alpha_dof
mutableprotected

◆ alpha_max

const mfem::real_t Theseus::RHSOperatorBase::alpha_max
protected

◆ alpha_min

const mfem::real_t Theseus::RHSOperatorBase::alpha_min
protected

◆ bc_descriptors

mfem::Array<Theseus::BCDescriptor> Theseus::RHSOperatorBase::bc_descriptors
protected

◆ bc_scalar_data

mfem::Vector Theseus::RHSOperatorBase::bc_scalar_data
protected

◆ bc_vector_data

mfem::Vector Theseus::RHSOperatorBase::bc_vector_data
protected

◆ bdr_marker

std::vector<mfem::Array<int> > Theseus::RHSOperatorBase::bdr_marker
protected

◆ diag0

Theseus::IntegralMeasures Theseus::RHSOperatorBase::diag0
mutableprotected

◆ dim

const int Theseus::RHSOperatorBase::dim
protected

◆ eta

std::shared_ptr<mfem::ParGridFunction> Theseus::RHSOperatorBase::eta
protected

◆ fes0

std::shared_ptr<mfem::ParFiniteElementSpace> Theseus::RHSOperatorBase::fes0
protected

◆ indicator

std::shared_ptr<Prandtl::PerssonPeraireIndicator> Theseus::RHSOperatorBase::indicator
protected

◆ max_char_speed

mfem::real_t Theseus::RHSOperatorBase::max_char_speed
mutableprotected

◆ modalThreshold

const mfem::real_t Theseus::RHSOperatorBase::modalThreshold
protected

◆ Ndofs

const int Theseus::RHSOperatorBase::Ndofs
protected

◆ num_dofs_scalar

const int Theseus::RHSOperatorBase::num_dofs_scalar
protected

◆ num_elements

const int Theseus::RHSOperatorBase::num_elements
protected

◆ num_equations

const int Theseus::RHSOperatorBase::num_equations
protected

◆ order

const int Theseus::RHSOperatorBase::order
protected

◆ pmesh

std::shared_ptr<mfem::ParMesh> Theseus::RHSOperatorBase::pmesh
protected

◆ sharpness_fac

const mfem::real_t Theseus::RHSOperatorBase::sharpness_fac = 9.21024
protected

◆ vfes

std::shared_ptr<mfem::ParFiniteElementSpace> Theseus::RHSOperatorBase::vfes
protected

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