SpECTRE  v2026.06.09.01
Loading...
Searching...
No Matches
domain::BoundaryConditions Namespace Reference

Domain support for applying boundary conditions More...

Classes

class  BoundaryCondition
 Base class from which all system-specific base classes must inherit. More...
class  MarkAsCartoon
 Mark a boundary condition as being used as an internal Cartoon boundary. More...
struct  Cartoon
 Cartoon boundary conditions, to be used as the default placeholder in systems without Subcell. More...
class  MarkAsNone
struct  None
 None boundary conditions. More...
class  MarkAsPeriodic
 Mark a boundary condition as being periodic. More...
struct  Periodic
 Periodic boundary conditions. More...

Typedefs

template<typename Metavariables>
using get_cartoon_boundary_condition_from_system
 Extract the cartoon boundary condition type from a system's boundary condition list. Returns void if no cartoon boundary condition is found.
template<typename Metavariables>
using get_external_boundary_conditions_from_system
 Extract only the external (non-cartoon) boundary conditions from a system's boundary condition list. This should be used for user-selectable boundary condition options to prevent cartoon BCs from being specified as external BCs.
template<typename T>
using get_boundary_conditions_base
 Returns T::boundary_condition_base or a placeholder class.

Functions

bool is_cartoon (const std::unique_ptr< BoundaryCondition > &boundary_condition)
 Check if a boundary condition inherits from MarkAsCartoon, which constitutes as it being marked as an internal Cartoon boundary condition.
template<size_t Dim>
bool dg_mesh_is_cartoon_compatible (const Mesh< Dim > &dg_mesh)
 Check if a mesh is compatible with a Cartoon boundary condition, i.e. it is using cartoon bases in a proper way.
template<typename Metavariables>
std::unique_ptr< domain::BoundaryConditions::BoundaryConditionmake_cartoon_boundary_condition ()
 Create a cartoon boundary condition for systems that support it. Returns nullptr if the system doesn't have a cartoon boundary condition.
bool is_none (const std::unique_ptr< BoundaryCondition > &boundary_condition)
 Check if a boundary condition inherits from MarkAsNone, which constitutes as it being marked as a none boundary condition.
bool is_periodic (const std::unique_ptr< BoundaryCondition > &boundary_condition)
 Check if a boundary condition inherits from MarkAsPeriodic, which constitutes as it being marked as a periodic boundary condition.

Variables

template<typename Metavariables>
constexpr bool system_has_cartoon_bc_v
 Check if a system has a cartoon boundary condition available.

Detailed Description

Domain support for applying boundary conditions

Typedef Documentation

◆ get_boundary_conditions_base

Initial value:
typename detail::get_boundary_conditions_base<T>::type

Returns T::boundary_condition_base or a placeholder class.

◆ get_cartoon_boundary_condition_from_system

Initial value:
detail::find_cartoon_bc<
tmpl::at<typename Metavariables::factory_creation::factory_classes,
typename Metavariables::system::boundary_conditions_base>>

Extract the cartoon boundary condition type from a system's boundary condition list. Returns void if no cartoon boundary condition is found.

◆ get_external_boundary_conditions_from_system

Initial value:
detail::filter_out_cartoon_bcs<
tmpl::at<typename Metavariables::factory_creation::factory_classes,
typename Metavariables::system::boundary_conditions_base>>

Extract only the external (non-cartoon) boundary conditions from a system's boundary condition list. This should be used for user-selectable boundary condition options to prevent cartoon BCs from being specified as external BCs.

Variable Documentation

◆ system_has_cartoon_bc_v

template<typename Metavariables>
bool domain::BoundaryConditions::system_has_cartoon_bc_v
constexpr
Initial value:
T is_void_v
detail::find_cartoon_bc< tmpl::at< typename Metavariables::factory_creation::factory_classes, typename Metavariables::system::boundary_conditions_base > > get_cartoon_boundary_condition_from_system
Extract the cartoon boundary condition type from a system's boundary condition list....
Definition Cartoon.hpp:154

Check if a system has a cartoon boundary condition available.