|
SpECTRE
v2025.08.19
|
Take a finite-difference time step on the subcell grid. More...
#include <TakeTimeStep.hpp>
Static Public Member Functions | |
| template<typename DbTags , typename... InboxTags, typename Metavariables , typename ArrayIndex , typename ActionList , typename ParallelComponent , size_t Dim = Metavariables::volume_dim> | |
| static Parallel::iterable_action_return_t | apply (db::DataBox< DbTags > &box, tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, const ActionList, const ParallelComponent *const) |
Take a finite-difference time step on the subcell grid.
The template parameter TimeDerivative must have a static apply function that takes the DataBox by gsl::not_null as the first argument, the cell-centered inverse Jacobian from the logical to the grid frame as the second argument, and its determinant as the third argument.
GlobalCache: nothing
DataBox:
subcell::fd::Tags::InverseJacobianLogicalToGrid<Dim>subcell::fd::Tags::DetInverseJacobianLogicalToGriddomain::Tags::ElementMap<Dim, Frame::Grid>domain::CoordinateMaps::Tags::CoordinateMap<Dim, Grid, Inertial>subcell::Tags::Coordinates<Dim, Frame::ElementLogical>Metavariables::SubcellOptions::TimeDerivative usesMetavariables::SubcellOptions::TimeDerivative modifies