mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
53 lines
1.2 KiB
C
53 lines
1.2 KiB
C
{
|
|
// Standard face-flux compression coefficient
|
|
surfaceScalarField phic(interface.cAlpha()*mag(phi/mesh.magSf()));
|
|
|
|
// Add the optional isotropic compression contribution
|
|
if (icAlpha > 0)
|
|
{
|
|
phic *= (1.0 - icAlpha);
|
|
phic += (interface.cAlpha()*icAlpha)*fvc::interpolate(mag(U));
|
|
}
|
|
|
|
volScalarField divU
|
|
(
|
|
mesh.moving()
|
|
? fvc::div(phi + mesh.phi())
|
|
: fvc::div(phi)
|
|
);
|
|
|
|
if (nAlphaSubCycles > 1)
|
|
{
|
|
dimensionedScalar totalDeltaT = runTime.deltaT();
|
|
surfaceScalarField rhoPhiSum
|
|
(
|
|
IOobject
|
|
(
|
|
"rhoPhiSum",
|
|
runTime.timeName(),
|
|
mesh
|
|
),
|
|
mesh,
|
|
dimensionedScalar(rhoPhi.dimensions(), Zero)
|
|
);
|
|
|
|
for
|
|
(
|
|
subCycle<volScalarField> alphaSubCycle(alpha1, nAlphaSubCycles);
|
|
!(++alphaSubCycle).end();
|
|
)
|
|
{
|
|
#include "alphaEqn.H"
|
|
rhoPhiSum += (runTime.deltaT()/totalDeltaT)*rhoPhi;
|
|
}
|
|
|
|
rhoPhi = rhoPhiSum;
|
|
}
|
|
else
|
|
{
|
|
#include "alphaEqn.H"
|
|
}
|
|
|
|
rho == alpha1*rho1 + alpha2*rho2;
|
|
}
|