mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-12-28 03:37:59 +00:00
- this provides a better typesafe means of locating predefined cell models than relying on strings. The lookup is now ptr() or ref() directly. The lookup functions behave like on-demand singletons when loading "etc/cellModels". Functionality is now located entirely in cellModel but a forwarding version of cellModeller is provided for API (but not ABI) compatibility with older existing user code. STYLE: use constexpr for cellMatcher constants
46 lines
860 B
C
46 lines
860 B
C
Info<< "Constructing single cell mesh" << nl << endl;
|
|
|
|
labelList owner(6, label(0));
|
|
labelList neighbour(0);
|
|
|
|
pointField points(8);
|
|
points[0] = vector(0, 0, 0);
|
|
points[1] = vector(1, 0, 0);
|
|
points[2] = vector(1, 1, 0);
|
|
points[3] = vector(0, 1, 0);
|
|
points[4] = vector(0, 0, 1);
|
|
points[5] = vector(1, 0, 1);
|
|
points[6] = vector(1, 1, 1);
|
|
points[7] = vector(0, 1, 1);
|
|
|
|
faceList faces = cellModel::ref(cellModel::HEX).modelFaces();
|
|
|
|
fvMesh mesh
|
|
(
|
|
IOobject
|
|
(
|
|
fvMesh::defaultRegion,
|
|
runTime.timeName(),
|
|
runTime,
|
|
IOobject::READ_IF_PRESENT
|
|
),
|
|
xferMove<pointField>(points),
|
|
faces.xfer(),
|
|
owner.xfer(),
|
|
neighbour.xfer()
|
|
);
|
|
|
|
List<polyPatch*> patches(1);
|
|
|
|
patches[0] = new emptyPolyPatch
|
|
(
|
|
"boundary",
|
|
6,
|
|
0,
|
|
0,
|
|
mesh.boundaryMesh(),
|
|
emptyPolyPatch::typeName
|
|
);
|
|
|
|
mesh.addFvPatches(patches);
|