SpECTRE  v2021.11.01
domain::creators::time_dependence::SphericalCompression Class Referencefinal

A spherical compression about some center, as given by domain::CoordinateMaps::TimeDependent::SphericalCompression<false>. More...

#include <SphericalCompression.hpp>

Classes

struct  Center
 Center for the SphericalCompression map. More...
 
struct  FunctionOfTimeName
 The name of the functions of time to be added to the added to the DataBox for the spherical compression. More...
 
struct  InitialAcceleration
 Initial radial acceleration for the function of time for the spherical compression. More...
 
struct  InitialExpirationDeltaT
 The time interval for updates of the functions of time. More...
 
struct  InitialTime
 The initial time of the function of time. More...
 
struct  InitialValue
 Initial value for function of time for the spherical compression. More...
 
struct  InitialVelocity
 Initial radial velocity for the function of time for the spherical compression. More...
 
struct  MaxRadius
 Maximum radius for the SphericalCompression map. More...
 
struct  MinRadius
 Minimum radius for the SphericalCompression map. More...
 

Public Types

using maps_list = tmpl::list< domain::CoordinateMap< Frame::Grid, Frame::Inertial, SphericalCompressionMap > >
 
using MapForComposition = detail::generate_coordinate_map_t< tmpl::list< SphericalCompressionMap > >
 
using options = tmpl::list< InitialTime, InitialExpirationDeltaT, MinRadius, MaxRadius, Center, InitialValue, InitialVelocity, InitialAcceleration, FunctionOfTimeName >
 
- Public Types inherited from domain::creators::time_dependence::TimeDependence< 3 >
using creatable_classes = tmpl::append< creatable_classes_any_dim, tmpl::conditional_t< MeshDim==1, creatable_classes_1d, tmpl::conditional_t< MeshDim==2, creatable_classes_2d, creatable_classes_3d > > >
 

Public Member Functions

 SphericalCompression (const SphericalCompression &)=delete
 
 SphericalCompression (SphericalCompression &&)=default
 
SphericalCompressionoperator= (const SphericalCompression &)=delete
 
SphericalCompressionoperator= (SphericalCompression &&)=default
 
 SphericalCompression (double initial_time, std::optional< double > initial_expiration_delta_t, double min_radius, double max_radius, std::array< double, 3 > center, double initial_value, double initial_velocity, double initial_acceleration, std::string function_of_time_name="LambdaFactorA0", const Options::Context &context={})
 
auto get_clone () const -> std::unique_ptr< TimeDependence< mesh_dim > > override
 Returns a std::unique_ptr pointing to a copy of the TimeDependence. More...
 
auto block_maps (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Grid, Frame::Inertial, mesh_dim > > > override
 Returns the coordinate maps from the Frame::Grid to the Frame::Inertial frame for each block. More...
 
auto functions_of_time () const -> std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > > override
 Returns the functions of time for the domain. More...
 
MapForComposition map_for_composition () const
 Returns the map for each block to be used in a composition of TimeDependences.
 
- Public Member Functions inherited from domain::creators::time_dependence::TimeDependence< 3 >
 TimeDependence (const TimeDependence &)=default
 
 TimeDependence (TimeDependence &&)=default
 
TimeDependenceoperator= (const TimeDependence &)=default
 
TimeDependenceoperator= (TimeDependence &&)=default
 
virtual auto get_clone () const -> std::unique_ptr< TimeDependence >=0
 Returns a std::unique_ptr pointing to a copy of the TimeDependence. More...
 
virtual auto block_maps (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. More...
 
virtual auto functions_of_time () const -> std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > >=0
 Returns the functions of time for the domain. More...
 
bool is_none () const
 Returns true if the instance is None, meaning no time dependence.
 

Static Public Attributes

static constexpr size_t mesh_dim = 3
 
static constexpr Options::String help = {"A spherical compression."}
 

Friends

bool operator== (const SphericalCompression &lhs, const SphericalCompression &rhs)
 

Detailed Description

A spherical compression about some center, as given by domain::CoordinateMaps::TimeDependent::SphericalCompression<false>.

Details

This TimeDependence is suitable for use on a spherical shell, where MinRadius and MaxRadius are the inner and outer radii of the shell, respectively.

Member Function Documentation

◆ block_maps()

auto domain::creators::time_dependence::SphericalCompression::block_maps ( size_t  number_of_blocks) const -> std::vector<std::unique_ptr<domain::CoordinateMapBase< Frame::Grid, Frame::Inertial, mesh_dim>>>
overridevirtual

Returns the coordinate maps from the Frame::Grid to the Frame::Inertial frame for each block.

Implements domain::creators::time_dependence::TimeDependence< 3 >.

◆ functions_of_time()

auto domain::creators::time_dependence::SphericalCompression::functions_of_time ( ) const -> std::unordered_map< std::string, std::unique_ptr<domain::FunctionsOfTime::FunctionOfTime>>
overridevirtual

Returns the functions of time for the domain.

Implements domain::creators::time_dependence::TimeDependence< 3 >.

◆ get_clone()

auto domain::creators::time_dependence::SphericalCompression::get_clone ( ) const -> std::unique_ptr<TimeDependence<mesh_dim>>
overridevirtual

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