SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Systems/NewtonianEuler - System.hpp Hit Total Coverage
Commit: 3c072f0ce967e2e56649d3fa12aa2a0e4fe2a42e Lines: 0 16 0.0 %
Date: 2024-04-23 20:50: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/VariablesTag.hpp"
       9             : #include "Evolution/Systems/NewtonianEuler/BoundaryConditions/BoundaryCondition.hpp"
      10             : #include "Evolution/Systems/NewtonianEuler/BoundaryCorrections/BoundaryCorrection.hpp"
      11             : #include "Evolution/Systems/NewtonianEuler/Characteristics.hpp"
      12             : #include "Evolution/Systems/NewtonianEuler/ConservativeFromPrimitive.hpp"
      13             : #include "Evolution/Systems/NewtonianEuler/PrimitiveFromConservative.hpp"
      14             : #include "Evolution/Systems/NewtonianEuler/Tags.hpp"
      15             : #include "Evolution/Systems/NewtonianEuler/TimeDerivativeTerms.hpp"
      16             : #include "PointwiseFunctions/Hydro/Tags.hpp"
      17             : #include "Utilities/TMPL.hpp"
      18             : 
      19             : /// \ingroup EvolutionSystemsGroup
      20             : /// \brief Items related to evolving the Newtonian Euler system
      21             : namespace NewtonianEuler {
      22             : 
      23             : template <size_t Dim>
      24           0 : struct System {
      25           0 :   static constexpr bool is_in_flux_conservative_form = true;
      26           0 :   static constexpr bool has_primitive_and_conservative_vars = true;
      27           0 :   static constexpr size_t volume_dim = Dim;
      28             : 
      29           0 :   using boundary_conditions_base = BoundaryConditions::BoundaryCondition<Dim>;
      30           0 :   using boundary_correction_base = BoundaryCorrections::BoundaryCorrection<Dim>;
      31             : 
      32           0 :   using variables_tag = ::Tags::Variables<tmpl::list<
      33             :       Tags::MassDensityCons, Tags::MomentumDensity<Dim>, Tags::EnergyDensity>>;
      34           0 :   using flux_variables =
      35             :       tmpl::list<Tags::MassDensityCons, Tags::MomentumDensity<Dim>,
      36             :                  Tags::EnergyDensity>;
      37           0 :   using non_conservative_variables = tmpl::list<>;
      38           0 :   using gradient_variables = tmpl::list<>;
      39             :   // Compute item for pressure not currently implemented in SpECTRE,
      40             :   // so its simple tag is passed along with the primitive variables.
      41           0 :   using primitive_variables_tag = ::Tags::Variables<
      42             :       tmpl::list<hydro::Tags::RestMassDensity<DataVector>,
      43             :                  hydro::Tags::SpatialVelocity<DataVector, Dim>,
      44             :                  hydro::Tags::SpecificInternalEnergy<DataVector>,
      45             :                  hydro::Tags::Pressure<DataVector>>>;
      46             : 
      47           0 :   using compute_volume_time_derivative_terms = TimeDerivativeTerms<Dim>;
      48             : 
      49           0 :   using conservative_from_primitive = ConservativeFromPrimitive<Dim>;
      50           0 :   using primitive_from_conservative = PrimitiveFromConservative<Dim>;
      51             : 
      52           0 :   using compute_largest_characteristic_speed =
      53             :       Tags::ComputeLargestCharacteristicSpeed<Dim>;
      54             : };
      55             : 
      56             : }  // namespace NewtonianEuler

Generated by: LCOV version 1.14