10 #include "PointwiseFunctions/AnalyticData/Elasticity/AnalyticData.hpp"
11 #include "Utilities/FakeVirtual.hpp"
12 #include "Utilities/Registration.hpp"
14 #include "Utilities/TaggedTuple.hpp"
33 template <
size_t Dim,
typename Registrars>
51 using registrars = Registrars;
59 template <
typename DataType,
typename... RequestedTags>
61 const tnsr::I<DataType, Dim, Frame::Inertial>& x,
62 tmpl::list<RequestedTags...> )
const noexcept {
68 this, [&x](
auto*
const derived) noexcept {
69 return derived->variables(x, tmpl::list<RequestedTags...>{});
Base class for analytic solutions of the linear Elasticity equations.
Definition: AnalyticSolution.hpp:34
Result call_with_dynamic_type(Base *const obj, Callable &&f) noexcept
Call a functor with the derived type of a base class pointer.
Definition: FakeVirtual.hpp:103
Items related to solving elasticity problems.
Definition: LaserBeam.cpp:13
Base class for the background of the Elasticity system, i.e. its variable-independent quantities....
Definition: AnalyticData.hpp:25
#define WRAPPED_PUPable_abstract(className)
Wraps the Charm++ macro, see the Charm++ documentation.
Definition: CharmPupable.hpp:41
An associative container that is indexed by structs.
Definition: TaggedTuple.hpp:271
tmpl::transform< tmpl::remove_duplicates< RegistrarList >, detail::registrant< tmpl::pin< tmpl::remove_duplicates< RegistrarList > >, tmpl::_1 > > registrants
Transform a list of registrars into the list of associated registrants. This is usually used to defin...
Definition: Registration.hpp:65