SpECTRE
v2024.09.29
|
Projects the regular field \(\Psi^R\) and its time derivative \(\partial_t \Psi^R\) onto real spherical harmonics and sends the result to the worldtube. More...
#include <SendToWorldtube.hpp>
Public Types | |
using | tags_to_send = tmpl::list< CurvedScalarWave::Tags::Psi, ::Tags::dt< CurvedScalarWave::Tags::Psi > > |
using | tags_to_slice_to_face = tmpl::list< CurvedScalarWave::Tags::Psi, CurvedScalarWave::Tags::Pi, CurvedScalarWave::Tags::Phi< Dim >, gr::Tags::Shift< DataVector, Dim >, gr::Tags::Lapse< DataVector >, domain::Tags::InverseJacobian< Dim, Frame::ElementLogical, Frame::Inertial > > |
Static Public Member Functions | |
template<typename DbTagsList , typename... InboxTags, typename Metavariables , typename ArrayIndex , typename ActionList , typename ParallelComponent > | |
static Parallel::iterable_action_return_t | apply (db::DataBox< DbTagsList > &box, tuples::TaggedTuple< InboxTags... > &, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &, const ActionList, const ParallelComponent *const) |
Static Public Attributes | |
static constexpr size_t | Dim = 3 |
Projects the regular field \(\Psi^R\) and its time derivative \(\partial_t \Psi^R\) onto real spherical harmonics and sends the result to the worldtube.
The regular field is obtained by subtracting the singular/puncture field from the numerical DG field. All spherical harmonics are computed for \(l <= n\), where \(n\) is the worldtube expansion order. The projection is done by integrating over the DG grid of the element face using definite_integral with the euclidean area element. The worldtube adds up all integrals from the different elements to obtain the integral over the entire sphere.
DataBox:
tags_to_slice_on_face
Worldtube::Tags::ExpansionOrder
Worldtube::Tags::FaceCoordinates<Dim, Frame::Inertial, true>
Worldtube::Tags::PunctureField
Worldtube::Tags::ExcisionSphere
Tags::TimeStepId