56 volScalarField
rho(
"rho",
fluid.rho());
72 const surfaceScalarField phigF1
82 const surfaceScalarField phigF2
95 IOobject::groupName(
"HbyA",
phase1.name()),
108 IOobject::groupName(
"HbyA",
phase2.name()),
120 PtrList<surfaceScalarField> ddtCorrByAs(
fluid.ddtCorrByAs(
rAUs));
123 const surfaceScalarField phiHbyA1
125 IOobject::groupName(
"phiHbyA",
phase1.name()),
126 fvc::flux(HbyA1) - phigF1 - ddtCorrByAs[0]
129 const surfaceScalarField phiHbyA2
131 IOobject::groupName(
"phiHbyA",
phase2.name()),
132 fvc::flux(HbyA2) - phigF2 - ddtCorrByAs[1]
138 PtrList<surfaceScalarField> phiKdPhis(
fluid.phiKdPhis(
rAUs));
139 const surfaceScalarField& phiKdPhi1 = phiKdPhis[0];
140 const surfaceScalarField& phiKdPhi2 = phiKdPhis[1];
154 const surfaceScalarField
rAUf
163 p_rgh.boundaryFieldRef(),
170 )/(
mesh.magSf().boundaryField()*
rAUf.boundaryField())
174 tmp<fvScalarMatrix> pEqnComp1, pEqnComp2;
175 if (
phase1.compressible())
179 const surfaceScalarField phid1
181 IOobject::groupName(
"phid",
phase1.name()),
195 + fvm::div(phid1,
p_rgh) - fvm::Sp(fvc::div(phid1),
p_rgh)
199 pEqnComp1.ref().relax();
211 if (
phase2.compressible())
215 const surfaceScalarField phid2
217 IOobject::groupName(
"phid",
phase2.name()),
231 + fvm::div(phid2,
p_rgh) - fvm::Sp(fvc::div(phid2),
p_rgh)
235 pEqnComp2.ref().relax();
253 if (pEqnComp1.valid())
255 pEqnComp1.ref() -= (optEqn1 &
rho1)/
rho1;
265 if (pEqnComp2.valid())
267 pEqnComp2.ref() -= (optEqn2 &
rho2)/
rho2;
278 PtrList<volScalarField> dmdts(
fluid.dmdts());
281 if (pEqnComp1.valid())
283 pEqnComp1.ref() -= dmdts[0]/
rho1;
287 pEqnComp1 = fvm::Su(- dmdts[0]/
rho1,
p_rgh);
292 if (pEqnComp2.valid())
294 pEqnComp2.ref() -= dmdts[1]/
rho2;
298 pEqnComp2 = fvm::Su(- dmdts[1]/
rho2,
p_rgh);
307 while (
pimple.correctNonOrthogonal())
310 fvScalarMatrix pEqnIncomp
317 fvScalarMatrix pEqn(pEqnIncomp);
319 if (pEqnComp1.valid())
324 if (pEqnComp2.valid())
333 if (
pimple.finalNonOrthogonalIter())
337 surfaceScalarField mSfGradp
340 pEqnIncomp.flux()/
rAUf
345 const surfaceScalarField phi1s
350 const surfaceScalarField phi2s
355 surfaceScalarField
phir
366 if (pEqnComp1.valid())
370 if (pEqnComp2.valid())
378 mSfGradp = pEqnIncomp.flux()/
rAUf;
382 const volVectorField Us1
385 + fvc::reconstruct(
alpharAUf1*mSfGradp - phigF1)
388 const volVectorField Us2
391 + fvc::reconstruct(
alpharAUf2*mSfGradp - phigF2)
394 const volVectorField
U
399 const volVectorField Ur
405 U1.correctBoundaryConditions();
409 U2.correctBoundaryConditions();
428 p_rgh.correctBoundaryConditions();