SpECTRE
v2025.03.17
|
Gauge plane wave in flat spacetime. More...
#include <GaugePlaneWave.hpp>
Classes | |
struct | IntermediateVars |
struct | Profile |
struct | WaveVector |
Public Types | |
using | options = implementation defined |
template<typename DataType > | |
using | DerivLapse = ::Tags::deriv< gr::Tags::Lapse< DataType >, tmpl::size_t< volume_dim >, Frame::Inertial > |
template<typename DataType > | |
using | DerivShift = ::Tags::deriv< gr::Tags::Shift< DataType, volume_dim >, tmpl::size_t< volume_dim >, Frame::Inertial > |
template<typename DataType > | |
using | DerivSpatialMetric = ::Tags::deriv< gr::Tags::SpatialMetric< DataType, volume_dim >, tmpl::size_t< volume_dim >, Frame::Inertial > |
![]() | |
template<typename DataType , typename Frame = ::Frame::Inertial> | |
using | DerivLapse = ::Tags::deriv< gr::Tags::Lapse< DataType >, tmpl::size_t< volume_dim >, Frame > |
template<typename DataType , typename Frame = ::Frame::Inertial> | |
using | DerivShift = ::Tags::deriv< gr::Tags::Shift< DataType, volume_dim, Frame >, tmpl::size_t< volume_dim >, Frame > |
template<typename DataType , typename Frame = ::Frame::Inertial> | |
using | DerivSpatialMetric = ::Tags::deriv< gr::Tags::SpatialMetric< DataType, volume_dim, Frame >, tmpl::size_t< volume_dim >, Frame > |
template<typename DataType , typename Frame = ::Frame::Inertial> | |
using | tags = implementation defined |
Public Member Functions | |
GaugePlaneWave (const std::array< double, Dim > &wave_vector, std::unique_ptr< MathFunction< 1, Frame::Inertial > > profile) | |
GaugePlaneWave (const GaugePlaneWave &) | |
GaugePlaneWave & | operator= (const GaugePlaneWave &) |
GaugePlaneWave (GaugePlaneWave &&)=default | |
GaugePlaneWave & | operator= (GaugePlaneWave &&)=default |
GaugePlaneWave (CkMigrateMessage *) | |
template<typename DataType , typename... Tags> | |
tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, volume_dim, Frame::Inertial > &x, double t, tmpl::list< Tags... >) const |
template<typename DataType , typename... Tags> | |
tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, volume_dim, Frame::Inertial > &x, double t, const IntermediateVars< DataType > &vars, tmpl::list< Tags... >) const |
std::array< double, Dim > | get_wave_vector () const |
void | pup (PUP::er &p) |
Static Public Attributes | |
static constexpr size_t | volume_dim = Dim |
static constexpr Options::String | help {"Gauge plane wave in flat spacetime"} |
![]() | |
static constexpr size_t | volume_dim = Dim |
Friends | |
template<size_t LocalDim> | |
bool | operator== (const GaugePlaneWave< LocalDim > &lhs, const GaugePlaneWave< LocalDim > &rhs) |
template<size_t LocalDim> | |
bool | operator!= (const GaugePlaneWave< LocalDim > &lhs, const GaugePlaneWave< LocalDim > &rhs) |
Gauge plane wave in flat spacetime.
The spacetime metric is in Kerr-Schild form:
where
and that
For this solution we choose the profile
The 3+1 quantities are
Note that this solution is a gauge wave as
Dim | the spatial dimension of the solution |