Go to the documentation of this file.
63 int main(
int argc,
char *argv[])
67 "Solver for two incompressible, isothermal immiscible fluids with"
69 "Uses VOF (volume of fluid) phase-fraction based interface capturing,"
70 " with optional mesh motion and mesh topology changes including"
71 " adaptive re-meshing."
79 #include "createDyMControls.H"
80 #include "initContinuityErrs.H"
81 #include "createFields.H"
90 IOobject::READ_IF_PRESENT,
98 #include "CourantNo.H"
99 #include "setInitialDeltaT.H"
105 Info<<
"\nStarting time loop\n" <<
endl;
116 #include "CourantNo.H"
117 #include "setDeltaT.H"
128 scalar timeBeforeMeshUpdate =
runTime.elapsedCpuTime();
134 Info<<
"Execution time for mesh.update() = "
135 <<
runTime.elapsedCpuTime() - timeBeforeMeshUpdate
147 #include "correctPhi.H"
159 #include "alphaControls.H"
175 #include "alphaEqnSubCycle.H"
CMULES: Multidimensional universal limiter for explicit corrected implicit solution.
const surfaceScalarField & ghf
tmp< volScalarField > rAU
Info<< "Reading field U\n"<< endl;volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);volScalarField rho(IOobject("rho", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), thermo.rho());volVectorField rhoU(IOobject("rhoU", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *U);volScalarField rhoE(IOobject("rhoE", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *(e+0.5 *magSqr(U)));surfaceScalarField pos(IOobject("pos", runTime.timeName(), mesh), mesh, dimensionedScalar("pos", dimless, 1.0));surfaceScalarField neg(IOobject("neg", runTime.timeName(), mesh), mesh, dimensionedScalar("neg", dimless, -1.0));surfaceScalarField phi("phi", fvc::flux(rhoU));Info<< "Creating turbulence model\n"<< endl;autoPtr< compressible::turbulenceModel > turbulence(compressible::turbulenceModel::New(rho, U, phi, thermo))
static constexpr const zero Zero
Global zero (0)
interfaceProperties interface(alpha1, U, thermo->transportPropertiesDict())
autoPtr< surfaceVectorField > Uf
Ostream & endl(Ostream &os)
Add newline and flush stream.
Creates and initialises the velocity velocity field Uf.
const volScalarField & gh
tmp< GeometricField< Type, faPatchField, areaMesh > > div(const GeometricField< Type, faePatchField, edgeMesh > &ssf)
void makeRelative(surfaceScalarField &phi, const volVectorField &U)
Make the given flux relative.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
messageStream Info
Information stream (uses stdout - output is on the master only)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Execute application functionObjects to post-process existing results.
const uniformDimensionedVectorField & g
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
Calculates and outputs the mean and maximum Courant Numbers.
Info<< "Creating temperaturePhaseChangeTwoPhaseMixture\n"<< endl;autoPtr< temperaturePhaseChangeTwoPhaseMixture > mixture
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.