|
SpECTRE
v2025.08.19
|
Initialize the effective source and singular field for the scalar self-force problem in a regularized region around the puncture. Replaces 'elliptic::Actions::InitializeFixedSources' in the standard elliptic initialization. More...
#include <InitializeEffectiveSource.hpp>
Public Types | |
| using | const_global_cache_tags = tmpl::list< elliptic::dg::Tags::Massive, BackgroundTag > |
| using | simple_tags = tmpl::list< fixed_sources_tag, singular_vars_tag, ::Tags::Mortars< singular_vars_on_mortars_tag, Dim >, Tags::BoyerLindquistRadius, Tags::FieldIsRegularized, ::Tags::Mortars< Tags::FieldIsRegularized, Dim > > |
| using | compute_tags = tmpl::list<> |
| using | return_tags = simple_tags |
| using | argument_tags = tmpl::list< domain::Tags::Coordinates< Dim, Frame::Inertial >, domain::Tags::Domain< Dim >, domain::Tags::Element< Dim >, ::Tags::Mortars< domain::Tags::Coordinates< Dim, Frame::Inertial >, Dim >, BackgroundTag, elliptic::dg::Tags::Massive, domain::Tags::Mesh< Dim >, domain::Tags::DetInvJacobian< Frame::ElementLogical, Frame::Inertial >, Parallel::Tags::Metavariables > |
Static Public Member Functions | |
| template<typename DbTagsList , typename... InboxTags, typename Metavariables , typename ActionList , typename ParallelComponent > | |
| static Parallel::iterable_action_return_t | apply (db::DataBox< DbTagsList > &box, const tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &, const ElementId< Dim > &, const ActionList, const ParallelComponent *const) |
| template<typename Background , typename Metavariables , typename... AmrData> | |
| static void | apply (const gsl::not_null< typename fixed_sources_tag::type * > fixed_sources, const gsl::not_null< typename singular_vars_tag::type * > singular_vars, const gsl::not_null< DirectionalIdMap< Dim, typename singular_vars_on_mortars_tag::type > * > singular_vars_on_mortars, const gsl::not_null< Scalar< DataVector > * > bl_radius, const gsl::not_null< bool * > field_is_regularized, const gsl::not_null< DirectionalIdMap< Dim, bool > * > neighbors_field_is_regularized, const tnsr::I< DataVector, Dim > &inertial_coords, const Domain< Dim > &domain, const Element< Dim > &element, const DirectionalIdMap< Dim, tnsr::I< DataVector, Dim > > &all_mortar_inertial_coords, const Background &background, const bool massive, const Mesh< Dim > &mesh, const Scalar< DataVector > &det_inv_jacobian, const Metavariables &, const AmrData &...) |
Initialize the effective source and singular field for the scalar self-force problem in a regularized region around the puncture. Replaces 'elliptic::Actions::InitializeFixedSources' in the standard elliptic initialization.
The regularized region is chosen as the full block containing the puncture. In this region, the Tags::FieldIsRegularized is set to true and the effective source and the singular field are set by the ScalarSelfForce::AnalyticData::CircularOrbit class. Outside this region, the fixed source and singular field are set to zero.