41 template<
class RAUfType,
class DivUType>
61 zeroGradientFvPatchScalarField::typeName
86 if (pcorr.needReference())
113 phi -= pcorrEqn.
flux();
119 template<
class RAUfType,
class DivRhoUType>
127 const RAUfType& rAUf,
128 const DivRhoUType& divRhoU,
141 zeroGradientFvPatchScalarField::typeName
188 phi += pcorrEqn.
flux();
void CorrectPhi(volVectorField &U, surfaceScalarField &phi, const volScalarField &p, const RAUfType &rAUf, const DivUType &divU, pimpleControl &pimple)
#define forAll(list, i)
Loop across all elements in list.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
tmp< GeometricField< Type, fvPatchField, volMesh > > div(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
void setReference(const label celli, const Type &value, const bool forceReference=false)
Set reference level for solution.
const dictionary & solver(const word &name) const
Return the solver controls dictionary for the given field.
Calculate the matrix for the laplacian of the field.
void setFluxRequired(const word &name) const
static word timeName(const scalar, const int precision=precision_)
Return time name of given scalar time.
const Time & time() const
Return the top-level database.
tmp< GeometricField< Type, fvPatchField, volMesh > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
bool adjustPhi(surfaceScalarField &phi, const volVectorField &U, volScalarField &p)
Adjust the balance of fluxes to obey continuity.
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
const dimensionSet & dimensions() const
Return dimensions.
bool correctNonOrthogonal()
Non-orthogonal corrector loop.
Calulate the matrix for the first temporal derivative.
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
bool finalNonOrthogonalIter() const
Helper function to identify final non-orthogonal iteration.
Calculate the divergence of the given field.
SolverPerformance< Type > solve(const dictionary &)
Solve segregated or coupled returning the solution statistics.
const Mesh & mesh() const
Return mesh.
Calculate the mesh motion flux and convert fluxes from absolute to relative and back.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
A scalar instance of fvMatrix.
PIMPLE control class to supply convergence information/checks for the PIMPLE loop.
wordList pcorrTypes(p.boundaryField().size(), zeroGradientFvPatchScalarField::typeName)
Mesh data needed to do the Finite Volume discretisation.
void makeAbsolute(surfaceScalarField &phi, const volVectorField &U)
Make the given flux absolute.
For cases which do no have a pressure boundary adjust the balance of fluxes to obey continuity...
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > flux() const
Return the face-flux field from the matrix.
void makeRelative(surfaceScalarField &phi, const volVectorField &U)
Make the given flux relative.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...