11 #include "Domain/TagsTimeDependent.hpp"
15 #include "Utilities/TaggedTuple.hpp"
22 template <
typename Metavariables>
56 template <
typename DbTagsList,
typename... InboxTags,
typename Metavariables,
57 typename ArrayIndex,
typename ActionList,
58 typename ParallelComponent>
60 db::DataBox<DbTagsList>& box,
63 const ArrayIndex& , ActionList ,
64 const ParallelComponent*
const ) noexcept {
65 using variables_tag =
typename Metavariables::system::variables_tag;
67 db::mutate<dt_variables_tag>(
69 [](
const auto dt_vars_ptr,
const auto& vars,
71 div_grid_velocity) noexcept {
72 if (div_grid_velocity.has_value()) {
73 *dt_vars_ptr -= vars * get(*div_grid_velocity);
76 db::get<variables_tag>(box),
77 db::get<domain::Tags::DivMeshVelocity>(box));
78 return std::forward_as_tuple(std::move(box));
Definition: ElementReceiveInterpPoints.hpp:15
Functionality for evolving hyperbolic partial differential equations.
Definition: AddMeshVelocityNonconservative.hpp:29
Compute and add the source term modification for moving meshes.
Definition: AddMeshVelocitySourceTerms.hpp:55
An associative container that is indexed by structs.
Definition: TaggedTuple.hpp:271
Tensor< T, Symmetry<>, index_list<> > Scalar
Definition: TypeAliases.hpp:21
Definition: IndexType.hpp:36
gsl::not_null< T * > make_not_null(T *ptr) noexcept
Construct a not_null from a pointer. Often this will be done as an implicit conversion,...
Definition: Gsl.hpp:880