4 volVectorField::Boundary& bfld =
U.boundaryFieldRef();
7 if (bfld[patchi].fixesValue())
9 bfld[patchi].initEvaluate();
13 surfaceScalarField::Boundary& phiBfld =
phi.boundaryFieldRef();
16 if (bfld[patchi].fixesValue())
18 bfld[patchi].evaluate();
22 &
mesh.Sf().boundaryField()[patchi];
29 p_rgh.boundaryField().size(),
33 for (label i=0; i<
p_rgh.boundaryField().size(); i++)
35 if (
p_rgh.boundaryField()[i].fixesValue())
52 dimensionedScalar(
p_rgh.dimensions(), Zero),
58 fvc::makeRelative(
phi,
U);
60 fvc::makeAbsolute(
phi,
U);
65 dimensionedScalar
rAUf(
"rAUf", dimTime/
rho.dimensions(), 1.0);
71 while (
pimple.correctNonOrthogonal())
76 labelList refCells(
nZones, -1);
77 labelList refZones(
nZones, -1);
84 refCells[zoneId] == -1
85 &&
cellTypes[cellI] == cellCellStencil::CALCULATED
86 && refZones[zoneId] == -1
89 refCells[zoneId] = cellI;
90 refZones[zoneId] = zoneId;
94 fvScalarMatrix pcorrEqn
101 DynamicList<label> validCells(refCells.size());
104 if (refCells[zoneId] != -1)
106 validCells.append(refCells[zoneId]);
110 pcorrEqn.setReferences
119 const dictionary& d =
mesh.solver
128 mesh.fvMesh::solve(pcorrEqn, d);
130 if (
pimple.finalNonOrthogonalIter())
132 phi -= pcorrEqn.flux();
volScalarField pcorr(IOobject("pcorr", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), mesh, dimensionedScalar(p.dimensions(), Zero), pcorrTypes)
wordList pcorrTypes(p.boundaryField().size(), zeroGradientFvPatchScalarField::typeName)
surfaceScalarField rAUf("rAUf", fvc::interpolate(rAU))
adjustPhi(phiHbyA, U, p_rgh)
const cellCellStencilObject & overlap
const labelIOList & zoneIDs
const labelList & cellTypes
List< word > wordList
A List of words.
#define forAll(list, i)
Loop across all elements in list.
static const char *const typeName
The type name used in ensight case files.