SpECTRE  v2021.12.06
Cce::Actions::BoundaryComputeAndSendToEvolution< GhWorldtubeBoundary< Metavariables >, EvolutionComponent > Struct Template Reference

Submits a request for CCE boundary data at the specified time to the Cce::InterfaceManagers::GhInterfaceManager, and sends the data to the EvolutionComponent (template argument) if it is ready. More...

#include <BoundaryComputeAndSendToEvolution.hpp>

Static Public Member Functions

template<typename ParallelComponent , typename... DbTags, typename ArrayIndex , Requires< tmpl2::flat_any_v< std::is_same_v< ::Tags::Variables< typename Metavariables::cce_boundary_communication_tags >, DbTags >... > > = nullptr>
static void apply (db::DataBox< tmpl::list< DbTags... > > &box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &, const TimeStepId &time)
 

Detailed Description

template<typename Metavariables, typename EvolutionComponent>
struct Cce::Actions::BoundaryComputeAndSendToEvolution< GhWorldtubeBoundary< Metavariables >, EvolutionComponent >

Submits a request for CCE boundary data at the specified time to the Cce::InterfaceManagers::GhInterfaceManager, and sends the data to the EvolutionComponent (template argument) if it is ready.

Details

This uses the Cce::InterfaceManagers::GhInterfaceManager to perform all of the work of managing the buffer of data sent from the GH system and interpolating if necessary and supported. This dispatches then to Cce::Actions::SendToEvolution<GhWorldtubeBoundary<Metavariables>, EvolutionComponent> if the boundary data is ready, otherwise simply submits the request and waits for data to become available via Cce::Actions::ReceiveGhWorldtubeData, which will call Cce::Actions::SendToEvolution<GhWorldtubeBoundary<Metavariables>, EvolutionComponent> as soon as the data becomes available.

DataBox changes:


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