SpECTRE
v2024.09.29
|
Create a 3D cubical domain with two equal-sized abutting excised cubes in the center. This is done by combining ten frusta. More...
#include <FrustalCloak.hpp>
Classes | |
struct | BoundaryCondition |
struct | InitialGridPoints |
struct | InitialRefinement |
struct | LengthInnerCube |
struct | LengthOuterCube |
struct | OriginPreimage |
struct | ProjectionFactor |
struct | UseEquiangularMap |
Public Types | |
using | maps_list = tmpl::list< domain::CoordinateMap< Frame::BlockLogical, Frame::Inertial, domain::CoordinateMaps::Frustum > > |
using | basic_options = tmpl::list< InitialRefinement, InitialGridPoints, UseEquiangularMap, ProjectionFactor, LengthInnerCube, LengthOuterCube, OriginPreimage > |
template<typename Metavariables > | |
using | options = tmpl::conditional_t< domain::BoundaryConditions::has_boundary_conditions_base_v< typename Metavariables::system >, tmpl::push_back< basic_options, BoundaryCondition< domain::BoundaryConditions::get_boundary_conditions_base< typename Metavariables::system > > >, basic_options > |
Public Member Functions | |
FrustalCloak (typename InitialRefinement::type initial_refinement_level, typename InitialGridPoints::type initial_number_of_grid_points, typename UseEquiangularMap::type use_equiangular_map=false, typename ProjectionFactor::type projection_factor=1.0, typename LengthInnerCube::type length_inner_cube=0.0, typename LengthOuterCube::type length_outer_cube=0.0, typename OriginPreimage::type origin_preimage={{0.0, 0.0, 0.0}}, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > boundary_condition=nullptr, const Options::Context &context={}) | |
FrustalCloak (const FrustalCloak &)=delete | |
FrustalCloak (FrustalCloak &&)=default | |
FrustalCloak & | operator= (const FrustalCloak &)=delete |
FrustalCloak & | operator= (FrustalCloak &&)=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. More... | |
std::vector< std::array< size_t, 3 > > | initial_extents () const override |
Obtain the initial grid extents of the Elements in each block. More... | |
std::vector< std::array< size_t, 3 > > | initial_refinement_levels () const override |
Obtain the initial refinement levels of the blocks. More... | |
Public Member Functions inherited from DomainCreator< 3 > | |
DomainCreator (const DomainCreator< VolumeDim > &)=delete | |
DomainCreator (DomainCreator< VolumeDim > &&)=default | |
DomainCreator< VolumeDim > & | operator= (const DomainCreator< VolumeDim > &)=delete |
DomainCreator< VolumeDim > & | operator= (DomainCreator< VolumeDim > &&)=default |
virtual Domain< VolumeDim > | create_domain () const=0 |
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. More... | |
virtual std::vector< DirectionMap< VolumeDim, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > > > | external_boundary_conditions () const=0 |
The set of external boundary condition for every block in the domain. More... | |
virtual std::vector< std::string > | block_names () const |
A human-readable name for every block, or empty if the domain creator doesn't support block names (yet). More... | |
virtual std::unordered_map< std::string, std::unordered_set< std::string > > | block_groups () const |
Labels to refer to groups of blocks. The groups can overlap, and they don't have to cover all blocks in the domain. The groups can be used to refer to multiple blocks at once when specifying input-file options. More... | |
virtual std::vector< std::array< size_t, VolumeDim > > | initial_extents () const=0 |
Obtain the initial grid extents of the Elements in each block. More... | |
virtual std::vector< std::array< size_t, VolumeDim > > | initial_refinement_levels () const=0 |
Obtain the initial refinement levels of the blocks. More... | |
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 > > |
Retrieve the functions of time used for moving meshes. More... | |
Static Public Attributes | |
static constexpr Options::String | help |
Static Public Attributes inherited from DomainCreator< 3 > | |
static constexpr size_t | volume_dim |
Create a 3D cubical domain with two equal-sized abutting excised cubes in the center. This is done by combining ten frusta.
|
overridevirtual |
Implements DomainCreator< 3 >.
|
overridevirtual |
The set of external boundary condition for every block in the domain.
Implements 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 |