Info<< "Reading field pd\n" << endl; volScalarField pd ( IOobject ( "pd", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); Info<< "Reading field alpha1\n" << endl; volScalarField alpha1 ( IOobject ( "alpha1", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); Info<< "Reading field U\n" << endl; volVectorField U ( IOobject ( "U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); # include "createPhi.H" Info<< "Reading transportProperties\n" << endl; twoPhaseMixture twoPhaseProperties(U, phi, "alpha1"); const dimensionedScalar& rho1 = twoPhaseProperties.rho1(); const dimensionedScalar& rho2 = twoPhaseProperties.rho2(); // Need to store rho for ddt(rho, U) volScalarField rho ( IOobject ( "rho", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT ), alpha1*rho1 + (scalar(1) - alpha1)*rho2, alpha1.boundaryField().types() ); rho.oldTime(); // Mass flux // Initialisation does not matter because rhoPhi is reset after the // alpha1 solution before it is used in the U equation. surfaceScalarField rhoPhi ( IOobject ( "rho*phi", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), rho1*phi ); Info<< "Calculating field g.h\n" << endl; volScalarField gh("gh", g & mesh.C()); surfaceScalarField ghf("gh", g & mesh.Cf()); volScalarField p ( IOobject ( "p", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE ), pd + rho*gh ); // Set reference cell taking into account whether implicit or explicit // overset aglorithm is used for field p. label pRefCell = 0; scalar pRefValue = 0.0; om.setRefCell(p, pimple.dict(), pRefCell, pRefValue); mesh.schemesDict().setFluxRequired(pd.name()); mesh.schemesDict().setFluxRequired(alpha1.name()); // Construct interface from alpha1 distribution interfaceProperties interface(alpha1, U, twoPhaseProperties); // Construct incompressible turbulence model autoPtr turbulence ( incompressible::turbulenceModel::New(U, phi, twoPhaseProperties) ); Info<< "Reading field rAU if present\n" << endl; volScalarField rAU ( IOobject ( "rAU", runTime.timeName(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE ), mesh, runTime.deltaT()/rho1, zeroGradientFvPatchScalarField::typeName ); # include "writeOversetMasks.H"