SpECTRE  v2021.11.01
Elasticity::Solutions::AnalyticSolution< Dim, Registrars > Class Template Reference

Base class for analytic solutions of the linear Elasticity equations. More...

#include <AnalyticSolution.hpp>

Public Types

using registrars = Registrars
 
using creatable_classes = Registration::registrants< registrars >
 
- Public Types inherited from AnalyticData< Dim, Registrars >
using registrars = Registrars
 
using creatable_classes = Registration::registrants< registrars >
 

Public Member Functions

template<typename DataType , typename... RequestedTags>
tuples::TaggedTuple< RequestedTags... > variables (const tnsr::I< DataType, Dim, Frame::Inertial > &x, tmpl::list< RequestedTags... >) const
 
- Public Member Functions inherited from Elasticity::AnalyticData::AnalyticData< Dim, Registrars >
virtual const ConstitutiveRelations::ConstitutiveRelation< Dim > & constitutive_relation () const =0
 A constitutive relation that represents the properties of the elastic material. More...
 
- Public Member Functions inherited from AnalyticData< Dim, Registrars >
template<typename DataType , typename... Tags>
tuples::TaggedTuple< Tags... > variables (const tnsr::I< DataType, Dim > &x, tmpl::list< Tags... >) const
 Retrieve a collection of tensor fields at spatial coordinate(s) x
 
template<typename... Tags>
tuples::TaggedTuple< Tags... > variables (const tnsr::I< DataVector, Dim > &x, const Mesh< Dim > &mesh, const InverseJacobian< DataVector, Dim, Frame::ElementLogical, Frame::Inertial > &inv_jacobian, tmpl::list< Tags... >) const
 Retrieve a collection of tensor fields at spatial coordinate(s) x More...
 

Additional Inherited Members

- Static Public Attributes inherited from AnalyticData< Dim, Registrars >
static constexpr size_t volume_dim = Dim
 

Detailed Description

template<size_t Dim, typename Registrars>
class Elasticity::Solutions::AnalyticSolution< Dim, Registrars >

Base class for analytic solutions of the linear Elasticity equations.

This abstract base class allows factory-creating derived classes from input-file options (see Registration). The list of Registrars may also contain classes that aren't analytic solutions but only derive off Elasticity::AnalyticData::AnalyticData. This allows factory-creating any choice of analytic solution or analytic data from input-file options, but you must use the Elasticity::AnalyticData::AnalyticData class for the factory-creation. Note that analytic solutions provide more variables than analytic data classes, so to request variables that only analytic solutions provide you must perform a cast to AnalyticSolution.


The documentation for this class was generated from the following file: