|
SpECTRE
2021.08.02
|
Initial conditions for relativistic MHD Riemann problems. More...
#include <RiemannProblem.hpp>
Classes | |
| struct | AdiabaticIndex |
| struct | Lapse |
| struct | LeftMagneticField |
| struct | LeftPressure |
| struct | LeftRestMassDensity |
| struct | LeftSpatialVelocity |
| struct | RightMagneticField |
| struct | RightPressure |
| struct | RightRestMassDensity |
| struct | RightSpatialVelocity |
| struct | ShiftX |
Public Types | |
| using | equation_of_state_type = EquationsOfState::IdealFluid< true > |
| using | options = tmpl::list< AdiabaticIndex, LeftRestMassDensity, RightRestMassDensity, LeftPressure, RightPressure, LeftSpatialVelocity, RightSpatialVelocity, LeftMagneticField, RightMagneticField, Lapse, ShiftX > |
Public Member Functions | |
| RiemannProblem (const RiemannProblem &)=delete | |
| RiemannProblem & | operator= (const RiemannProblem &)=delete |
| RiemannProblem (RiemannProblem &&) noexcept=default | |
| RiemannProblem & | operator= (RiemannProblem &&) noexcept=default |
| RiemannProblem (double adiabatic_index, double left_rest_mass_density, double right_rest_mass_density, double left_pressure, double right_pressure, const std::array< double, 3 > &left_spatial_velocity, const std::array< double, 3 > &right_spatial_velocity, const std::array< double, 3 > &left_magnetic_field, const std::array< double, 3 > &right_magnetic_field, double lapse, double shift) noexcept | |
| RiemannProblem (CkMigrateMessage *) noexcept | |
| template<typename DataType , typename... Tags> | |
| tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< Tags... >) const noexcept |
| Retrieve a collection of hydrodynamic variables at position x. | |
| template<typename DataType , typename Tag > | |
| tuples::TaggedTuple< Tag > | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< Tag >) const noexcept |
| Retrieve the metric variables. | |
| const EquationsOfState::IdealFluid< true > & | equation_of_state () const noexcept |
| void | pup (PUP::er &) noexcept |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::RestMassDensity< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::RestMassDensity< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpecificInternalEnergy< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::SpecificInternalEnergy< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::Pressure< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::Pressure< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpatialVelocity< DataType, 3 > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::SpatialVelocity< DataType, 3 > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::MagneticField< DataType, 3 > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::MagneticField< DataType, 3 > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::DivergenceCleaningField< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::DivergenceCleaningField< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::LorentzFactor< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::LorentzFactor< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpecificEnthalpy< DataType > >) const noexcept -> tuples::TaggedTuple< hydro::Tags::SpecificEnthalpy< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< gr::Tags::Lapse< DataType > >) const noexcept -> tuples::TaggedTuple< gr::Tags::Lapse< DataType > > |
| Retrieve the GRMHD variables at a given position. | |
| template<typename DataType > | |
| auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< gr::Tags::Shift< 3, Frame::Inertial, DataType > >) const noexcept -> tuples::TaggedTuple< gr::Tags::Shift< 3, Frame::Inertial, DataType > > |
| Retrieve the GRMHD variables at a given position. | |
Static Public Attributes | |
| static constexpr Options::String | help |
Friends | |
| bool | operator== (const RiemannProblem &lhs, const RiemannProblem &rhs) noexcept |
| bool | operator!= (const RiemannProblem &lhs, const RiemannProblem &rhs) noexcept |
Initial conditions for relativistic MHD Riemann problems.
The standard problems were first collected in [6]. A complete Riemann solver for the RMHD equations is presented in [49] and can be downloaded from https://www.brunogiacomazzo.org/?page_id=395
The domain is from \([-0.5,0.5]^3\) with periodic boundary conditions in \(y\) and \(z\). The problems are usually run at a resolution of 1600 finite difference/finite volume grid points and the initial discontinuity is located at \(x=0\).
While the problems were originally run in Minkowski space, changing the lapse \(\alpha\) to a non-unity constant value and/or the shift \(\beta^x\) to a non-zero constant value allows testing some of the metric terms in the evolution equations in a fairly simple setup.
Below are the initial conditions for the 5 different Balsara Riemann problems. Please note that RP5 has a different final time than the rest, and that RP1 has a different adiabatic index than the rest.
RP1:
RP2:
RP3:
RP4:
RP5:
|
staticconstexpr |