SpECTRE
v2024.09.29
|
Base class for creating Domains from an option string. More...
#include <DomainCreator.hpp>
Public Member Functions | |
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 size_t | volume_dim = VolumeDim |
Base class for creating Domains from an option string.
|
inlinevirtual |
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.
Reimplemented in domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::Cylinder, domain::creators::CylindricalBinaryCompactObject, and domain::creators::Sphere.
|
inlinevirtual |
A human-readable name for every block, or empty if the domain creator doesn't support block names (yet).
Reimplemented in domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::Cylinder, domain::creators::CylindricalBinaryCompactObject, domain::creators::Rectilinear< Dim >, and domain::creators::Sphere.
|
pure virtual |
The set of external boundary condition for every block in the domain.
Implemented in domain::creators::AlignedLattice< Dim >, domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::Cylinder, domain::creators::CylindricalBinaryCompactObject, domain::creators::Disk, domain::creators::FrustalCloak, domain::creators::Rectilinear< Dim >, domain::creators::RotatedBricks, domain::creators::RotatedIntervals, domain::creators::RotatedRectangles, domain::creators::Sphere, and control_system::TestHelpers::FakeCreator.
|
inlinevirtual |
Retrieve the functions of time used for moving meshes.
Reimplemented in control_system::TestHelpers::FakeCreator, domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::CylindricalBinaryCompactObject, domain::creators::Rectilinear< Dim >, domain::creators::RotatedIntervals, and domain::creators::Sphere.
|
inlinevirtual |
A set of named coordinates in the grid frame, like the center of the domain or the positions of specific objects in a domain.
Reimplemented in domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::CylindricalBinaryCompactObject, and domain::creators::Sphere.
|
pure virtual |
Obtain the initial grid extents of the Elements in each block.
Implemented in domain::creators::AlignedLattice< Dim >, domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::Cylinder, domain::creators::CylindricalBinaryCompactObject, domain::creators::Disk, domain::creators::FrustalCloak, domain::creators::Rectilinear< Dim >, domain::creators::RotatedBricks, domain::creators::RotatedIntervals, domain::creators::RotatedRectangles, domain::creators::Sphere, and control_system::TestHelpers::FakeCreator.
|
pure virtual |
Obtain the initial refinement levels of the blocks.
Implemented in domain::creators::AlignedLattice< Dim >, domain::creators::BinaryCompactObject< UseWorldtube >, domain::creators::Cylinder, domain::creators::CylindricalBinaryCompactObject, domain::creators::Disk, domain::creators::FrustalCloak, domain::creators::Rectilinear< Dim >, domain::creators::RotatedBricks, domain::creators::RotatedIntervals, domain::creators::RotatedRectangles, domain::creators::Sphere, and control_system::TestHelpers::FakeCreator.