Compile time type representing the domain boundary relation between a boundary and one or two domains. This relation states that the boundary is exactly the surface between the specified domains. We enforce here that the size of the DomainTs pack is either one or two, as a boundary can only be associated with one or two domains. If it is one domain then the boundary is the surface of that domain, if it is two domains then the boundary is the interface between those two domains.
More...
template<IsBoundary BoundaryT, IsDomainOrSet... DomainTs>
requires SetOfOneOrTwo<DomainTs...>
struct serif::discretization::domain::schema::validation::DomainBoundary< BoundaryT, DomainTs >
Compile time type representing the domain boundary relation between a boundary and one or two domains. This relation states that the boundary is exactly the surface between the specified domains. We enforce here that the size of the DomainTs pack is either one or two, as a boundary can only be associated with one or two domains. If it is one domain then the boundary is the surface of that domain, if it is two domains then the boundary is the interface between those two domains.
- Template Parameters
-
| BoundaryT | The boundary type. |
| DomainTs | The domain or set types (one or two) that define the domains associated with the boundary. |
This relation is used to define constraints on the mesh, ensuring that the boundary is properly aligned with the specified domains and that it represents the interface between them.