|
SpECTRE
2021.08.02
|
Initialize the damped harmonic gauge, either with or without a rollon function. More...
#include <InitializeDampedHarmonic.hpp>
Public Types | |
| using | frame = Frame::Inertial |
| using | const_global_cache_tags = tmpl::list< GeneralizedHarmonic::gauges::Tags::DhGaugeParameters< UseRollon > > |
| using | simple_tags = tmpl::conditional_t< UseRollon, tmpl::list< GeneralizedHarmonic::Tags::InitialGaugeH< Dim, frame >, GeneralizedHarmonic::Tags::SpacetimeDerivInitialGaugeH< Dim, frame > >, tmpl::list<> > |
| using | compute_tags = tmpl::conditional_t< UseRollon, DampedHarmonicRollonCompute< frame >, DampedHarmonicCompute< frame > > |
Static Public Member Functions | |
| template<typename DbTagsList , typename... InboxTags, typename Metavariables , typename ArrayIndex , typename ActionList , typename ParallelComponent > | |
| static auto | apply (db::DataBox< DbTagsList > &box, const tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, const ActionList, const ParallelComponent *const) noexcept |
Initialize the damped harmonic gauge, either with or without a rollon function.
See GeneralizedHarmonic::gauges::damped_harmonic() for details on the condition.
When the non-rollon gauge is initialized, Eq. 9 and 10 of [72] are used to compute the time derivatives for the lapse and shift to compute the new \(\Pi_{ab}\).
When the rollon gauge is used:
DataBox:
domain::Tags::Domain<Dim, Frame::Inertial>domain::CoordinateMaps::Tags::CoordinateMap<Dim, Frame::Grid, Frame::Inertial>domain::Tags::InverseJacobian<Dim, Frame::Logical, Frame::Inertial>domain::Tags::Mesh<Dim>gr::Tags::SpacetimeMetric<Dim, Frame::Inertial>GeneralizedHarmonic::Tags::Pi<Dim, Frame::Inertial>GeneralizedHarmonic::Tags::Phi<Dim, Frame::Inertial>When the non-rollon gauge is used:
DataBox:
Initialization::Tags::InitialTimedomain::Tags::ElementMap<Dim, Frame::Grid>domain::CoordinateMaps::Tags::CoordinateMap<Dim, Frame::Grid, Frame::Inertial>domain::Tags::Coordinates<Dim, Frame::Logical>domain::Tags::FunctionsOfTimegr::Tags::SpacetimeMetric<Dim, Frame::Inertial>GeneralizedHarmonic::Tags::Pi<Dim, Frame::Inertial>GeneralizedHarmonic::Tags::Phi<Dim, Frame::Inertial>SetupDataBox aggregated initialization mechanism, so Actions::SetupDataBox must be present in the Initialization phase action list prior to this action.