SpECTRE  v2024.03.19
NewtonianEuler::subcell::TciOnDgGrid< Dim > Class Template Reference

Troubled-cell indicator applied to the DG solution. More...

#include <TciOnDgGrid.hpp>

Public Types

using return_tags = tmpl::list<::Tags::Variables< tmpl::list< MassDensity, Velocity, SpecificInternalEnergy, Pressure > > >
 
using argument_tags = tmpl::list< ::Tags::Variables< tmpl::list< MassDensityCons, MomentumDensity, EnergyDensity > >, hydro::Tags::EquationOfState< false, 2 >, domain::Tags::Mesh< Dim >, evolution::dg::subcell::Tags::Mesh< Dim >, evolution::dg::subcell::Tags::DataForRdmpTci, evolution::dg::subcell::Tags::SubcellOptions< Dim > >
 

Static Public Member Functions

static std::tuple< bool, evolution::dg::subcell::RdmpTciDataapply (gsl::not_null< Variables< tmpl::list< MassDensity, Velocity, SpecificInternalEnergy, Pressure > > * > dg_prim_vars, const Variables< tmpl::list< MassDensityCons, MomentumDensity, EnergyDensity > > &dg_vars, const EquationsOfState::EquationOfState< false, 2 > &eos, const Mesh< Dim > &dg_mesh, const Mesh< Dim > &subcell_mesh, const evolution::dg::subcell::RdmpTciData &past_rdmp_tci_data, const evolution::dg::subcell::SubcellOptions &subcell_options, double persson_exponent, bool element_stays_on_dg)
 

Detailed Description

template<size_t Dim>
class NewtonianEuler::subcell::TciOnDgGrid< Dim >

Troubled-cell indicator applied to the DG solution.

Computes the primitive variables on the DG grid, mutating them in the DataBox. Then,

  • apply RDMP TCI to the mass and energy density
  • if the minimum density or pressure are below \(10^{-18}\) (the arbitrary threshold used to signal "negative" density and pressure), marks the element as troubled and returns
  • runs the Persson TCI on the mass and energy density. The reason for applying the Persson TCI to both the mass and energy density is to flag cells at contact discontinuities.

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