45 int main(
int argc,
char *argv[])
49 "Transient solver for inviscid shallow-water equations with rotation" 58 #include "createControl.H" 59 #include "createFields.H" 63 Info<<
"\nStarting time loop\n" <<
endl;
69 #include "CourantNo.H" 84 if (
pimple.momentumPredictor())
96 if (
mesh.nGeometricD() == 3)
98 hU -= (gHat & hU)*gHat;
99 hU.correctBoundaryConditions();
129 while (
pimple.correctNonOrthogonal())
138 hEqn.solve(
mesh.solver(
h.select(
pimple.finalInnerIter())));
140 if (
pimple.finalNonOrthogonalIter())
149 if (
mesh.nGeometricD() == 3)
151 hU -= (gHat & hU)*gHat;
154 hU.correctBoundaryConditions();
fvMatrix< scalar > fvScalarMatrix
tmp< surfaceScalarField > flux(const volVectorField &vvf)
Return the face-flux field obtained from the given volVectorField.
static tmp< GeometricField< Type, faePatchField, edgeMesh > > interpolate(const GeometricField< Type, faPatchField, areaMesh > &tvf, const edgeScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
constexpr char nl
The newline '\n' character (0x0a)
tmp< GeometricField< typename flux< Type >::type, fvsPatchField, surfaceMesh > > ddtCorr(const GeometricField< Type, fvPatchField, volMesh > &U, const GeometricField< Type, fvsPatchField, surfaceMesh > &Uf)
tmp< GeometricField< Type, faPatchField, areaMesh > > div(const GeometricField< Type, faePatchField, edgeMesh > &ssf)
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< GeometricField< Type, faPatchField, areaMesh > > ddt(const dimensioned< Type > dt, const faMesh &mesh)
GeometricField< vector, fvPatchField, volMesh > volVectorField
tmp< volScalarField > rAU
GeometricField< scalar, fvPatchField, volMesh > volScalarField
tmp< GeometricField< Type, faPatchField, areaMesh > > laplacian(const GeometricField< Type, faPatchField, areaMesh > &vf, const word &name)
volVectorField F(fluid.F())
const dimensionedScalar h
Planck constant.
fvMatrix< vector > fvVectorMatrix
messageStream Info
Information stream (stdout output on master, null elsewhere)
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
Execute application functionObjects to post-process existing results.
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > snGrad(const GeometricField< Type, fvPatchField, volMesh > &vf, const word &name)
tmp< GeometricField< typename outerProduct< vector, Type >::type, faPatchField, areaMesh >> grad(const GeometricField< Type, faePatchField, edgeMesh > &ssf)