SpECTRE
v2025.03.17
|
Place the analytic solution of the system fields in the DataBox. More...
#include <InitializeAnalyticSolution.hpp>
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 analytic_fields_tag::type * > analytic_solution_fields, const Mesh< Dim > &mesh, const tnsr::I< DataVector, Dim > inertial_coords, const Background &background, const Metavariables &, const AmrData &... amr_data) |
Place the analytic solution of the system fields in the DataBox.
The Tags::AnalyticSolutionsBase
tag retrieved from the DataBox will hold a std::optional
. The analytic solution is only evaluated and stored in the DataBox if the BackgroundTag
holds a type that inherits from the AnalyticSolutionType
.
Uses:
AnalyticSolutionTag
or BackgroundTag
Tags::Coordinates<Dim, Frame::Inertial>
DataBox: