10 #include "Evolution/Systems/Cce/Actions/BoundaryComputeAndSendToEvolution.hpp"
12 #include "Parallel/Invoke.hpp"
13 #include "Time/Tags.hpp"
43 template <
typename WorldtubeBoundaryComponent,
typename EvolutionComponent>
45 template <
typename DbTags,
typename... InboxTags,
typename Metavariables,
46 typename ArrayIndex,
typename ActionList,
47 typename ParallelComponent>
48 static auto apply(db::DataBox<DbTags>& box,
53 const ParallelComponent*
const ) noexcept {
55 WorldtubeBoundaryComponent, EvolutionComponent>>(
56 Parallel::get_parallel_component<WorldtubeBoundaryComponent>(cache),
57 db::get<::Tags::TimeStepId>(box));
58 return std::forward_as_tuple(std::move(box));
83 template <
typename WorldtubeBoundaryComponent,
typename EvolutionComponent>
85 using const_global_cache_tags =
86 tmpl::list<typename WorldtubeBoundaryComponent::end_time_tag>;
88 template <
typename DbTags,
typename... InboxTags,
typename Metavariables,
89 typename ArrayIndex,
typename ActionList,
90 typename ParallelComponent>
91 static auto apply(db::DataBox<DbTags>& box,
96 const ParallelComponent*
const ) noexcept {
99 db::get<Tags::EndTime>(box)) {
101 WorldtubeBoundaryComponent, EvolutionComponent>>(
102 Parallel::get_parallel_component<WorldtubeBoundaryComponent>(cache),
103 db::get<::Tags::Next<::Tags::TimeStepId>>(box));
105 return std::forward_as_tuple(std::move(box));