SpECTRE  v2025.03.17
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
grmhd::AnalyticData::SpecInitialData< ThermodynamicDim > Class Template Reference

Hydro initial data generated by SpEC. More...

#include <SpecInitialData.hpp>

Classes

struct  AtmosphereDensity
 
struct  DataDirectory
 
struct  DensityCutoff
 
struct  ElectronFraction
 

Public Types

using equation_of_state_type = EquationsOfState::EquationOfState< true, ThermodynamicDim >
 
template<typename DataType >
using tags = implementation defined
 
using options = implementation defined
 
- Public Types inherited from grmhd::AnalyticDataBase
template<typename DataType >
using tags = implementation defined
 

Public Member Functions

 SpecInitialData (const SpecInitialData &rhs)
 
SpecInitialDataoperator= (const SpecInitialData &rhs)
 
 SpecInitialData (SpecInitialData &&)=default
 
SpecInitialDataoperator= (SpecInitialData &&)=default
 
 SpecInitialData (std::string data_directory, std::unique_ptr< equation_of_state_type > equation_of_state, double density_cutoff, double atmosphere_density, std::optional< double > electron_fraction)
 
auto get_clone () const -> std::unique_ptr< evolution::initial_data::InitialData > override
 
const equation_of_state_typeequation_of_state () const
 
template<typename DataType , typename... Tags>
tuples::TaggedTuple< Tags... > variables (const tnsr::I< DataType, 3 > &x, tmpl::list< Tags... >) const
 
void pup (PUP::er &) override
 
virtual auto get_clone () const -> std::unique_ptr< InitialData >=0
 

Static Public Member Functions

static std::string name ()
 

Static Public Attributes

static constexpr Options::String help = {"Initial data generated by SpEC"}
 
- Static Public Attributes inherited from grmhd::AnalyticDataBase
static constexpr size_t volume_dim = 3_st
 

Detailed Description

template<size_t ThermodynamicDim>
class grmhd::AnalyticData::SpecInitialData< ThermodynamicDim >

Hydro initial data generated by SpEC.

This class loads numerical data written out by the SpEC initial data solver. It uses the spec::Exporter linked in from SpEC to interpolate to arbitrary grid points. The coordinates are assumed to be in SpEC's "grid" frame. We interpolate the following quantities:

  • "g": spatial metric
  • "K": (lower) extrinsic curvature
  • "Lapse": lapse
  • "Shift": (upper) shift
  • "BaryonDensity": rest mass density
  • "u_i": lower spatial four-velocity

The remaining hydro quantities are computed from the interpolated data and the equation of state. The magnetic field is set to zero and the electron fraction is set to a constant read from the input file.

Member Function Documentation

◆ get_clone()

template<size_t ThermodynamicDim>
auto grmhd::AnalyticData::SpecInitialData< ThermodynamicDim >::get_clone ( ) const -> std::unique_ptr< evolution::initial_data::InitialData >
overridevirtual

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