![]() |
MFEM v4.8.0
Finite element discretization library
|
Advection flux. More...
#include <hyperbolic.hpp>
Public Member Functions | |
AdvectionFlux (VectorCoefficient &b) | |
Construct AdvectionFlux FluxFunction with given velocity. | |
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. | |
![]() | |
FluxFunction (const int num_equations, const int dim) | |
virtual | ~FluxFunction () |
Additional Inherited Members | |
![]() | |
const int | num_equations |
const int | dim |
Advection flux.
Definition at line 640 of file hyperbolic.hpp.
|
inline |
Construct AdvectionFlux FluxFunction with given velocity.
b | velocity coefficient, possibly depends on space |
Definition at line 655 of file hyperbolic.hpp.
|
overridevirtual |
Compute average flux F̄(u)
state1 | state value (u⁻) of the beginning of the interval |
state2 | state value (u⁺) of the end of the interval |
Tr | current element transformation with the integration point |
flux | F̄(u) = (u⁻+u⁺)/2*bᵀ |
Reimplemented from mfem::FluxFunction.
Definition at line 802 of file hyperbolic.cpp.
|
overridevirtual |
Compute average flux F̄(u) n.
state1 | state value (u⁻) of the beginning of the interval |
state2 | state value (u⁺) of the end of the interval |
normal | normal vector, usually not a unit vector |
Tr | current element transformation with the integration point |
fluxDotN | F̄(u) n = (u⁻+u⁺)/2*(bᵀn) |
Reimplemented from mfem::FluxFunction.
Definition at line 816 of file hyperbolic.cpp.
|
overridevirtual |
Compute F(u)
state | state (u) at current integration point |
Tr | current element transformation with the integration point |
flux | F(u) = ubᵀ |
Implements mfem::FluxFunction.
Definition at line 777 of file hyperbolic.cpp.
|
overridevirtual |
Compute F(u) n.
state | state (u) at current integration point |
normal | normal vector, usually not a unit vector |
Tr | current element transformation with the integration point |
fluxDotN | F(u) n = u (bᵀn) |
Reimplemented from mfem::FluxFunction.
Definition at line 789 of file hyperbolic.cpp.
|
overridevirtual |
Compute J(u)
state | state (u) at current integration point |
Tr | current element transformation with the integration point |
J | J(u) = diag(b) |
Reimplemented from mfem::FluxFunction.
Definition at line 829 of file hyperbolic.cpp.
|
overridevirtual |
Compute J(u) n.
state | state (u) at current integration point |
normal | normal vector, usually not a unit vector |
Tr | current element transformation with the integration point |
JDotN | J(u) n = bᵀn |
Reimplemented from mfem::FluxFunction.
Definition at line 844 of file hyperbolic.cpp.