SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
Cce::InitializeJ::InitializeJ< true > Struct Referenceabstract

Abstract base class for an initial hypersurface data generator for Cce, when the partially flat Bondi-like coordinates are evolved. More...

#include <InitializeJ.hpp>

Public Types

using boundary_tags
using mutate_tags
using argument_tags
using creatable_classes = tmpl::list<InverseCubic<true>>

Public Member Functions

 InitializeJ (CkMigrateMessage *)
 WRAPPED_PUPable_abstract (InitializeJ)
virtual std::unique_ptr< InitializeJ< true > > get_clone () const =0
virtual void operator() (gsl::not_null< Scalar< SpinWeighted< ComplexDataVector, 2 > > * > j, gsl::not_null< tnsr::i< DataVector, 3 > * > cartesian_cauchy_coordinates, gsl::not_null< tnsr::i< DataVector, 2, ::Frame::Spherical<::Frame::Inertial > > * > angular_cauchy_coordinates, gsl::not_null< tnsr::i< DataVector, 3 > * > cartesian_inertial_coordinates, gsl::not_null< tnsr::i< DataVector, 2, ::Frame::Spherical<::Frame::Inertial > > * > angular_inertial_coordinates, const Scalar< SpinWeighted< ComplexDataVector, 2 > > &boundary_j, const Scalar< SpinWeighted< ComplexDataVector, 2 > > &boundary_dr_j, const Scalar< SpinWeighted< ComplexDataVector, 0 > > &r, const Scalar< SpinWeighted< ComplexDataVector, 0 > > &beta, size_t l_max, size_t number_of_radial_points, gsl::not_null< Parallel::NodeLock * > hdf5_lock) const =0

Detailed Description

Abstract base class for an initial hypersurface data generator for Cce, when the partially flat Bondi-like coordinates are evolved.

Details

The algorithm is same as InitializeJ<false>, but with an additional initialization for the partially flat Bondi-like coordinates. The functions that are required to be overriden in the derived classes are:

  • InitializeJ::get_clone(): should return a std::unique_ptr<InitializeJ<true>> with cloned state.
  • InitializeJ::operator() const: should take as arguments, first a set of gsl::not_null pointers represented by mutate_tags, followed by a set of const references to quantities represented by argument_tags.
    Note
    The InitializeJ::operator() should be const, and therefore not alter the internal state of the generator. This is compatible with all known use-cases and permits the InitializeJ generator to be placed in the GlobalCache.

Member Typedef Documentation

◆ argument_tags

using Cce::InitializeJ::InitializeJ< true >::argument_tags
Initial value:
tmpl::push_back<boundary_tags, Tags::LMax, Tags::NumberOfRadialPoints>

◆ boundary_tags

using Cce::InitializeJ::InitializeJ< true >::boundary_tags
Initial value:
tmpl::list<Tags::BoundaryValue<Tags::BondiJ>,
A prefix tag representing the boundary data for a quantity on the extraction surface.
Definition Tags.hpp:261

◆ mutate_tags

using Cce::InitializeJ::InitializeJ< true >::mutate_tags
Initial value:
Bondi parameter .
Definition Tags.hpp:35
Definition Tags.hpp:209
Definition Tags.hpp:220
The angular coordinates for the partially flat Bondi-like coordinates.
Definition Tags.hpp:214
The partially flat Bondi-like coordinates.
Definition Tags.hpp:225

The documentation for this struct was generated from the following file:
  • src/Evolution/Systems/Cce/Initialize/InitializeJ.hpp