SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
grmhd::ValenciaDivClean::NumericInitialData Class Reference

Numeric initial data loaded from volume data files. More...

#include <NumericInitialData.hpp>

Classes

struct  DensityCutoff
struct  PrimitiveVars
struct  Variables
struct  VarName
 Name of a variable in the volume data file. Can be optional, in which case a constant value can be supplied instead of a dataset name. More...

Public Types

using required_primitive_vars
using optional_primitive_vars
using primitive_vars_option_tags
using all_vars
using options

Public Member Functions

 NumericInitialData (const NumericInitialData &rhs)=default
NumericInitialDataoperator= (const NumericInitialData &rhs)=default
 NumericInitialData (NumericInitialData &&)=default
NumericInitialDataoperator= (NumericInitialData &&)=default
std::unique_ptr< evolution::initial_data::InitialDataget_clone () const override
 NumericInitialData (std::string file_glob, std::string subfile_name, std::variant< double, importers::ObservationSelector > observation_value, std::optional< double > observation_value_epsilon, bool enable_interpolation, PrimitiveVars selected_variables, double density_cutoff)
const importers::ImporterOptionsimporter_options () const
const PrimitiveVarsselected_variables () const
double density_cutoff () const
size_t volume_data_id () const
template<typename... AllTags>
void select_for_import (const gsl::not_null< tuples::TaggedTuple< AllTags... > * > all_fields) const
template<typename... AllTags, size_t ThermodynamicDim>
void set_initial_data (const gsl::not_null< Scalar< DataVector > * > rest_mass_density, const gsl::not_null< Scalar< DataVector > * > electron_fraction, const gsl::not_null< Scalar< DataVector > * > specific_internal_energy, const gsl::not_null< tnsr::I< DataVector, 3 > * > spatial_velocity, const gsl::not_null< tnsr::I< DataVector, 3 > * > magnetic_field, const gsl::not_null< Scalar< DataVector > * > div_cleaning_field, const gsl::not_null< Scalar< DataVector > * > lorentz_factor, const gsl::not_null< Scalar< DataVector > * > pressure, const gsl::not_null< Scalar< DataVector > * > temperature, const gsl::not_null< tuples::TaggedTuple< AllTags... > * > numeric_data, const tnsr::II< DataVector, 3 > &inv_spatial_metric, const EquationsOfState::EquationOfState< true, ThermodynamicDim > &equation_of_state) const
void pup (PUP::er &p) override

Static Public Attributes

static constexpr Options::String help

Friends

bool operator== (const NumericInitialData &lhs, const NumericInitialData &rhs)

Detailed Description

Numeric initial data loaded from volume data files.

This class can be factory-created in the input file to start an evolution from numeric initial data. It selects the hydro variables to load from the volume data files and allows to choose constant values for some of them.

Where the density is below the DensityCutoff the fluid variables are set to vacuum (zero density, pressure, energy and velocity, and unit Lorentz factor). To evolve the initial data, an atmosphere treatment is likely required to fix the value of the fluid variables in these regions.

Member Typedef Documentation

◆ all_vars

using grmhd::ValenciaDivClean::NumericInitialData::all_vars
Initial value:
tmpl::append<required_primitive_vars, optional_primitive_vars>

◆ optional_primitive_vars

using grmhd::ValenciaDivClean::NumericInitialData::optional_primitive_vars
Initial value:
tmpl::list<hydro::Tags::ElectronFraction<DataVector>,
The magnetic field measured by an Eulerian observer, where is the normal to the spatial hypersurfac...
Definition Tags.hpp:197

◆ options

using grmhd::ValenciaDivClean::NumericInitialData::options
Initial value:
tmpl::push_back<importers::ImporterOptions::tags_list,
Definition NumericInitialData.hpp:91

◆ primitive_vars_option_tags

using grmhd::ValenciaDivClean::NumericInitialData::primitive_vars_option_tags
Initial value:
tmpl::append<db::wrap_tags_in<VarName, required_primitive_vars,
db::wrap_tags_in<VarName, optional_primitive_vars,
tmpl::transform< TagList, tmpl::bind< Wrapper, tmpl::_1, tmpl::pin< Args >... > > wrap_tags_in
Create a new tmpl::list of tags by wrapping each tag in TagList in Wrapper<_, Args....
Definition PrefixHelpers.hpp:29
Name of a variable in the volume data file. Can be optional, in which case a constant value can be su...
Definition NumericInitialData.hpp:53

◆ required_primitive_vars

using grmhd::ValenciaDivClean::NumericInitialData::required_primitive_vars
Initial value:
tmpl::list<hydro::Tags::RestMassDensity<DataVector>,
The spatial components of the four-velocity one-form .
Definition Tags.hpp:308

Member Function Documentation

◆ get_clone()

std::unique_ptr< evolution::initial_data::InitialData > grmhd::ValenciaDivClean::NumericInitialData::get_clone ( ) const
inlineoverridevirtual

Member Data Documentation

◆ help

Options::String grmhd::ValenciaDivClean::NumericInitialData::help
staticconstexpr
Initial value:
=
"Numeric initial data loaded from volume data files"

The documentation for this class was generated from the following file:
  • src/Evolution/Systems/GrMhd/ValenciaDivClean/Actions/NumericInitialData.hpp