SpECTRE  v2024.04.12
VariableFixing::RadiallyFallingFloor< Dim > Class Template Reference

Applies a pressure and density floor dependent on the distance to the origin. More...

#include <RadiallyFallingFloor.hpp>

Classes

struct  MinimumRadius
 The minimum radius at which to begin applying the floors on the density and pressure. More...
 
struct  PowerDensityFloor
 The power of the radius of the floor of the rest mass density. More...
 
struct  PowerPressureFloor
 The power of the radius of the floor of the pressure. More...
 
struct  ScaleDensityFloor
 The scale of the floor of the rest mass density. More...
 
struct  ScalePressureFloor
 The scale of the floor of the pressure. More...
 

Public Types

using options = tmpl::list< MinimumRadius, ScaleDensityFloor, PowerDensityFloor, ScalePressureFloor, PowerPressureFloor >
 
using return_tags = tmpl::list< hydro::Tags::RestMassDensity< DataVector >, hydro::Tags::Pressure< DataVector >, hydro::Tags::SpecificInternalEnergy< DataVector >, hydro::Tags::Temperature< DataVector >, hydro::Tags::ElectronFraction< DataVector > >
 
using argument_tags = tmpl::list< domain::Tags::Coordinates< Dim, Frame::Inertial >, hydro::Tags::EquationOfStateBase >
 

Public Member Functions

 RadiallyFallingFloor (double minimum_radius_at_which_to_apply_floor, double rest_mass_density_scale, double rest_mass_density_power, double pressure_scale, double pressure_power)
 
 RadiallyFallingFloor (const RadiallyFallingFloor &)=default
 
RadiallyFallingFlooroperator= (const RadiallyFallingFloor &)=default
 
 RadiallyFallingFloor (RadiallyFallingFloor &&)=default
 
RadiallyFallingFlooroperator= (RadiallyFallingFloor &&)=default
 
void pup (PUP::er &p)
 
template<size_t ThermodynamicDim>
void operator() (gsl::not_null< Scalar< DataVector > * > density, gsl::not_null< Scalar< DataVector > * > pressure, gsl::not_null< Scalar< DataVector > * > specific_internal_energy, gsl::not_null< Scalar< DataVector > * > temperature, gsl::not_null< Scalar< DataVector > * > electron_fraction, const tnsr::I< DataVector, Dim, Frame::Inertial > &coords, const EquationsOfState::EquationOfState< true, ThermodynamicDim > &equation_of_state) const
 

Static Public Attributes

static constexpr Options::String help
 

Friends

template<size_t LocalDim>
bool operator== (const RadiallyFallingFloor< LocalDim > &lhs, const RadiallyFallingFloor< LocalDim > &rhs)
 

Detailed Description

template<size_t Dim>
class VariableFixing::RadiallyFallingFloor< Dim >

Applies a pressure and density floor dependent on the distance to the origin.

Applies the floors: \(\rho(r) \geq \rho_{\mathrm{fl}}(r) = C_\rho r^{k_\rho}\) and \(P(r) \geq P_{\mathrm{fl}}(r) = C_p r^{k_p}\) when \( r > r_{min}\), where \(C_\rho\) is given by the option ScaleDensityFloor, \(k_\rho\) is given by the option PowerDensityFloor, \(C_p\) is given by the option ScalePressureFloor, \(k_p\) is given by the option PowerPressureFloor, and \(r_{min}\) is given by the option MinimumRadius.

Note
In [152], the following floors are applied: \(\rho(r) \geq \rho_{\mathrm{fl}}(r) = 10^{-5}r^{-3/2}\) and \(P(r) \geq P_{\mathrm{fl}}(r) = \frac{1}{3} \times 10^{-7}r^{-5/2}\)

Member Data Documentation

◆ help

template<size_t Dim>
constexpr Options::String VariableFixing::RadiallyFallingFloor< Dim >::help
staticconstexpr
Initial value:
= {
"Applies a pressure and density floor dependent on the distance to the "
"origin."}

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