|
|
| AlignedLattice (typename BlockBounds::type block_bounds, typename InitialLevels::type initial_refinement_levels, typename InitialGridPoints::type initial_number_of_grid_points, typename RefinedLevels::type refined_refinement, typename RefinedGridPoints::type refined_grid_points, typename BlocksToExclude::type blocks_to_exclude, typename IsPeriodicIn::type is_periodic_in, const Options::Context &context={}) |
| |
|
| AlignedLattice (typename BlockBounds::type block_bounds, typename InitialLevels::type initial_refinement_levels, typename InitialGridPoints::type initial_number_of_grid_points, typename RefinedLevels::type refined_refinement, typename RefinedGridPoints::type refined_grid_points, typename BlocksToExclude::type blocks_to_exclude, std::unique_ptr< domain::BoundaryConditions::BoundaryCondition > boundary_condition=nullptr, const Options::Context &context={}) |
| |
|
| AlignedLattice (const AlignedLattice &)=delete |
| |
|
| AlignedLattice (AlignedLattice &&) noexcept=default |
| |
|
AlignedLattice & | operator= (const AlignedLattice &)=delete |
| |
|
AlignedLattice & | operator= (AlignedLattice &&) noexcept=default |
| |
| Domain< VolumeDim > | create_domain () const noexcept override |
| |
| std::vector< std::array< size_t, VolumeDim > > | initial_extents () const noexcept override |
| | Obtain the initial grid extents of the Elements in each block. More...
|
| |
| std::vector< std::array< size_t, VolumeDim > > | initial_refinement_levels () const noexcept override |
| | Obtain the initial refinement levels of the blocks. More...
|
| |
Public Member Functions inherited from DomainCreator< VolumeDim > |
|
| DomainCreator (const DomainCreator< VolumeDim > &)=delete |
| |
|
| DomainCreator (DomainCreator< VolumeDim > &&) noexcept=default |
| |
|
DomainCreator< VolumeDim > & | operator= (const DomainCreator< VolumeDim > &)=delete |
| |
|
DomainCreator< VolumeDim > & | operator= (DomainCreator< VolumeDim > &&) noexcept=default |
| |
| virtual auto | functions_of_time () const noexcept -> std::unordered_map< std::string, std::unique_ptr< domain::FunctionsOfTime::FunctionOfTime > > |
| | Retrieve the functions of time used for moving meshes. More...
|
| |
template<size_t VolumeDim>
class domain::creators::AlignedLattice< VolumeDim >
Create a Domain consisting of multiple aligned Blocks arrayed in a lattice.
This is useful for setting up problems with piecewise smooth initial data, problems that specify different boundary conditions on distinct parts of the boundary, or problems that need different length scales initially.
- Note
- Adaptive mesh refinement can never join Blocks, so use the fewest number of Blocks that your problem needs. More initial Elements can be created by specifying a larger
InitialRefinement.