48int main(
int argc,
char *argv[])
52 "Transient solver for incompressible, laminar flow"
53 " of Newtonian fluids in liquid film formulation."
59 #include "createFaMesh.H"
60 #include "readGravitationalAcceleration.H"
61 #include "readTransportProperties.H"
62 #include "createFaFields.H"
66 Info<<
"\nStarting time loop\n" <<
endl;
74 #include "setDeltaT.H"
82 phi2s = fac::interpolate(
h)*
phis;
90 + fam::Sp(0.0125*frictionFactor*
mag(
Us),
Us)
102 Us.correctBoundaryConditions();
105 (fac::interpolate(
Us) &
aMesh.Le())
106 - fac::interpolate(1.0/(
rhol*UsA))*fac::lnGrad(ps*
h)*
aMesh.magLe()
107 + fac::interpolate(ps/(
rhol*UsA))*fac::lnGrad(
h)*
aMesh.magLe();
128 h.primitiveFieldRef() =
max
133 fac::average(
max(
h,
h0))().primitiveField()
134 *
pos(
h0.value() -
h.primitiveField())
140 ps.correctBoundaryConditions();
142 Us -= (1.0/(
rhol*UsA))*fac::grad(ps*
h)
143 - (ps/(
rhol*UsA))*fac::grad(
h);
144 Us.correctBoundaryConditions();
149 vsm.mapToVolume(
h,
H.boundaryFieldRef());
150 vsm.mapToVolume(
Us,
U.boundaryFieldRef());
155 runTime.printExecutionTime(Info);
Template specialisation for scalar faMatrix.
volSurfaceMapping vsm(aMesh)
volScalarField H(IOobject("H", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), mesh, dimensionedScalar(dimLength, Zero))
Read the control parameters used by setDeltaT.
const dimensionedScalar sigma
Stefan-Boltzmann constant: default SI units: [W/m2/K4].
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
dimensionedScalar pos(const dimensionedScalar &ds)
messageStream Info
Information stream (stdout output on master, null elsewhere)
Ostream & endl(Ostream &os)
Add newline and flush stream.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
GeometricField< scalar, faPatchField, areaMesh > areaScalarField
faMatrix< vector > faVectorMatrix
constexpr char nl
The newline '\n' character (0x0a)
loopControl iters(runTime, aMesh.solutionDict(), "solution")
Read the control parameters used by setDeltaT.
dimensionedScalar rhol("rhol", dimDensity, transportProperties)
edgeScalarField phis(IOobject("phis", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), linearEdgeInterpolate(Us) &aMesh.Le())
Calculates and outputs the mean and maximum Courant Numbers for the Finite Area method.