The full rewrite of mean_field into something maintainable is progressing. dimensions is mostly done, discritization (domain, blocks, and fields) is done, and eos is progressing quickly
24 lines
646 B
C++
24 lines
646 B
C++
#pragma once
|
|
|
|
#include <string_view>
|
|
|
|
#include "serif/discretization/domain/concepts.hpp"
|
|
|
|
// BoundaryID binds a semantic surface (a Boundary) to the integer boundary
|
|
// attribute MFEM stores in the mesh file.
|
|
//
|
|
// BoundaryID<StellarSurfaceBoundary, 1>
|
|
// "boundary elements with attribute 1 are the stellar surface"
|
|
namespace serif::discretization::domain::ids {
|
|
template <IsBoundary BoundaryT, int IdentifierValue>
|
|
struct BoundaryID {
|
|
using boundary_type = BoundaryT;
|
|
static constexpr int ID = IdentifierValue;
|
|
};
|
|
|
|
struct BoundaryDescriptor {
|
|
std::string_view name;
|
|
int ID;
|
|
};
|
|
}
|