MFEM v4.7.0
Finite element discretization library
Loading...
Searching...
No Matches
mfem::EulerFlux Class Reference

#include <hyperbolic.hpp>

Inheritance diagram for mfem::EulerFlux:
[legend]
Collaboration diagram for mfem::EulerFlux:
[legend]

Public Member Functions

 EulerFlux (const int dim, const real_t specific_heat_ratio)
 Construct a new Euler Flux Function with given spatial dimension.
 
real_t ComputeFlux (const Vector &state, ElementTransformation &Tr, DenseMatrix &flux) const override
 Compute F(ρ, ρu, E)
 
real_t ComputeFluxDotN (const Vector &x, const Vector &normal, FaceElementTransformations &Tr, Vector &fluxN) const override
 Compute normal flux, F(ρ, ρu, E)n.
 
- Public Member Functions inherited from mfem::FluxFunction
 FluxFunction (const int num_equations, const int dim)
 
virtual void ComputeFluxJacobian (const Vector &state, ElementTransformation &Tr, DenseTensor &J) const
 Compute flux Jacobian. Optionally overloaded in the derived class when Jacobian is necessary (e.g. Newton iteration, flux limiter)
 

Additional Inherited Members

- Public Attributes inherited from mfem::FluxFunction
const int num_equations
 
const int dim
 

Detailed Description

Definition at line 382 of file hyperbolic.hpp.

Constructor & Destructor Documentation

◆ EulerFlux()

mfem::EulerFlux::EulerFlux ( const int dim,
const real_t specific_heat_ratio )
inline

Construct a new Euler Flux Function with given spatial dimension.

Parameters
dimspatial dimension
specific_heat_ratiospecific heat ratio, γ

Definition at line 396 of file hyperbolic.hpp.

Member Function Documentation

◆ ComputeFlux()

real_t mfem::EulerFlux::ComputeFlux ( const Vector & state,
ElementTransformation & Tr,
DenseMatrix & flux ) const
overridevirtual

Compute F(ρ, ρu, E)

Parameters
statestate (ρ, ρu, E) at current integration point
Trcurrent element transformation with integration point
fluxF(ρ, ρu, E) = [ρuᵀ; ρuuᵀ + pI; uᵀ(E + p)]
Returns
real_t maximum characteristic speed, |u| + √(γp/ρ)

Implements mfem::FluxFunction.

Definition at line 300 of file hyperbolic.cpp.

◆ ComputeFluxDotN()

real_t mfem::EulerFlux::ComputeFluxDotN ( const Vector & x,
const Vector & normal,
FaceElementTransformations & Tr,
Vector & fluxN ) const
overridevirtual

Compute normal flux, F(ρ, ρu, E)n.

Parameters
xx (ρ, ρu, E) at current integration point
normalnormal vector, usually not a unit vector
Trcurrent element transformation with integration point
fluxNF(ρ, ρu, E)n = [ρu⋅n; ρu(u⋅n) + pn; (u⋅n)(E + p)]
Returns
real_t maximum characteristic speed, |u| + √(γp/ρ)

Reimplemented from mfem::FluxFunction.

Definition at line 349 of file hyperbolic.cpp.


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