|
SpECTRE
v2026.04.01
|
The abstract base class off of which specific classes for adding time dependence into a domain creator must inherit off of. More...
#include <TimeDependence.hpp>
Public Types | |
| using | creatable_classes |
Public Member Functions | |
| TimeDependence (const TimeDependence &)=default | |
| TimeDependence & | operator= (const TimeDependence &)=default |
| TimeDependence (TimeDependence &&)=default | |
| TimeDependence & | operator= (TimeDependence &&)=default |
| virtual auto | get_clone () const -> std::unique_ptr< TimeDependence >=0 |
| Returns a std::unique_ptr pointing to a copy of the TimeDependence. | |
| virtual auto | block_maps_grid_to_inertial (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Grid, Frame::Inertial, MeshDim > > >=0 |
| Returns the coordinate maps from the Frame::Grid to the Frame::Inertial frame for each block. | |
| virtual auto | block_maps_grid_to_distorted (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Grid, Frame::Distorted, MeshDim > > >=0 |
| Returns the coordinate maps from the Frame::Grid to the Frame::Distorted frame for each block. Returns vector of nullptr if there is no distorted frame. | |
| virtual auto | block_maps_distorted_to_inertial (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Distorted, Frame::Inertial, MeshDim > > >=0 |
| Returns the coordinate maps from the Frame::Distorted to the Frame::Inertial frame for each block. Returns vector of nullptr if is no distorted frame. | |
| virtual auto | functions_of_time (const std::unordered_map< std::string, double > &initial_expiration_times={}) const -> std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > >=0 |
| Returns the functions of time for the domain. | |
| bool | is_none () const |
| Returns true if the instance is None, meaning no time dependence. | |
The abstract base class off of which specific classes for adding time dependence into a domain creator must inherit off of.
The simplest examples of a TimeDependence are None and UniformTranslation. The None class is treated in a special manner to communicate to the code that the domain is time-independent. The UniformTranslation takes an extra template parameter Index so that its name is unique from other UniformTranslations.
| using domain::creators::time_dependence::TimeDependence< MeshDim >::creatable_classes |
|
pure virtual |
Returns the coordinate maps from the Frame::Distorted to the Frame::Inertial frame for each block. Returns vector of nullptr if is no distorted frame.
Implemented in domain::creators::time_dependence::CubicScale< MeshDim >, domain::creators::time_dependence::None< MeshDim >, domain::creators::time_dependence::RotationAboutZAxis< MeshDim >, domain::creators::time_dependence::ScalingAndZRotation< MeshDim >, domain::creators::time_dependence::Shape< Label >, domain::creators::time_dependence::SphericalCompression, and domain::creators::time_dependence::UniformTranslation< MeshDim, Index >.
|
pure virtual |
Returns the coordinate maps from the Frame::Grid to the Frame::Distorted frame for each block. Returns vector of nullptr if there is no distorted frame.
Implemented in domain::creators::time_dependence::CubicScale< MeshDim >, domain::creators::time_dependence::None< MeshDim >, domain::creators::time_dependence::RotationAboutZAxis< MeshDim >, domain::creators::time_dependence::ScalingAndZRotation< MeshDim >, domain::creators::time_dependence::Shape< Label >, domain::creators::time_dependence::SphericalCompression, and domain::creators::time_dependence::UniformTranslation< MeshDim, Index >.
|
pure virtual |
Returns the coordinate maps from the Frame::Grid to the Frame::Inertial frame for each block.
Implemented in domain::creators::time_dependence::CubicScale< MeshDim >, domain::creators::time_dependence::None< MeshDim >, domain::creators::time_dependence::RotationAboutZAxis< MeshDim >, domain::creators::time_dependence::ScalingAndZRotation< MeshDim >, domain::creators::time_dependence::Shape< Label >, domain::creators::time_dependence::SphericalCompression, and domain::creators::time_dependence::UniformTranslation< MeshDim, Index >.
|
pure virtual |
Returns the functions of time for the domain.
Implemented in domain::creators::time_dependence::CubicScale< MeshDim >, domain::creators::time_dependence::None< MeshDim >, domain::creators::time_dependence::RotationAboutZAxis< MeshDim >, domain::creators::time_dependence::ScalingAndZRotation< MeshDim >, domain::creators::time_dependence::Shape< Label >, domain::creators::time_dependence::SphericalCompression, and domain::creators::time_dependence::UniformTranslation< MeshDim, Index >.
|
pure virtual |
Returns a std::unique_ptr pointing to a copy of the TimeDependence.
Implemented in domain::creators::time_dependence::CubicScale< MeshDim >, domain::creators::time_dependence::None< MeshDim >, domain::creators::time_dependence::RotationAboutZAxis< MeshDim >, domain::creators::time_dependence::ScalingAndZRotation< MeshDim >, domain::creators::time_dependence::Shape< Label >, domain::creators::time_dependence::SphericalCompression, and domain::creators::time_dependence::UniformTranslation< MeshDim, Index >.