InitialDataTci.hpp
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 #pragma once
5 
6 #include <cstddef>
7 
9 #include "Domain/Tags.hpp"
10 #include "Evolution/DgSubcell/Tags/Inactive.hpp"
11 #include "Evolution/Systems/GrMhd/ValenciaDivClean/Tags.hpp"
12 #include "PointwiseFunctions/Hydro/TagsDeclarations.hpp"
13 #include "Utilities/TMPL.hpp"
14 
15 /// \cond
16 class DataVector;
17 template <size_t Dim>
18 class Mesh;
19 template <typename TagsList>
20 class Variables;
21 /// \endcond
22 
24 /*!
25  * \brief The troubled-cell indicator run on DG initial data to see if we need
26  * to switch to subcell.
27  *
28  * Uses the two-mesh relaxed discrete maximum principle as well as the Persson
29  * TCI applied to \f$\tilde{D}\f$ and \f$\tilde{\tau}\f$.
30  */
32  private:
33  template <typename Tag>
35 
36  public:
37  using argument_tags = tmpl::list<domain::Tags::Mesh<3>>;
38 
39  static bool apply(
40  const Variables<tmpl::list<
44  const Variables<tmpl::list<Inactive<ValenciaDivClean::Tags::TildeD>,
49  subcell_vars,
50  double rdmp_delta0, double rdmp_epsilon, double persson_exponent,
51  const Mesh<3>& dg_mesh) noexcept;
52 };
53 } // namespace grmhd::ValenciaDivClean::subcell
grmhd::ValenciaDivClean::subcell
Code required by the DG-subcell/FD hybrid solver.
Definition: InitialDataTci.hpp:23
Tags.hpp
cstddef
grmhd::ValenciaDivClean::Tags::TildeS
The densitized momentum density .
Definition: Tags.hpp:42
DataVector
Stores a collection of function values.
Definition: DataVector.hpp:46
grmhd::ValenciaDivClean::Tags::TildeB
The densitized magnetic field .
Definition: Tags.hpp:49
Mesh
Holds the number of grid points, basis, and quadrature in each direction of the computational grid.
Definition: Mesh.hpp:49
TypeAliases.hpp
grmhd::ValenciaDivClean::Tags::TildeD
The densitized rest-mass density .
Definition: Tags.hpp:31
grmhd::ValenciaDivClean::subcell::DgInitialDataTci
The troubled-cell indicator run on DG initial data to see if we need to switch to subcell.
Definition: InitialDataTci.hpp:31
grmhd::ValenciaDivClean::Tags::TildePhi
The densitized divergence-cleaning field .
Definition: Tags.hpp:55
evolution::dg::subcell::Tags::Inactive
Mark a tag as holding data for the inactive grid.
Definition: Inactive.hpp:23
TMPL.hpp
grmhd::ValenciaDivClean::Tags::TildeTau
The densitized energy density .
Definition: Tags.hpp:36