68 int main(
int argc,
char *argv[])
72 "Solver for two compressible, non-isothermal, immiscible fluids" 73 " using VOF phase-fraction based interface capturing approach.\n" 74 "Supports dynamic mesh motions including overset cases." 84 #include "createFields.H" 91 #include "correctPhi.H" 96 #include "CourantNo.H" 97 #include "setInitialDeltaT.H" 105 Info<<
"\nStarting time loop\n" <<
endl;
113 #include "setRDeltaT.H" 117 #include "CourantNo.H" 118 #include "alphaCourantNo.H" 119 #include "setDeltaT.H" 131 scalar timeBeforeMeshUpdate =
runTime.elapsedCpuTime();
137 Info<<
"Execution time for mesh.update() = " 138 <<
runTime.elapsedCpuTime() - timeBeforeMeshUpdate
143 if (
mesh.topoChanging())
169 #include "alphaControls.H" 170 #include "compressibleAlphaEqnSubCycle.H"
Sets blocked cells mask field.
constexpr char nl
The newline '\n' character (0x0a)
tmp< GeometricField< Type, faPatchField, areaMesh > > div(const GeometricField< Type, faePatchField, edgeMesh > &ssf)
Info<< "Creating temperaturePhaseChangeTwoPhaseMixture\"<< endl;autoPtr< temperaturePhaseChangeTwoPhaseMixture > mixture
Ostream & endl(Ostream &os)
Add newline and flush stream.
Sets blocked cells mask field.
const surfaceScalarField & ghf
GeometricField< scalar, fvPatchField, volMesh > volScalarField
const volScalarField & psi2
Creates and initialises the velocity velocity field Uf.
const uniformDimensionedVectorField & g
Info<< "Reading field U\"<< 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\"<< endl;autoPtr< compressible::turbulenceModel > turbulence(compressible::turbulenceModel::New(rho, U, phi, thermo))
const volScalarField & psi1
Correct phi on new faces C-I faces.
Calculates and outputs the mean and maximum Courant Numbers.
tmp< surfaceScalarField > absolute(const tmp< surfaceScalarField > &tphi, const volVectorField &U)
Return the given relative flux in absolute form.
const volScalarField & gh
messageStream Info
Information stream (stdout output on master, null elsewhere)
Execute application functionObjects to post-process existing results.
void makeRelative(surfaceScalarField &phi, const volVectorField &U)
Make the given flux relative.
Provides functions smooth spread and sweep which use the FaceCellWave algorithm to smooth and redistr...
CMULES: Multidimensional universal limiter for explicit corrected implicit solution.
Adjust the balance of fluxes on the faces between interpolated and calculated to obey continuity...
tmp< surfaceScalarField > talphaPhi1Corr0