SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::discretization::domain Namespace Reference

Namespaces

namespace  ids
 
namespace  mesh
 
namespace  relation
 
namespace  schema
 

Classes

struct  Boundary
 A Boundary is a surface in the mesh. It is a base class for all boundary types. More...
 
struct  BoundaryIDResolver
 A specialization of the DomainIDResolver struct for a DomainOrSet type. This struct is used to resolve the domain IDs for a given DomainOrSet type. More...
 
struct  BoundaryIDResolver< BoundarySet< BoundaryTs... >, ids::lists::BoundaryIDList< BoundaryIDTs... > >
 A specialization of the BoundaryIDResolver struct for a BoundarySet type. This struct is used to resolve the boundary IDs for a given BoundarySet type. More...
 
struct  BoundaryIDResolver< BoundaryT, ids::lists::BoundaryIDList< BoundaryIDTs... > >
 A specialization of the BoundaryIDResolver struct for a single Boundary type. This struct is used to resolve the boundary ID for a given Boundary type. More...
 
struct  BoundarySet
 A BoundarySet is a collection of boundaries. It is used to group multiple boundaries together for convenience. More...
 
struct  CoreDomain
 The CoreDomain is the central, cartesian, region of the star. It is a derived class of Domain. More...
 
struct  Domain
 A Domain is a volume in the mesh. It is a base class for all domain types. More...
 
struct  DomainIDResolver
 
struct  DomainIDResolver< DomainSet< DomainTs... >, ids::lists::DomainIDList< DomainIDTs... > >
 A specialization of the DomainIDResolver struct for a DomainSet type. This struct is used to resolve the domain IDs for a given DomainSet type. More...
 
struct  DomainIDResolver< DomainT, ids::lists::DomainIDList< DomainIDTs... > >
 A specialization of the DomainIDResolver struct for a single Domain type. This struct is used to resolve the domain ID for a given Domain type. More...
 
class  DomainOrSet
 A DomainOrSet is a type that can represent either a single domain or a set of domains. More...
 
struct  DomainOrSetList
 A list of DomainOrSet types. More...
 
struct  DomainSet
 A DomainSet is a collection of domains. It is used to group multiple domains together for convenience. More...
 
struct  EnvelopeDomain
 The EnvelopeDomain is the outer, spherical, region of the star. It is a derived class of Domain. More...
 
struct  InfinitySurfaceBoundary
 The InfinitySurfaceBoundary is the surface at infinity. It is a derived class of Boundary. More generally this is the outer boundary of the vacuum region; however, since we really need the boundary conditions to be applied at infinity, we call it the infinity surface. More...
 
struct  StellarSurfaceBoundary
 The StellarSurfaceBoundary is the surface of the star. It is a derived class of Boundary. More...
 
struct  VacuumDomain
 The VacuumDomain is the vacuum region surrounding the star. It is a derived class of Domain. More...
 

Concepts

concept  IsDomain
 <
 
concept  IsBoundary
 A Boundary is a surface in the mesh. It is a base class for all boundary types.
 
concept  IsDomainSet
 A concept to determine if a type is a DomainSet. A type is a DomainSet if it satisfies the is_domain_set_v trait.
 
concept  IsDomainOrSet
 A concept to determine if a type is a DomainOrSet. A type is a DomainOrSet if it is either a Domain or a DomainSet.
 
concept  DomainIsIdentifiedBy
 A concept to determine if a Domain type is identified by a DomainID type. A Domain type is identified by a DomainID type if the DomainID's domain_type is the same as the Domain type.
 
concept  BoundaryIsIdentifiedBy
 A concept to determine if a Boundary type is identified by a BoundaryID type. A Boundary type is identified by a BoundaryID type if the BoundaryID's boundary_type is the same as the Boundary type.
 

Typedefs

using StellarDomains = DomainSet<CoreDomain, EnvelopeDomain>
 The set of domains that make up the stellar region of the mesh.
 
using AllDomains = DomainSet<CoreDomain, EnvelopeDomain, VacuumDomain>
 The set of all domains in the mesh.
 

Functions

template<typename... Ts>
consteval std::size_t CountVariadicArguments () noexcept
 <
 

Variables

template<typename T>
constexpr bool is_domain_set_v = false
 A trait to determine if a type is a DomainSet. This is the default false specialization.
 
template<IsDomain... DomainTs>
constexpr bool is_domain_set_v< DomainSet< DomainTs... > > = true
 A trait to determine if a type is a DomainSet. This is the true specialization for DomainSet types.
 
template<class Child, class Parent>
constexpr bool AIsBaseClassOfB
 

Typedef Documentation

◆ AllDomains

◆ StellarDomains

The set of domains that make up the stellar region of the mesh.

Function Documentation

◆ CountVariadicArguments()

template<typename... Ts>
std::size_t serif::utils::misc::std_helper::CountVariadicArguments ( )
nodiscardconstevalnoexcept

<

Todo
remove this and just use the raw std::is_base_of_v

Variable Documentation

◆ AIsBaseClassOfB

template<class Child, class Parent>
bool serif::utils::misc::std_helper::AIsBaseClassOfB
constexpr

◆ is_domain_set_v

template<typename T>
bool serif::discretization::domain::is_domain_set_v = false
constexpr

A trait to determine if a type is a DomainSet. This is the default false specialization.

Template Parameters
TCandidate type to check.

◆ is_domain_set_v< DomainSet< DomainTs... > >

template<IsDomain... DomainTs>
bool serif::discretization::domain::is_domain_set_v< DomainSet< DomainTs... > > = true
constexpr

A trait to determine if a type is a DomainSet. This is the true specialization for DomainSet types.

Template Parameters
DomainTsThe domain types that make up the set.