![]() |
ryujin 2.1.1 revision ee5cbcbf2346c1299c942d0e1f13b46449973c18
|
#include <source/euler_aeos/indicator.h>


Public Types | |
Typedefs and constexpr constants | |
| template<int dim, typename Number = double> | |
| using | View = IndicatorView< dim, Number > |
Public Member Functions | |
Constructor and setup | |
| Indicator (const HyperbolicSystem &hyperbolic_system, const std::string &subsection="/Indicator") | |
Information and statistics | |
| ACCESSOR_READ_ONLY (evc_factor) | |
| template<int dim, typename Number > | |
| auto | view () const |
An indicator strategy used to form the preliminary high-order update.
The indicator is an entropy-viscosity commutator as described in [7] and [9]. For a given entropy \(\eta\) (either the mathematical entropy, or a Harten entropy, see the documentation of HyperbolicSystem) we let \(\eta'\) denote its derivative with respect to the state variables. We then compute a normalized entropy viscosity ratio \(\alpha_i^n\) for the state \(\boldsymbol U_i^n\) as follows:
\begin{align} \alpha_i^n\;=\;\frac{N_i^n}{D_i^n}, \quad N_i^n\;:=\;\left|a_i^n- \eta'(\boldsymbol U^n_i)\cdot\boldsymbol b_i^n +\frac{\eta(\boldsymbol U^n_i)}{\rho_i^n}\big(\boldsymbol b_i^n\big)_1\right|, \quad D_i^n\;:=\;\left|a_i^n\right| + \sum_{k=1}^{d+1}\left|\big(\eta'(\boldsymbol U^n_i)\big)_k- \delta_{1k}\frac{\eta(\boldsymbol U^n_i)}{\rho_i^n}\right| \,\left|\big(\boldsymbol b_i^n\big)_k\right|, \end{align}
where where \(\big(\,.\,\big)_k\) denotes the \(k\)-th component of a vector, \(\delta_{ij}\) is Kronecker's delta, and where we have set
\begin{align} a_i^n \;:=\; \sum_{j\in\mathcal{I}_i}\left(\frac{\eta(\boldsymbol U_j^n)}{\rho_j^n} -\frac{\eta(\boldsymbol U_i^n)}{\rho_i^n}\right)\, \boldsymbol m_j^n\cdot\boldsymbol c_{ij}, \qquad \boldsymbol b_i^n \;:=\; \sum_{j\in\mathcal{I}_i}\left(\mathbf{f}(\boldsymbol U_j^n)- \mathbf{f}(\boldsymbol U_i^n)\right)\cdot\boldsymbol c_{ij}, \end{align}
Definition at line 67 of file indicator.h.
| using ryujin::EulerAEOS::Indicator< ScalarNumber >::View = IndicatorView<dim, Number> |
Alias for the view on the indicator for a given dimension dim and choice of number type Number.
Definition at line 80 of file indicator.h.
|
inline |
Constructor.
Definition at line 91 of file indicator.h.
| ryujin::EulerAEOS::Indicator< ScalarNumber >::ACCESSOR_READ_ONLY | ( | evc_factor | ) |
|
inline |
Return a view on the Indicator for a given dimension dim and choice of number type Number (which can be a scalar float, or double, as well as a VectorizedArray holding packed scalars).
Definition at line 116 of file indicator.h.