SpECTRE
v2025.03.17
|
Analytic initial data for axially symmetric Bondi-Hoyle accretion. More...
#include <BondiHoyleAccretion.hpp>
Classes | |
struct | BhDimlessSpin |
The dimensionless black hole spin, | |
struct | BhMass |
The mass of the black hole, | |
struct | FlowSpeed |
The magnitude of the spatial velocity far from the black hole. More... | |
struct | MagFieldStrength |
The strength of the magnetic field. More... | |
struct | PolytropicConstant |
The polytropic constant of the fluid. More... | |
struct | PolytropicExponent |
The polytropic exponent of the fluid. More... | |
struct | RestMassDensity |
The rest mass density of the fluid far from the black hole. More... | |
Public Types | |
using | equation_of_state_type = EquationsOfState::PolytropicFluid< true > |
using | options = implementation defined |
![]() | |
template<typename DataType > | |
using | tags = implementation defined |
Public Member Functions | |
BondiHoyleAccretion (const BondiHoyleAccretion &)=default | |
BondiHoyleAccretion & | operator= (const BondiHoyleAccretion &)=default |
BondiHoyleAccretion (BondiHoyleAccretion &&)=default | |
BondiHoyleAccretion & | operator= (BondiHoyleAccretion &&)=default |
BondiHoyleAccretion (double bh_mass, double bh_dimless_spin, double rest_mass_density, double flow_speed, double magnetic_field_strength, double polytropic_constant, double polytropic_exponent) | |
auto | get_clone () const -> std::unique_ptr< evolution::initial_data::InitialData > override |
template<typename DataType , typename... Tags> | |
tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< Tags... >) const |
Retrieve a collection of hydro variables at x | |
template<typename DataType , typename Tag , Requires< not tmpl::list_contains_v< tmpl::push_back< hydro::grmhd_tags< DataType >, hydro::Tags::SpecificEnthalpy< DataType > >, Tag > > = nullptr> | |
tuples::TaggedTuple< Tag > | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< Tag >) const |
Retrieve the metric variables at x | |
void | pup (PUP::er &) override |
const EquationsOfState::PolytropicFluid< true > & | equation_of_state () const |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::RestMassDensity< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::RestMassDensity< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::ElectronFraction< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::ElectronFraction< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpecificInternalEnergy< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::SpecificInternalEnergy< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::Temperature< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::Temperature< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::Pressure< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::Pressure< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpatialVelocity< DataType, 3 > >) const -> tuples::TaggedTuple< hydro::Tags::SpatialVelocity< DataType, 3 > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::MagneticField< DataType, 3 > >) const -> tuples::TaggedTuple< hydro::Tags::MagneticField< DataType, 3 > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::DivergenceCleaningField< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::DivergenceCleaningField< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::LorentzFactor< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::LorentzFactor< DataType > > |
Retrieve hydro variable at x | |
template<typename DataType > | |
auto | variables (const tnsr::I< DataType, 3 > &x, tmpl::list< hydro::Tags::SpecificEnthalpy< DataType > >) const -> tuples::TaggedTuple< hydro::Tags::SpecificEnthalpy< DataType > > |
Retrieve hydro variable at x | |
virtual auto | get_clone () const -> std::unique_ptr< InitialData >=0 |
Static Public Attributes | |
static constexpr Options::String | help |
![]() | |
static constexpr size_t | volume_dim = 3_st |
Friends | |
bool | operator== (const BondiHoyleAccretion &lhs, const BondiHoyleAccretion &rhs) |
Analytic initial data for axially symmetric Bondi-Hoyle accretion.
In the context of studying Bondi-Hoyle accretion, i.e. non-spherical accretion on to a Kerr black hole moving relative to a gas cloud, this class implements the method proposed by [71] to initialize the GRMHD variables. The fluid quantities are initialized with their (constant) values far from the black hole, e.g.
where
where
where
|
overridevirtual |
Implements evolution::initial_data::InitialData.
|
staticconstexpr |