SpECTRE  v2022.06.14
Cce::Actions::InitializeFirstHypersurface< uses_partially_flat_cartesian_coordinates > Struct Template Reference

Given initial boundary data for \(J\) and \(\partial_r J\), computes the initial hypersurface quantities \(J\) and gauge values. More...

#include <InitializeFirstHypersurface.hpp>

Public Types

using const_global_cache_tags = tmpl::list< Tags::LMax, Tags::NumberOfRadialPoints >
 

Static Public Member Functions

template<typename DbTags , typename... InboxTags, typename Metavariables , typename ArrayIndex , typename ActionList , typename ParallelComponent >
static std::tuple< db::DataBox< DbTags > && > apply (db::DataBox< DbTags > &box, const tuples::TaggedTuple< InboxTags... > &, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &, const ActionList, const ParallelComponent *const)
 

Detailed Description

template<bool uses_partially_flat_cartesian_coordinates>
struct Cce::Actions::InitializeFirstHypersurface< uses_partially_flat_cartesian_coordinates >

Given initial boundary data for \(J\) and \(\partial_r J\), computes the initial hypersurface quantities \(J\) and gauge values.

Details

This action is to be called after boundary data has been received, but before the time-stepping evolution loop. So, it should be either late in an initialization phase or early (before a Actions::Goto loop or similar) in the Evolve phase.

Internally, this dispatches to the call function of Tags::InitializeJ, which designates a hypersurface initial data generator chosen by input file options, InitializeGauge, and InitializeScriPlusValue<Tags::InertialRetardedTime> to perform the computations. Refer to the documentation for those mutators for mathematical details.

Note
This action accesses the base tag Cce::Tags::InitializeJBase, trusting that a tag that inherits from that base tag is present in the box or the global cache. Typically, this tag should be added by the worldtube boundary component, as the type of initial data is decided by the type of the worldtube boundary data.

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