MFEM v4.8.0
Finite element discretization library
Loading...
Searching...
No Matches
mfem::BurgersFlux Class Reference

Burgers flux. More...

#include <hyperbolic.hpp>

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

Public Member Functions

 BurgersFlux (const int dim)
 Construct BurgersFlux FluxFunction with given spatial dimension.
 
real_t ComputeFlux (const Vector &state, ElementTransformation &Tr, DenseMatrix &flux) const override
 Compute F(u)
 
real_t ComputeFluxDotN (const Vector &state, const Vector &normal, FaceElementTransformations &Tr, Vector &fluxDotN) const override
 Compute F(u) n.
 
real_t ComputeAvgFlux (const Vector &state1, const Vector &state2, ElementTransformation &Tr, DenseMatrix &flux) const override
 Compute average flux F̄(u)
 
real_t ComputeAvgFluxDotN (const Vector &state1, const Vector &state2, const Vector &normal, FaceElementTransformations &Tr, Vector &fluxDotN) const override
 Compute average flux F̄(u) n.
 
void ComputeFluxJacobian (const Vector &state, ElementTransformation &Tr, DenseTensor &J) const override
 Compute J(u)
 
void ComputeFluxJacobianDotN (const Vector &state, const Vector &normal, ElementTransformation &Tr, DenseMatrix &JDotN) const override
 Compute J(u) n.
 
- Public Member Functions inherited from mfem::FluxFunction
 FluxFunction (const int num_equations, const int dim)
 
virtual ~FluxFunction ()
 

Additional Inherited Members

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

Detailed Description

Burgers flux.

Definition at line 739 of file hyperbolic.hpp.

Constructor & Destructor Documentation

◆ BurgersFlux()

mfem::BurgersFlux::BurgersFlux ( const int dim)
inline

Construct BurgersFlux FluxFunction with given spatial dimension.

Parameters
dimspatial dimension

Definition at line 747 of file hyperbolic.hpp.

Member Function Documentation

◆ ComputeAvgFlux()

real_t mfem::BurgersFlux::ComputeAvgFlux ( const Vector & state1,
const Vector & state2,
ElementTransformation & Tr,
DenseMatrix & flux ) const
overridevirtual

Compute average flux F̄(u)

Parameters
state1state value (u⁻) of the beginning of the interval
state2state value (u⁺) of the end of the interval
Trcurrent element transformation with the integration point
fluxF̄(u) = (u⁻²+u⁻*u⁺+u⁺²)/6*1ᵀ where 1 is (dim) vector
Returns
real_t maximum characteristic speed, |u|

Reimplemented from mfem::FluxFunction.

Definition at line 873 of file hyperbolic.cpp.

◆ ComputeAvgFluxDotN()

real_t mfem::BurgersFlux::ComputeAvgFluxDotN ( const Vector & state1,
const Vector & state2,
const Vector & normal,
FaceElementTransformations & Tr,
Vector & fluxDotN ) const
overridevirtual

Compute average flux F̄(u) n.

Parameters
state1state value (u⁻) of the beginning of the interval
state2state value (u⁺) of the end of the interval
normalnormal vector, usually not a unit vector
Trcurrent element transformation with the integration point
fluxDotNF̄(u) n = (u⁻²+u⁻*u⁺+u⁺²)/6*(1ᵀn) where 1 is (dim) vector
Returns
real_t maximum characteristic speed, |u|

Reimplemented from mfem::FluxFunction.

Definition at line 882 of file hyperbolic.cpp.

◆ ComputeFlux()

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

Compute F(u)

Parameters
statestate (u) at current integration point
Trcurrent element transformation with the integration point
fluxF(u) = ½u²*1ᵀ where 1 is (dim) vector
Returns
real_t maximum characteristic speed, |u|

Implements mfem::FluxFunction.

Definition at line 856 of file hyperbolic.cpp.

◆ ComputeFluxDotN()

real_t mfem::BurgersFlux::ComputeFluxDotN ( const Vector & state,
const Vector & normal,
FaceElementTransformations & Tr,
Vector & fluxDotN ) const
overridevirtual

Compute F(u) n.

Parameters
statestate (u) at current integration point
normalnormal vector, usually not a unit vector
Trcurrent element transformation with the integration point
fluxDotNF(u) n = ½u²*(1ᵀn) where 1 is (dim) vector
Returns
real_t maximum characteristic speed, |u|

Reimplemented from mfem::FluxFunction.

Definition at line 864 of file hyperbolic.cpp.

◆ ComputeFluxJacobian()

void mfem::BurgersFlux::ComputeFluxJacobian ( const Vector & state,
ElementTransformation & Tr,
DenseTensor & J ) const
overridevirtual

Compute J(u)

Parameters
statestate (u) at current integration point
Trcurrent element transformation with the integration point
JJ(u) = diag(u*1) where 1 is (dim) vector

Reimplemented from mfem::FluxFunction.

Definition at line 892 of file hyperbolic.cpp.

◆ ComputeFluxJacobianDotN()

void mfem::BurgersFlux::ComputeFluxJacobianDotN ( const Vector & state,
const Vector & normal,
ElementTransformation & Tr,
DenseMatrix & JDotN ) const
overridevirtual

Compute J(u) n.

Parameters
statestate (u) at current integration point
normalnormal vector, usually not a unit vector
Trcurrent element transformation with the integration point
JDotNJ(u) n = u*(1ᵀn) where 1 is (dim) vector

Reimplemented from mfem::FluxFunction.

Definition at line 903 of file hyperbolic.cpp.


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