25 lines
603 B
C++
25 lines
603 B
C++
module;
|
|
#include <mfem.hpp>
|
|
|
|
module mean_field;
|
|
|
|
namespace mean_field::utils {
|
|
DOMAINS operator|(DOMAINS lhs, DOMAINS rhs) {
|
|
return static_cast<DOMAINS>(static_cast<uint8_t>(lhs) |
|
|
static_cast<uint8_t>(rhs));
|
|
}
|
|
|
|
DOMAINS operator&(DOMAINS lhs, DOMAINS rhs) {
|
|
return static_cast<DOMAINS>(static_cast<uint8_t>(lhs) &
|
|
static_cast<uint8_t>(rhs));
|
|
}
|
|
|
|
int get_mesh_order(const mfem::Mesh &mesh) {
|
|
if (mesh.GetNodes() != nullptr) {
|
|
return mesh.GetNodes()->FESpace()->GetMaxElementOrder();
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
} // namespace mean_field::utils
|