104 topOZones(
const topOZones&);
107 void operator=(
const topOZones&);
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Mesh data needed to do the Finite Volume discretisation.
const labelList & fixedPorousZoneIDs() const
Cell zone IDs with fixed porosity values.
scalar getBetaMax() const
Get betaMax.
labelList getZoneIDs(const dictionary &dict, const word &zoneGroup)
Get zone IDs corresponding to a wordList, read from a dict.
const fvMesh & mesh_
Mesh reference.
scalarList fixedPorousValues_
The constant alpha values of fixedPorousIDs_.
const scalarList & fixedPorousValues() const
Values of alpha for each fixed porous zone.
void addIOcellsZone()
Add a cellZone containing the cells next to IO patches.
const cellZone & IOCells() const
Cells next to IO boundaries.
autoPtr< betaMax > betaMaxPtr_
The multiplier of the Brinkman penalisation term.
const labelList & adjointPorousZoneIDs() const
Cell zone IDs in which porosity is allowed to change.
label IOzoneID() const
ID of the cellZone holding the IOcells.
const labelList & fixedZeroPorousZoneIDs() const
Cell zone IDs with fixed zero porosity values.
const dictionary dict_
TopO design variables dictionary.
virtual ~topOZones()=default
Destructor.
labelList fixedZeroPorousIDs_
IDs of cellZones holding cells with zero alpha values.
TypeName("topOZones")
Runtime type information.
const fvMesh & mesh() const
Const reference to mesh.
labelList fixedPorousIDs_
IDs of cellZones holding cells with constant alpha values.
label IOcellsID_
ID of the cellZone holding the cells next to inlets & outlets.
labelList adjointPorousIDs_
IDs of cellZones with cells that can change their alpha value throughout the optimisation.
A class for handling words, derived from Foam::string.
List< label > labelList
A List of labels.
List< scalar > scalarList
List of scalar.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.