18 max(alpha.oldTime(), phase.residualAlpha())
28 PtrList<surfaceScalarField>
AFfs(
fluid.AFfs());
32 phaseModel& phase =
fluid.movingPhases()[movingPhasei];
39 IOobject::groupName(
"rAUf", phase.name()),
61 max(
alphafs[phase.index()], phase.residualAlpha())
81 phaseModel& phase =
fluid.movingPhases()[movingPhasei];
82 MRF.correctBoundaryFlux(phase.U(), phase.phiRef());
86 PtrList<surfaceScalarField> phigFs(
phases.size());
106 -
fluid.surfaceTension(phase)*
mesh.magSf()
122 phaseModel& phase =
fluid.movingPhases()[movingPhasei];
129 IOobject::groupName(
"phiHbyA", phase.name()),
136 - phigFs[phase.index()]
143 if (!partialElimination)
145 PtrList<surfaceScalarField> phiKdPhifs(
fluid.phiKdPhifs(
rAUfs));
149 if (phiKdPhifs.set(
phasei))
177 if (partialElimination)
179 PtrList<surfaceScalarField> phiKdPhifs(
fluid.phiKdPhifs(
rAUfs));
183 if (phiKdPhifs.set(
phasei))
214 surfaceScalarField::Boundary
phib(
phi.boundaryField());
220 alphafs[
phasei].boundaryField()*phase.phi()().boundaryField();
225 p_rgh.boundaryFieldRef(),
228 )/(
mesh.magSf().boundaryField()*rAUf.boundaryField())
233 PtrList<fvScalarMatrix> pEqnComps(
phases.size());
234 PtrList<volScalarField> dmdts(
fluid.dmdts());
241 if (phase.compressible())
247 IOobject::groupName(
"phid", phase.name()),
267 phase.thermo().psi()*
fvm::ddt(p_rgh)
277 pEqnComps[
phasei].faceFluxCorrectionPtr()
280 pEqnComps[
phasei].relax();
296 + (alpha*phase.thermo().psi()/
rho)
303 if (
fvOptions.appliesToField(rho.name()))
305 tmp<fvScalarMatrix> optEqn =
fvOptions(alpha, rho);
306 if (pEqnComps.set(
phasei))
315 fvm::Su(- (optEqn&rho)/rho, p_rgh).ptr()
322 if (pEqnComps.set(
phasei))
341 while (
pimple.correctNonOrthogonal())
355 if (pEqnComps.set(
phasei))
357 pEqn += pEqnComps[
phasei];
365 if (
pimple.finalNonOrthogonalIter())
373 phaseModel& phase =
fluid.movingPhases()[movingPhasei];
380 if (pEqnComps.set(phase.index()))
382 phase.divU(-pEqnComps[phase.index()] &
p_rgh);
386 if (partialElimination)
394 mSfGradp = pEqnIncomp.flux()/
rAUf;
398 phaseModel& phase =
fluid.movingPhases()[movingPhasei];
401 phase.URef().correctBoundaryConditions();
417 phase.thermoRef().rho() += phase.thermo().psi()*(p_rgh -
p_rgh_0);
423 p_rgh.correctBoundaryConditions();
tmp< fvMatrix< Type > > correction(const fvMatrix< Type > &)
Return the correction form of the given matrix.
fvMatrix< scalar > fvScalarMatrix
pimpleNoLoopControl & pimple
surfaceScalarField rAUf("rAUf", fvc::interpolate(rAU))
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
multiphaseSystem::phaseModelList & phases
volScalarField p_rgh_0(p_rgh)
tmp< GeometricField< Type, fvPatchField, volMesh > > div(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
PtrList< surfaceScalarField > AFfs(fluid.AFfs())
tmp< GeometricField< Type, fvPatchField, volMesh > > laplacian(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
tmp< GeometricField< Type, fvPatchField, volMesh > > ddt(const dimensioned< Type > dt, const fvMesh &mesh)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
PtrList< surfaceScalarField > alpharAUfs(phases.size())
PtrList< surfaceScalarField > rAUfs
const dimensionSet dimForce
const surfaceScalarField & ghf
dimensionedScalar pMin("pMin", dimPressure, fluid)
word name(const complex &)
Return a string representation of a complex.
tmp< volScalarField > byDt(const volScalarField &vf)
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
const dimensionSet dimDensity
PtrList< surfaceScalarField > alphafs(phases.size())
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh >> reconstruct(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
surfaceScalarField ghSnGradRho(ghf *fvc::snGrad(rho) *mesh.magSf())
PtrList< fvVectorMatrix > UEqns(fluid.phases().size())
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
PtrList< surfaceScalarField > alphaRho0fs(phases.size())
setSnGrad< fixedFluxPressureFvPatchScalarField >(p_rgh.boundaryFieldRef(),(phiHbyA.boundaryField() - MRF.relative(phib))/(mesh.magSf().boundaryField() *rAUf.boundaryField()))
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
PtrList< surfaceScalarField > phiHbyAs(fluid.phases().size())
const volScalarField & gh
dimensioned< scalar > mag(const dimensioned< Type > &)
volScalarField alpha(IOobject("alpha", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
tmp< surfaceScalarField > flux(const volVectorField &vvf)
Return the face-flux field obtained from the given volVectorField.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
const dimensionedVector & g
void deleteDemandDrivenData(DataPtr &dataPtr)
PtrList< surfaceScalarField > phiFfs(fluid.phiFfs(rAUfs))
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > snGrad(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
const dimensionSet dimArea(sqr(dimLength))
const dimensionSet dimVelocity