61 const label zonei = zoneID[own[facei]];
62 const label ownType =
cellTypes[own[facei]];
63 const label neiType =
cellTypes[nei[facei]];
73 const bool ownOrCalc = (ownCalc || neiCalc);
77 (ownOrCalc && (zonei == zoneId))
78 || (ownOrCalc && (zoneId == -1))
115 const label facei = start + i;
116 const label celli = fc[i];
118 const label neiType = neiCellTypes[facei -
mesh.nInternalFaces()];
120 const label zonei = zoneID[celli];
126 if (ownCalc && (zonei == zoneId))
129 scalar
flux = phip[i];
145 const scalar massCorr = massIn/(massOut + SMALL);
149 Info<<
"Zone : " << zoneId <<
nl
150 <<
"mass outflow : " << massOut <<
nl
151 <<
"mass inflow : " << massIn <<
nl
152 <<
"correction factor : " << massCorr <<
endl;
159 const label zonei = zoneID[own[facei]];
161 const label ownType =
cellTypes[own[facei]];
162 const label neiType =
cellTypes[nei[facei]];
172 const bool ownOrCalc = (ownCalc || neiCalc);
176 (ownOrCalc && (zonei == zoneId)) || (ownOrCalc && (zoneId == -1))
207 const label facei = start + i;
208 const label celli = fc[i];
209 const label zonei = zoneID[celli];
211 const label neiType = neiCellTypes[facei -
mesh.nInternalFaces()];
221 const bool ownOrCalc = (ownCalc || neiCalc);
223 if (ownOrCalc && (zonei == zoneId))
226 scalar
flux = phip[i];
250 scalar massOutCheck = 0;
251 scalar massInCheck = 0;
255 const label zonei = zoneID[own[facei]];
256 const label ownType =
cellTypes[own[facei]];
257 const label neiType =
cellTypes[nei[facei]];
267 const bool ownOrCalc = (ownCalc || neiCalc);
271 (ownOrCalc && (zonei == zoneId))||(ownOrCalc && (zoneId == -1))
287 massOutCheck +=
flux;
292 Info<<
"mass in:" << massInCheck <<
" out:" << massOutCheck <<
nl;
GeometricBoundaryField< scalar, fvsPatchField, surfaceMesh > Boundary
static FOAM_NO_DANGLING_REFERENCE const cellCellStencilObject & New(const fvMesh &mesh, Args &&... args)
Mesh data needed to do the Finite Volume discretisation.
const fvPatch & patch() const noexcept
Return the patch.
label start() const noexcept
The patch start within the polyMesh face list.
virtual const labelUList & faceCells() const
Return faceCells.
const cellCellStencilObject & overlap
GeometricField< vector, fvPatchField, volMesh > volVectorField
bool oversetAdjustPhi(surfaceScalarField &phi, const volVectorField &U, const label zoneId=-1)
Adjust the balance of fluxes to obey continuity.
List< label > labelList
A List of labels.
messageStream Info
Information stream (stdout output on master, null elsewhere).
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
Ostream & endl(Ostream &os)
Add newline and flush stream.
dimensionedScalar sqrt(const dimensionedScalar &ds)
void reduce(T &value, BinaryOp bop, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm)
Reduce inplace (cf. MPI Allreduce).
UList< label > labelUList
A UList of labels.
fvPatchField< vector > fvPatchVectorField
fvsPatchField< scalar > fvsPatchScalarField
constexpr char nl
The newline '\n' character (0x0a).
Adjust the balance of fluxes on the faces between interpolated and calculated to obey continuity.
const labelUList & cellTypes
#define forAll(list, i)
Loop across all elements in list.