20 const cellCellStencilObject&
overlap = Stencil::New(
mesh);
39 for (label faceI = 0; faceI <
mesh.nInternalFaces(); faceI++)
45 ownType == cellCellStencil::INTERPOLATED
46 && neiType == cellCellStencil::CALCULATED
53 for (label zoneI = 0; zoneI <
nZones; zoneI++)
57 const fvMesh& partMesh =
meshParts[zoneI].subMesh();
58 const labelList& cellMap =
meshParts[zoneI].cellMap();
59 label cellI = partMesh.findCell(fc);
64 labelList stencil(partMesh.cellCells()[cellI]);
66 stencil.append(cellI);
68 label st = stencil.size();
74 scalarField weights(st);
80 partMesh.cellCentres()[stencil[i]]
84 donorCell[faceI][i] = cellMap[stencil[i]];
86 weights /= sum(weights);
110 ownType == cellCellStencil::CALCULATED
111 && neiType == cellCellStencil::INTERPOLATED
117 for (label zoneI = 0; zoneI <
nZones; zoneI++)
119 if (zoneI !=
zoneID[
mesh.faceNeighbour()[faceI]])
121 const fvMesh& partMesh =
meshParts[zoneI].subMesh();
122 const labelList& cellMap =
meshParts[zoneI].cellMap();
123 label cellI = partMesh.findCell(fc);
128 labelList stencil(partMesh.cellCells()[cellI]);
130 stencil.append(cellI);
132 label st = stencil.size();
138 scalarField weights(st);
144 partMesh.cellCentres()[stencil[i]]
148 donorCell[faceI][i] = cellMap[stencil[i]];
150 weights /= sum(weights);
198 if (
mesh.nSolutionD() == 2)
202 if (
mesh.geometricD()[cmpt] == -1)
227 else if (
mesh.nSolutionD() == 3)
230 if (mag(
n.x()) > mag(
n.y()) && mag(
n.x()) > mag(
n.z()))
234 else if (mag(
n.y()) > mag(
n.z()))
245 const vector n2 = normalised(
n ^ n1);
251 n1.x() ,n1.y(), n1.z(),
252 n2.x() ,n2.y(), n2.z()
static constexpr direction nComponents
Number of components in bool is 1.
Tensor of scalars, i.e. Tensor<scalar>.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
const cellCellStencilObject & overlap
scalarListList weightCellCells(mesh.nInternalFaces())
interpolationCellPoint< vector > UInterpolator(HbyA)
labelListList donorCell(mesh.nInternalFaces())
surfaceVectorField faceNormals(mesh.Sf()/mesh.magSf())
bitSet isNeiInterpolatedFace(mesh.nInternalFaces())
labelList receptorNeigCell(mesh.nInternalFaces(), -1)
labelList nCellsPerZone(nZones, Zero)
vectorField UIntFaces(mesh.nInternalFaces(), Zero)
bitSet isOwnerInterpolatedFace(mesh.nInternalFaces())
PtrList< fvMeshSubset > meshParts(nZones)
const labelList & cellTypes
vectorField U1Contrav(mesh.nInternalFaces(), Zero)
const labelIOList & zoneID
#define forAll(list, i)
Loop across all elements in list.