MAIA bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
fvcartesiancellproperties.h
Go to the documentation of this file.
1// Copyright (C) 2024 The m-AIA AUTHORS
2//
3// This file is part of m-AIA (https://git.rwth-aachen.de/aia/m-AIA/m-AIA)
4//
5// SPDX-License-Identifier: LGPL-3.0-only
6
7#ifndef FVCELLPROPERTIES_H_
8#define FVCELLPROPERTIES_H_
9
10#include <bitset>
11#include <type_traits>
12
14enum class FvCell {
15 IsDummy,
20 IsFlux,
22 IsActive,
23 IsGhost,
32 IsGapCell,
34 NearWall,
37 IsHalo,
38 IsWindow,
47 // <<< add new properties here
48 // ---
50};
51
52
53namespace maia {
54namespace fv {
55namespace cell {
56
58constexpr std::underlying_type<FvCell>::type p(const FvCell property) {
59 return static_cast<std::underlying_type<FvCell>::type>(property);
60}
61
62using BitsetType = std::bitset<p(FvCell::NumProperties)>;
63
64} // namespace cell
65} // namespace fv
66} // namespace maia
67
68#endif // FVCELLPROPERTIES_H_
FvCell
FV cell Property Labels.
@ IsActive
FV: see FvCartesianSolver::writeListOfActiveFlowCells.
@ IsGhost
ghost cells, set by the solvers for cartesiangrid
@ IsNotGradient
FV Multisolver: Halo cells requiring no gradient computation.
@ NumProperties
@ IsSplitCell
cell is a split cell
@ IsWMImgCell
@ IsHalo
cell is halo-cell
@ IsSplitChild
cell is a split child
@ IsGapCell
cell is inside gap
@ IsBndryActive
cell which is active but has an inactive neighbor (=MB-Boundary-Cell)
@ IsSplitClone
cell is an older-version of a splitchild
@ IsOnCurrentMGLevel
@ IsInterface
interface cells, set by cartesiangrid for the solvers
@ WasGapCell
cell was inside gap
@ HasCoarseNghbr
cell has a coarse nghbr (only set for cells with IsNotGradient==false)
@ IsPeriodicWithRot
periodic cell-->new periodic bc
@ HasSplitFace
cell has a split face
@ IsTempLinked
cell is temporarily linked
@ IsSandpaperTripCell
@ NearWall
cell is near solid boundary
@ IsInSpongeLayer
@ IsPeriodic
cell is periodic-cell
@ WasInactive
cell was outside fluid domain
@ IsInsideReactionZone
@ IsInactive
cell is outside fluid domain
@ IsMovingBnd
cell at moving boundary
@ IsWindow
cell is window cell for current solver
@ AtStructuredRegion
cell has 2*nDim regular neighbors on the same level
constexpr std::underlying_type< FvCell >::type p(const FvCell property)
Converts property name to underlying integer value.
std::bitset< p(FvCell::NumProperties)> BitsetType
Namespace for auxiliary functions/classes.