SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
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  InitialAcceleration
 Initial radial acceleration for the function of time for the spherical compression. 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
using GridToInertialMap
using options
Public Types inherited from domain::creators::time_dependence::TimeDependence< 3 >
using creatable_classes

Public Member Functions

 SphericalCompression (const SphericalCompression &)=delete
 SphericalCompression (SphericalCompression &&)=default
SphericalCompressionoperator= (const SphericalCompression &)=delete
SphericalCompressionoperator= (SphericalCompression &&)=default
 SphericalCompression (double initial_time, double min_radius, double max_radius, std::array< double, 3 > center, double initial_value, double initial_velocity, double initial_acceleration, 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.
auto block_maps_grid_to_inertial (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.
auto block_maps_grid_to_distorted (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Grid, Frame::Distorted, mesh_dim > > > override
 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.
auto block_maps_distorted_to_inertial (size_t number_of_blocks) const -> std::vector< std::unique_ptr< domain::CoordinateMapBase< Frame::Distorted, Frame::Inertial, mesh_dim > > > override
 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.
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 > > override
 Returns the functions of time for the domain.
Public Member Functions inherited from domain::creators::time_dependence::TimeDependence< 3 >
TimeDependenceoperator= (const TimeDependence &)=default
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.

Note
The quantity stored in the FunctionOfTime is really the spherical-harmonic coefficient \(\lambda_{00}(t)\). This is different from the Shape map, which stores ylm::Spherepack coefficients \(a_{lm}(t)\) and \(b_{lm}(t)\) instead of \(\lambda_{lm}(t)\). See domain::CoordinateMaps::TimeDependent::Shape for more details.

Member Typedef Documentation

◆ GridToInertialMap

using domain::creators::time_dependence::SphericalCompression::GridToInertialMap
Initial value:
detail::generate_coordinate_map_t<Frame::Grid, Frame::Inertial,
tmpl::list<SphericalCompressionMap>>
Definition IndexType.hpp:45
Definition IndexType.hpp:46

◆ maps_list

using domain::creators::time_dependence::SphericalCompression::maps_list
Initial value:
SphericalCompressionMap>>
A coordinate map or composition of coordinate maps.
Definition CoordinateMap.hpp:314

◆ options

using domain::creators::time_dependence::SphericalCompression::options
Initial value:
The initial time of the functions of time.
Definition BinaryCompactObject.hpp:149
Center for the Shape map.
Definition Shape.hpp:134
Initial radial acceleration for the function of time for the spherical compression.
Definition SphericalCompression.hpp:111
Initial value for function of time for the spherical compression.
Definition SphericalCompression.hpp:97
Initial radial velocity for the function of time for the spherical compression.
Definition SphericalCompression.hpp:104
Maximum radius for the SphericalCompression map.
Definition SphericalCompression.hpp:85
Minimum radius for the SphericalCompression map.
Definition SphericalCompression.hpp:79

Member Function Documentation

◆ block_maps_distorted_to_inertial()

auto domain::creators::time_dependence::SphericalCompression::block_maps_distorted_to_inertial ( size_t number_of_blocks) const -> std::vector<std::unique_ptr<domain::CoordinateMapBase< Frame::Distorted, Frame::Inertial, mesh_dim>>>
inlineoverridevirtual

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.

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

◆ block_maps_grid_to_distorted()

auto domain::creators::time_dependence::SphericalCompression::block_maps_grid_to_distorted ( size_t number_of_blocks) const -> std::vector<std::unique_ptr<domain::CoordinateMapBase< Frame::Grid, Frame::Distorted, mesh_dim>>>
inlineoverridevirtual

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.

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

◆ block_maps_grid_to_inertial()

auto domain::creators::time_dependence::SphericalCompression::block_maps_grid_to_inertial ( 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, double > & initial_expiration_times = {}) 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:
  • src/Domain/Creators/TimeDependence/SphericalCompression.hpp