SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Systems/GrMhd/ValenciaDivClean/Subcell - TciOnFdGrid.hpp Hit Total Coverage
Commit: b5ffa4904430ccef0b226f73dcd25c74cb5188f6 Lines: 1 5 20.0 %
Date: 2021-07-28 22:05:18
Legend: Lines: hit not hit

          Line data    Source code
       1           0 : // Distributed under the MIT License.
       2             : // See LICENSE.txt for details.
       3             : 
       4             : #pragma once
       5             : 
       6             : #include <cstddef>
       7             : 
       8             : #include "DataStructures/Tensor/TypeAliases.hpp"
       9             : #include "Domain/Tags.hpp"
      10             : #include "Evolution/DgSubcell/Tags/Inactive.hpp"
      11             : #include "Evolution/Systems/GrMhd/ValenciaDivClean/Tags.hpp"
      12             : #include "Evolution/VariableFixing/Tags.hpp"
      13             : #include "Utilities/TMPL.hpp"
      14             : 
      15             : /// \cond
      16             : class DataVector;
      17             : template <size_t Dim>
      18             : class Mesh;
      19             : /// \endcond
      20             : 
      21             : namespace grmhd::ValenciaDivClean::subcell {
      22             : /*!
      23             :  * \brief The troubled-cell indicator run on the FD grid to check if the
      24             :  * corresponding DG solution is admissible.
      25             :  *
      26             :  * The following checks are done in the order they are listed:
      27             :  *
      28             :  * - if `grmhd::ValenciaDivClean::Tags::VariablesNeededFixing` is `true` then we
      29             :  *   remain on FD. (Note: this could be relaxed in the future if we need to
      30             :  *   allow switching from FD to DG in the atmosphere and the current approach
      31             :  *   isn't working.)
      32             :  * - apply the Persson TCI to \f$\tilde{D}\f$ and \f$\tilde{\tau}\f$
      33             :  */
      34           1 : struct TciOnFdGrid {
      35           0 :   using return_tags = tmpl::list<>;
      36           0 :   using argument_tags =
      37             :       tmpl::list<evolution::dg::subcell::Tags::Inactive<
      38             :                      grmhd::ValenciaDivClean::Tags::TildeD>,
      39             :                  evolution::dg::subcell::Tags::Inactive<
      40             :                      grmhd::ValenciaDivClean::Tags::TildeTau>,
      41             :                  grmhd::ValenciaDivClean::Tags::VariablesNeededFixing,
      42             :                  domain::Tags::Mesh<3>>;
      43           0 :   static bool apply(const Scalar<DataVector>& tilde_d,
      44             :                     const Scalar<DataVector>& tilde_tau,
      45             :                     bool vars_needed_fixing, const Mesh<3>& dg_mesh,
      46             :                     double persson_exponent) noexcept;
      47             : };
      48             : }  // namespace grmhd::ValenciaDivClean::subcell

Generated by: LCOV version 1.14