mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
MRF: Separate MRF from fvOptions
fvOptions does not have the appropriate structure to support MRF as it is based on option selection by user-specified fields whereas MRF MUST be applied to all velocity fields in the particular solver. A consequence of the particular design choices in fvOptions made it difficult to support MRF for multiphase and it is easier to support frame-related and field related options separately. Currently the MRF functionality provided supports only rotations but the structure will be generalized to support other frame motions including linear acceleration, SRF rotation and 6DoF which will be run-time selectable.
This commit is contained in:
@ -80,6 +80,7 @@ int main(int argc, char *argv[])
|
|||||||
pisoControl potentialFlow(mesh, "potentialFlow");
|
pisoControl potentialFlow(mesh, "potentialFlow");
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
@ -90,8 +91,7 @@ int main(int argc, char *argv[])
|
|||||||
// function objects so do it ourselves
|
// function objects so do it ourselves
|
||||||
runTime.functionObjects().start();
|
runTime.functionObjects().start();
|
||||||
|
|
||||||
fvOptions.makeRelative(phi);
|
MRF.makeRelative(phi);
|
||||||
|
|
||||||
adjustPhi(phi, U, p);
|
adjustPhi(phi, U, p);
|
||||||
|
|
||||||
// Non-orthogonal velocity potential corrector loop
|
// Non-orthogonal velocity potential corrector loop
|
||||||
@ -113,7 +113,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fvOptions.makeAbsolute(phi);
|
MRF.makeAbsolute(phi);
|
||||||
|
|
||||||
Info<< "Continuity error = "
|
Info<< "Continuity error = "
|
||||||
<< mag(fvc::div(phi))().weightedAverage(mesh.V()).value()
|
<< mag(fvc::div(phi))().weightedAverage(mesh.V()).value()
|
||||||
|
|||||||
@ -92,6 +92,7 @@ int main(int argc, char *argv[])
|
|||||||
#include "readCombustionProperties.H"
|
#include "readCombustionProperties.H"
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
#include "compressibleCourantNo.H"
|
#include "compressibleCourantNo.H"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
betav*fvm::ddt(rho, U)
|
betav*fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
betav*rho*g
|
betav*rho*g
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho*g
|
rho*g
|
||||||
|
|||||||
@ -72,6 +72,7 @@ int main(int argc, char *argv[])
|
|||||||
#include "readCombustionProperties.H"
|
#include "readCombustionProperties.H"
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -18,7 +18,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -50,7 +50,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -50,6 +50,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|||||||
@ -74,6 +74,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readCombustionProperties.H"
|
#include "readCombustionProperties.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|||||||
@ -21,7 +21,7 @@ if (pimple.transonic())
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phid, psi, U);
|
fvc::makeRelative(phid, psi, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -54,7 +54,7 @@ else
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phiHbyA, rho, U);
|
fvc::makeRelative(phiHbyA, rho, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
parcels.SU(U)
|
parcels.SU(U)
|
||||||
|
|||||||
@ -55,6 +55,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
#include "createSurfaceFilmModel.H"
|
#include "createSurfaceFilmModel.H"
|
||||||
|
|||||||
@ -18,7 +18,7 @@ surfaceScalarField phiHbyA
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -26,7 +26,7 @@ setSnGrad<fixedFluxPressureFvPatchScalarField>
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -50,6 +50,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho*g
|
rho*g
|
||||||
|
|||||||
@ -18,7 +18,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -50,7 +50,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -48,6 +48,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -49,6 +49,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
surfaceScalarField phid("phid", fvc::interpolate(thermo.psi())*phiHbyA);
|
surfaceScalarField phid("phid", fvc::interpolate(thermo.psi())*phiHbyA);
|
||||||
|
|
||||||
@ -63,7 +63,7 @@
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
fvScalarMatrix pDDtEqn
|
fvScalarMatrix pDDtEqn
|
||||||
(
|
(
|
||||||
|
|||||||
@ -49,6 +49,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -26,7 +26,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -58,7 +58,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -55,6 +55,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "setInitialrDeltaT.H"
|
#include "setInitialrDeltaT.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ if (pimple.transonic())
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phid, psi, U);
|
fvc::makeRelative(phid, psi, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -58,7 +58,7 @@ else
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phiHbyA, rho, U);
|
fvc::makeRelative(phiHbyA, rho, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -58,6 +58,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readControls.H"
|
#include "readControls.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
#include "CourantNo.H"
|
#include "CourantNo.H"
|
||||||
|
|||||||
@ -51,6 +51,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -26,7 +26,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
surfaceScalarField phic
|
surfaceScalarField phic
|
||||||
(
|
(
|
||||||
@ -69,7 +69,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
phiHbyA += fvc::interpolate(rho*(rAtU - rAU))*fvc::snGrad(p)*mesh.magSf();
|
phiHbyA += fvc::interpolate(rho*(rAtU - rAU))*fvc::snGrad(p)*mesh.magSf();
|
||||||
HbyA -= (rAU - rAtU)*fvc::grad(p);
|
HbyA -= (rAU - rAtU)*fvc::grad(p);
|
||||||
|
|||||||
@ -51,6 +51,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
*(fvc::interpolate(HbyA) & mesh.Sf())
|
*(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (simple.correctNonOrthogonal())
|
while (simple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -49,7 +49,7 @@
|
|||||||
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
closedVolume = adjustPhi(phiHbyA, U, p);
|
closedVolume = adjustPhi(phiHbyA, U, p);
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Construct the Momentum equation
|
// Construct the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
closedVolume = adjustPhi(phiHbyA, U, p);
|
closedVolume = adjustPhi(phiHbyA, U, p);
|
||||||
|
|
||||||
|
|||||||
@ -49,6 +49,7 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createZones.H"
|
#include "createZones.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|||||||
@ -47,6 +47,7 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -17,7 +17,7 @@ if (simple.transonic())
|
|||||||
*(fvc::interpolate(HbyA) & mesh.Sf())
|
*(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
surfaceScalarField phic
|
surfaceScalarField phic
|
||||||
(
|
(
|
||||||
@ -61,7 +61,7 @@ else
|
|||||||
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
fvc::interpolate(rho*HbyA) & mesh.Sf()
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
closedVolume = adjustPhi(phiHbyA, U, p);
|
closedVolume = adjustPhi(phiHbyA, U, p);
|
||||||
|
|
||||||
|
|||||||
@ -49,6 +49,7 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -16,7 +16,7 @@ surfaceScalarField phid
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
// Non-orthogonal pressure corrector loop
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
|
|||||||
@ -17,7 +17,7 @@ surfaceScalarField phid
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phid, psi, U);
|
fvc::makeRelative(phid, psi, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
// Non-orthogonal pressure corrector loop
|
// Non-orthogonal pressure corrector loop
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
|
|||||||
@ -54,6 +54,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readControls.H"
|
#include "readControls.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
#include "CourantNo.H"
|
#include "CourantNo.H"
|
||||||
|
|||||||
@ -50,6 +50,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the momentum equation
|
// Solve the momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(U)
|
fvm::ddt(U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(U)
|
||||||
+ turbulence->divDevReff(U)
|
+ turbulence->divDevReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(U)
|
fvOptions(U)
|
||||||
|
|||||||
@ -65,6 +65,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
#include "createIncompressibleRadiationModel.H"
|
#include "createIncompressibleRadiationModel.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -23,7 +23,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Solve the momentum equation
|
// Solve the momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(U)
|
||||||
+ turbulence->divDevReff(U)
|
+ turbulence->divDevReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(U)
|
fvOptions(U)
|
||||||
|
|||||||
@ -63,6 +63,7 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -14,7 +14,7 @@
|
|||||||
(fvc::interpolate(HbyA) & mesh.Sf())
|
(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
adjustPhi(phiHbyA, U, p_rgh);
|
adjustPhi(phiHbyA, U, p_rgh);
|
||||||
|
|
||||||
@ -26,7 +26,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -53,6 +53,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -50,6 +50,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|||||||
@ -17,7 +17,7 @@
|
|||||||
(fvc::interpolate(rho*HbyA) & mesh.Sf())
|
(fvc::interpolate(rho*HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
bool closedVolume = adjustPhi(phiHbyA, U, p_rgh);
|
bool closedVolume = adjustPhi(phiHbyA, U, p_rgh);
|
||||||
|
|
||||||
@ -29,7 +29,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,7 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(rho, U)
|
||||||
+ turb.divDevRhoReff(U)
|
+ turb.divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -18,6 +18,7 @@
|
|||||||
PtrList<dimensionedScalar> rhoMax(fluidRegions.size());
|
PtrList<dimensionedScalar> rhoMax(fluidRegions.size());
|
||||||
PtrList<dimensionedScalar> rhoMin(fluidRegions.size());
|
PtrList<dimensionedScalar> rhoMin(fluidRegions.size());
|
||||||
|
|
||||||
|
PtrList<IOMRFZoneList> MRFfluid(fluidRegions.size());
|
||||||
PtrList<fv::IOoptionList> fluidFvOptions(fluidRegions.size());
|
PtrList<fv::IOoptionList> fluidFvOptions(fluidRegions.size());
|
||||||
|
|
||||||
// Populate fluid field pointer lists
|
// Populate fluid field pointer lists
|
||||||
@ -205,6 +206,13 @@
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Info<< " Adding MRF\n" << endl;
|
||||||
|
MRFfluid.set
|
||||||
|
(
|
||||||
|
i,
|
||||||
|
new IOMRFZoneList(fluidRegions[i])
|
||||||
|
);
|
||||||
|
|
||||||
Info<< " Adding fvOptions\n" << endl;
|
Info<< " Adding fvOptions\n" << endl;
|
||||||
fluidFvOptions.set
|
fluidFvOptions.set
|
||||||
(
|
(
|
||||||
|
|||||||
@ -19,7 +19,7 @@
|
|||||||
(fvc::interpolate(rho*HbyA) & mesh.Sf())
|
(fvc::interpolate(rho*HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
bool closedVolume = adjustPhi(phiHbyA, U, p_rgh);
|
bool closedVolume = adjustPhi(phiHbyA, U, p_rgh);
|
||||||
|
|
||||||
@ -31,7 +31,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -12,6 +12,7 @@
|
|||||||
volScalarField& p = thermo.p();
|
volScalarField& p = thermo.p();
|
||||||
const volScalarField& psi = thermo.psi();
|
const volScalarField& psi = thermo.psi();
|
||||||
|
|
||||||
|
IOMRFZoneList& MRF = MRFfluid[i];
|
||||||
fv::IOoptionList& fvOptions = fluidFvOptions[i];
|
fv::IOoptionList& fvOptions = fluidFvOptions[i];
|
||||||
|
|
||||||
const dimensionedScalar initialMass
|
const dimensionedScalar initialMass
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turb.divDevRhoReff(U)
|
+ turb.divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -15,6 +15,7 @@
|
|||||||
List<scalar> initialMassFluid(fluidRegions.size());
|
List<scalar> initialMassFluid(fluidRegions.size());
|
||||||
List<bool> frozenFlowFluid(fluidRegions.size(), false);
|
List<bool> frozenFlowFluid(fluidRegions.size(), false);
|
||||||
|
|
||||||
|
PtrList<IOMRFZoneList> MRFfluid(fluidRegions.size());
|
||||||
PtrList<fv::IOoptionList> fluidFvOptions(fluidRegions.size());
|
PtrList<fv::IOoptionList> fluidFvOptions(fluidRegions.size());
|
||||||
|
|
||||||
// Populate fluid field pointer lists
|
// Populate fluid field pointer lists
|
||||||
@ -195,6 +196,13 @@
|
|||||||
fluidRegions[i].solutionDict().subDict("PIMPLE");
|
fluidRegions[i].solutionDict().subDict("PIMPLE");
|
||||||
pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]);
|
pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]);
|
||||||
|
|
||||||
|
Info<< " Adding MRF\n" << endl;
|
||||||
|
MRFfluid.set
|
||||||
|
(
|
||||||
|
i,
|
||||||
|
new IOMRFZoneList(fluidRegions[i])
|
||||||
|
);
|
||||||
|
|
||||||
Info<< " Adding fvOptions\n" << endl;
|
Info<< " Adding fvOptions\n" << endl;
|
||||||
fluidFvOptions.set
|
fluidFvOptions.set
|
||||||
(
|
(
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
radiation::radiationModel& rad = radiation[i];
|
radiation::radiationModel& rad = radiation[i];
|
||||||
|
|
||||||
|
IOMRFZoneList& MRF = MRFfluid[i];
|
||||||
fv::IOoptionList& fvOptions = fluidFvOptions[i];
|
fv::IOoptionList& fvOptions = fluidFvOptions[i];
|
||||||
|
|
||||||
const dimensionedScalar initialMass
|
const dimensionedScalar initialMass
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(U)
|
fvm::ddt(U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(U)
|
||||||
+ turbulence->divDevReff(U)
|
+ turbulence->divDevReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(U)
|
fvOptions(U)
|
||||||
|
|||||||
@ -15,7 +15,7 @@ surfaceScalarField phiHbyA
|
|||||||
+ rAUf*fvc::ddtCorr(U, phi)
|
+ rAUf*fvc::ddtCorr(U, phi)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
adjustPhi(phiHbyA, U, p);
|
adjustPhi(phiHbyA, U, p);
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ setSnGrad<fixedFluxPressureFvPatchScalarField>
|
|||||||
p.boundaryField(),
|
p.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,8 @@ surfaceScalarField phiHbyA
|
|||||||
+ rAUf*fvc::ddtCorr(U, Uf)
|
+ rAUf*fvc::ddtCorr(U, Uf)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
if (p.needReference())
|
if (p.needReference())
|
||||||
{
|
{
|
||||||
fvc::makeRelative(phiHbyA, U);
|
fvc::makeRelative(phiHbyA, U);
|
||||||
@ -22,6 +24,17 @@ if (p.needReference())
|
|||||||
fvc::makeAbsolute(phiHbyA, U);
|
fvc::makeAbsolute(phiHbyA, U);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
|
(
|
||||||
|
p.boundaryField(),
|
||||||
|
(
|
||||||
|
phiHbyA.boundaryField()
|
||||||
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
|
);
|
||||||
|
|
||||||
|
// Non-orthogonal pressure corrector loop
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
fvScalarMatrix pEqn
|
fvScalarMatrix pEqn
|
||||||
|
|||||||
@ -39,6 +39,7 @@ Description
|
|||||||
#include "pimpleControl.H"
|
#include "pimpleControl.H"
|
||||||
#include "CorrectPhi.H"
|
#include "CorrectPhi.H"
|
||||||
#include "fvIOoptionList.H"
|
#include "fvIOoptionList.H"
|
||||||
|
#include "fixedFluxPressureFvPatchScalarField.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -53,6 +54,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
#include "createUf.H"
|
#include "createUf.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
#include "CourantNo.H"
|
#include "CourantNo.H"
|
||||||
|
|||||||
@ -39,8 +39,6 @@ Description
|
|||||||
#include "turbulentTransportModel.H"
|
#include "turbulentTransportModel.H"
|
||||||
#include "pimpleControl.H"
|
#include "pimpleControl.H"
|
||||||
#include "fvIOoptionList.H"
|
#include "fvIOoptionList.H"
|
||||||
#include "IOporosityModelList.H"
|
|
||||||
#include "IOMRFZoneList.H"
|
|
||||||
#include "fixedFluxPressureFvPatchScalarField.H"
|
#include "fixedFluxPressureFvPatchScalarField.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
@ -54,6 +52,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
// Momentum predictor
|
// Momentum predictor
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(U)
|
||||||
+ turbulence->divDevReff(U)
|
+ turbulence->divDevReff(U)
|
||||||
==
|
==
|
||||||
fvOptions(U)
|
fvOptions(U)
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
HbyA = rAU*UEqn().H();
|
HbyA = rAU*UEqn().H();
|
||||||
|
|
||||||
surfaceScalarField phiHbyA("phiHbyA", fvc::interpolate(HbyA) & mesh.Sf());
|
surfaceScalarField phiHbyA("phiHbyA", fvc::interpolate(HbyA) & mesh.Sf());
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
adjustPhi(phiHbyA, U, p);
|
adjustPhi(phiHbyA, U, p);
|
||||||
|
|
||||||
tmp<volScalarField> rAtU(rAU);
|
tmp<volScalarField> rAtU(rAU);
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
// Construct the Momentum equation
|
// Construct the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
|||||||
@ -1,6 +1,3 @@
|
|||||||
IOMRFZoneList MRF(mesh);
|
|
||||||
MRF.correctBoundaryVelocity(U);
|
|
||||||
|
|
||||||
IOporosityModelList pZones(mesh);
|
IOporosityModelList pZones(mesh);
|
||||||
Switch pressureImplicitPorosity(false);
|
Switch pressureImplicitPorosity(false);
|
||||||
|
|
||||||
@ -35,7 +35,6 @@ Description
|
|||||||
#include "singlePhaseTransportModel.H"
|
#include "singlePhaseTransportModel.H"
|
||||||
#include "turbulentTransportModel.H"
|
#include "turbulentTransportModel.H"
|
||||||
#include "simpleControl.H"
|
#include "simpleControl.H"
|
||||||
#include "IOMRFZoneList.H"
|
|
||||||
#include "IOporosityModelList.H"
|
#include "IOporosityModelList.H"
|
||||||
#include "fvIOoptionList.H"
|
#include "fvIOoptionList.H"
|
||||||
|
|
||||||
@ -50,8 +49,9 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
|
#include "createPorousZones.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createZones.H"
|
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -46,6 +46,7 @@ int main(int argc, char *argv[])
|
|||||||
simpleControl simple(mesh);
|
simpleControl simple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho.dimensionedInternalField()*g
|
rho.dimensionedInternalField()*g
|
||||||
|
|||||||
@ -58,6 +58,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
|
|||||||
@ -18,7 +18,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -51,7 +51,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
parcels.SU(U)
|
parcels.SU(U)
|
||||||
|
|||||||
@ -18,7 +18,7 @@ surfaceScalarField phiHbyA
|
|||||||
+ phig
|
+ phig
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
// Update the fixedFluxPressure BCs to ensure flux consistency
|
// Update the fixedFluxPressure BCs to ensure flux consistency
|
||||||
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
setSnGrad<fixedFluxPressureFvPatchScalarField>
|
||||||
@ -26,7 +26,7 @@ setSnGrad<fixedFluxPressureFvPatchScalarField>
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
*rho.boundaryField()
|
*rho.boundaryField()
|
||||||
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rhorAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|||||||
@ -53,6 +53,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
|
|||||||
@ -57,6 +57,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRDeltaT.H"
|
#include "createRDeltaT.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho.dimensionedInternalField()*g
|
rho.dimensionedInternalField()*g
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
fvScalarMatrix pDDtEqn
|
fvScalarMatrix pDDtEqn
|
||||||
(
|
(
|
||||||
|
|||||||
@ -55,6 +55,7 @@ int main(int argc, char *argv[])
|
|||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::div(phi, U)
|
fvm::div(phi, U)
|
||||||
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho.dimensionedInternalField()*g
|
rho.dimensionedInternalField()*g
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
fvc::interpolate(rho)*(fvc::interpolate(HbyA) & mesh.Sf())
|
fvc::interpolate(rho)*(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (simple.correctNonOrthogonal())
|
while (simple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -56,6 +56,7 @@ int main(int argc, char *argv[])
|
|||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
tmp<fvVectorMatrix> UEqn
|
tmp<fvVectorMatrix> UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(phi, U)
|
||||||
+ fvm::div(phi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
rho.dimensionedInternalField()*g
|
rho.dimensionedInternalField()*g
|
||||||
|
|||||||
@ -26,7 +26,7 @@ if (pimple.transonic())
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -59,7 +59,7 @@ else
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -27,7 +27,7 @@ if (pimple.transonic())
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phid, psi, U);
|
fvc::makeRelative(phid, psi, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(psi), phid);
|
MRF.makeRelative(fvc::interpolate(psi), phid);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
@ -59,7 +59,7 @@ else
|
|||||||
);
|
);
|
||||||
|
|
||||||
fvc::makeRelative(phiHbyA, rho, U);
|
fvc::makeRelative(phiHbyA, rho, U);
|
||||||
fvOptions.makeRelative(fvc::interpolate(rho), phiHbyA);
|
MRF.makeRelative(fvc::interpolate(rho), phiHbyA);
|
||||||
|
|
||||||
while (pimple.correctNonOrthogonal())
|
while (pimple.correctNonOrthogonal())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -56,6 +56,7 @@ int main(int argc, char *argv[])
|
|||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
|
|||||||
@ -54,6 +54,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createRhoUf.H"
|
#include "createRhoUf.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
|
|||||||
@ -52,6 +52,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "readGravitationalAcceleration.H"
|
#include "readGravitationalAcceleration.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "createClouds.H"
|
#include "createClouds.H"
|
||||||
#include "createRadiationModel.H"
|
#include "createRadiationModel.H"
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
// Solve the Momentum equation
|
// Solve the Momentum equation
|
||||||
|
|
||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(rhoPhi, U)
|
||||||
+ fvm::div(rhoPhi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ fvc::div(UdmModel.tauDm())
|
+ fvc::div(UdmModel.tauDm())
|
||||||
+ turbulence->divDevRhoReff(U)
|
+ turbulence->divDevRhoReff(U)
|
||||||
==
|
==
|
||||||
|
|||||||
@ -58,6 +58,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
|
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
(fvc::interpolate(HbyA) & mesh.Sf())
|
(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
+ fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, phi)
|
+ fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, phi)
|
||||||
);
|
);
|
||||||
fvOptions.makeRelative(phiHbyA);
|
MRF.makeRelative(phiHbyA);
|
||||||
adjustPhi(phiHbyA, U, p_rgh);
|
adjustPhi(phiHbyA, U, p_rgh);
|
||||||
|
|
||||||
surfaceScalarField phig
|
surfaceScalarField phig
|
||||||
@ -29,7 +29,7 @@
|
|||||||
p_rgh.boundaryField(),
|
p_rgh.boundaryField(),
|
||||||
(
|
(
|
||||||
phiHbyA.boundaryField()
|
phiHbyA.boundaryField()
|
||||||
- fvOptions.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
- MRF.relative(mesh.Sf().boundaryField() & U.boundaryField())
|
||||||
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
)/(mesh.magSf().boundaryField()*rAUf.boundaryField())
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -63,6 +63,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "correctPhi.H"
|
#include "correctPhi.H"
|
||||||
#include "CourantNo.H"
|
#include "CourantNo.H"
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
MRF.correctBoundaryVelocity(U);
|
||||||
|
|
||||||
fvVectorMatrix UEqn
|
fvVectorMatrix UEqn
|
||||||
(
|
(
|
||||||
fvm::ddt(rho, U)
|
fvm::ddt(rho, U) + fvm::div(rhoPhi, U)
|
||||||
+ fvm::div(rhoPhi, U)
|
+ MRF.DDt(rho, U)
|
||||||
+ turbulence->divDevRhoReff(rho, U)
|
+ turbulence->divDevRhoReff(rho, U)
|
||||||
==
|
==
|
||||||
fvOptions(rho, U)
|
fvOptions(rho, U)
|
||||||
|
|||||||
@ -58,6 +58,7 @@ int main(int argc, char *argv[])
|
|||||||
pimpleControl pimple(mesh);
|
pimpleControl pimple(mesh);
|
||||||
|
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
|
|
||||||
|
|||||||
@ -11,6 +11,7 @@
|
|||||||
(fvc::interpolate(HbyA) & mesh.Sf())
|
(fvc::interpolate(HbyA) & mesh.Sf())
|
||||||
+ fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, Uf)
|
+ fvc::interpolate(rho*rAU)*fvc::ddtCorr(U, Uf)
|
||||||
);
|
);
|
||||||
|
MRF.makeRelative(phiHbyA);
|
||||||
|
|
||||||
if (p_rgh.needReference())
|
if (p_rgh.needReference())
|
||||||
{
|
{
|
||||||
|
|||||||
@ -62,6 +62,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "initContinuityErrs.H"
|
#include "initContinuityErrs.H"
|
||||||
#include "createFields.H"
|
#include "createFields.H"
|
||||||
|
#include "createMRF.H"
|
||||||
#include "createFvOptions.H"
|
#include "createFvOptions.H"
|
||||||
#include "readTimeControls.H"
|
#include "readTimeControls.H"
|
||||||
#include "correctPhi.H"
|
#include "correctPhi.H"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user