|
SpECTRE
v2026.06.09.01
|
Create a 3D Domain with a half-disk computational domain employing axial symmetry. The third dimension uses a Cartoon basis with Killing vector along the \(\phi\) direction. More...
#include <CartoonSphere2D.hpp>
Classes | |
| struct | InnerRadius |
| struct | OuterRadius |
| struct | InitialAngularRefinement |
| struct | InitialRadialRefinement |
| struct | InitialGridPoints |
| struct | RadialPartitioning |
| struct | UseEquiangularMap |
| struct | Interior |
| struct | OuterBoundaryCondition |
| struct | RadialDistribution |
| struct | TimeDependence |
Public Types | |
| using | maps_list |
| using | Excision = detail::Excision |
| using | InnerSquare = detail::InnerSquare |
| using | basic_options |
| template<typename Metavariables> | |
| using | options |
Public Member Functions | |
| CartoonSphere2D (double inner_radius, double outer_radius, size_t initial_angular_refinement, const typename InitialRadialRefinement::type &initial_radial_refinement, std::array< size_t, 2 > initial_number_of_grid_points, std::vector< double > radial_partitioning, bool use_equiangular_map, std::variant< Excision, InnerSquare > interior, const typename RadialDistribution::type &radial_distribution, std::unique_ptr< domain::creators::time_dependence::TimeDependence< 3 > > time_dependence, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > outer_boundary_condition, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > cartoon_boundary_condition, const Options::Context &context) | |
| CartoonSphere2D (const CartoonSphere2D &)=delete | |
| CartoonSphere2D (CartoonSphere2D &&)=default | |
| CartoonSphere2D & | operator= (const CartoonSphere2D &)=delete |
| CartoonSphere2D & | operator= (CartoonSphere2D &&)=default |
| Domain< 3 > | create_domain () const override |
| std::vector< DirectionMap< 3, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > > > | external_boundary_conditions () const override |
| The set of external boundary condition for every block in the domain. | |
| std::vector< std::array< size_t, 3 > > | initial_extents () const override |
| Obtain the initial grid extents of the Elements in each block. | |
| std::vector< std::array< size_t, 3 > > | initial_refinement_levels () const override |
| Obtain the initial refinement levels of the blocks. | |
| std::vector< std::string > | block_names () const override |
| The block names are Shell0_LowerY, Shell0_UpperX, Shell0_UpperY, Shell1_LowerY, and so on. The naming and numbering goes from outer-most shell, starting from bottom and going counterclockwise, going to inside neighboring shell. If the center is included, the "center" half-circle follows same numbering with the _HalfSquare being the last block. | |
| std::unordered_map< std::string, std::unordered_set< std::string > > | block_groups () const override |
| The block groups are Shell0, Shell1, ... starting from the outermost partition and working in. | |
| 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 |
| Retrieve the functions of time used for moving meshes. | |
| Public Member Functions inherited from DomainCreator< 3 > | |
| DomainCreator< VolumeDim > & | operator= (const DomainCreator< VolumeDim > &)=delete |
| virtual std::unordered_map< std::string, tnsr::I< double, VolumeDim, Frame::Grid > > | grid_anchors () const |
| A set of named coordinates in the grid frame, like the center of the domain or the positions of specific objects in a domain. | |
Static Public Attributes | |
| static constexpr Options::String | help |
| Static Public Attributes inherited from DomainCreator< 3 > | |
| static constexpr size_t | volume_dim |
Create a 3D Domain with a half-disk computational domain employing axial symmetry. The third dimension uses a Cartoon basis with Killing vector along the \(\phi\) direction.
| using domain::creators::CartoonSphere2D::basic_options |
| using domain::creators::CartoonSphere2D::maps_list |
| using domain::creators::CartoonSphere2D::options |
|
inlineoverridevirtual |
The block groups are Shell0, Shell1, ... starting from the outermost partition and working in.
Reimplemented from DomainCreator< 3 >.
|
inlineoverridevirtual |
The block names are Shell0_LowerY, Shell0_UpperX, Shell0_UpperY, Shell1_LowerY, and so on. The naming and numbering goes from outer-most shell, starting from bottom and going counterclockwise, going to inside neighboring shell. If the center is included, the "center" half-circle follows same numbering with the _HalfSquare being the last block.
Reimplemented from DomainCreator< 3 >.
|
overridevirtual |
Implements DomainCreator< 3 >.
|
overridevirtual |
The set of external boundary condition for every block in the domain.
Implements DomainCreator< 3 >.
|
overridevirtual |
Retrieve the functions of time used for moving meshes.
Reimplemented from DomainCreator< 3 >.
|
overridevirtual |
Obtain the initial grid extents of the Elements in each block.
Implements DomainCreator< 3 >.
|
overridevirtual |
Obtain the initial refinement levels of the blocks.
Implements DomainCreator< 3 >.
|
staticconstexpr |