SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
gr::Solutions::GaugeWave< Dim > Class Template Reference

Gauge wave in flat spacetime. More...

#include <GaugeWave.hpp>

Classes

struct  Amplitude
struct  Wavelength

Public Types

using options = tmpl::list<Amplitude, Wavelength>
template<typename DataType>
using DerivLapse
template<typename DataType>
using DerivShift
template<typename DataType>
using DerivSpatialMetric
template<typename DataType>
using tags
Public Types inherited from gr::AnalyticSolution< Dim >
template<typename DataType, typename Frame = ::Frame::Inertial>
using DerivLapse
template<typename DataType, typename Frame = ::Frame::Inertial>
using DerivShift
template<typename DataType, typename Frame = ::Frame::Inertial>
using DerivSpatialMetric
template<typename DataType, typename Frame = ::Frame::Inertial>
using tags

Public Member Functions

 GaugeWave (double amplitude, double wavelength, const Options::Context &context={})
 GaugeWave (const GaugeWave &)=default
GaugeWaveoperator= (const GaugeWave &)=default
 GaugeWave (GaugeWave &&)=default
GaugeWaveoperator= (GaugeWave &&)=default
 GaugeWave (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
void pup (PUP::er &p)
double amplitude () const
double wavelength () const

Static Public Attributes

static constexpr size_t volume_dim = Dim
static constexpr Options::String help {"Gauge wave in flat spacetime"}
Static Public Attributes inherited from gr::AnalyticSolution< Dim >
static constexpr size_t volume_dim = Dim

Detailed Description

template<size_t Dim>
class gr::Solutions::GaugeWave< Dim >

Gauge wave in flat spacetime.

Details

This solution is Minkowski space in coordinates chosen to contain a gauge wave. The spacetime metric is given by Eq. (4.3) of [2] :

\begin{equation}ds^2 = -H dt^2 + H dx^2 + dy^2 + dz^2, \end{equation}

where

\begin{equation}H = H(x-t) = 1 - A \sin\left(\frac{2\pi(x-t)}{d}\right). \end{equation}

The gauge wave has amplitude \(A\), wavelength \(d\), and propagates along the x axis.

In these coordinates, the spatial metric \(\gamma_{ij}\) and inverse spatial metric \(\gamma^{ij}\) are diagonal, with the diagonal elements equal to unity except for

\begin{align}\gamma_{xx} & = H,\\ \gamma^{xx} & = 1/H. \end{align}

The components of the derivatives of \(\gamma_{ij}\) vanish except for

\begin{align}\partial_t \gamma_{xx} & = \partial_t H = - \partial_x H,\\ \partial_x \gamma_{xx} & = \partial_x H. \end{align}

The square root of the spatial metric determinant is

\begin{align}\sqrt{\gamma} & = \sqrt{H}. \end{align}

The lapse and its derivatives are

\begin{align}\alpha & = \sqrt{H},\\ \partial_t \alpha & = -\frac{\partial_x H}{2\sqrt{H}},\\ \partial_x \alpha & = \frac{\partial_x H}{2\sqrt{H}},\\ \partial_y \alpha & = \partial_z \alpha = 0. \end{align}

The shift \(\beta^i\) and its derivatives vanish.

The extrinsic curvature's components vanish, except for

\begin{align}K_{xx} & = \frac{\partial_x H}{2 \sqrt{H}}. \end{align}

The following are input file options that can be specified:

Member Typedef Documentation

◆ DerivLapse

template<size_t Dim>
template<typename DataType>
using gr::Solutions::GaugeWave< Dim >::DerivLapse
Initial value:
tmpl::size_t<volume_dim>, Frame::Inertial>
Definition IndexType.hpp:46
Prefix indicating spatial derivatives.
Definition Prefixes.hpp:46

◆ DerivShift

template<size_t Dim>
template<typename DataType>
using gr::Solutions::GaugeWave< Dim >::DerivShift
Initial value:

◆ DerivSpatialMetric

template<size_t Dim>
template<typename DataType>
using gr::Solutions::GaugeWave< Dim >::DerivSpatialMetric

◆ tags

template<size_t Dim>
template<typename DataType>
using gr::Solutions::GaugeWave< Dim >::tags

The documentation for this class was generated from the following file:
  • src/PointwiseFunctions/AnalyticSolutions/GeneralRelativity/GaugeWave.hpp