OpenFOAM: API Guide
v2112
The open source CFD toolbox
CourantNo.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | www.openfoam.com
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
Copyright (C) 2011-2016 OpenFOAM Foundation
9
-------------------------------------------------------------------------------
10
License
11
This file is part of OpenFOAM.
12
13
OpenFOAM is free software: you can redistribute it and/or modify it
14
under the terms of the GNU General Public License as published by
15
the Free Software Foundation, either version 3 of the License, or
16
(at your option) any later version.
17
18
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21
for more details.
22
23
You should have received a copy of the GNU General Public License
24
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26
Global
27
CourantNo
28
29
Description
30
Calculates and outputs the mean and maximum Courant Numbers.
31
32
\*---------------------------------------------------------------------------*/
33
34
scalar
CoNum
= 0.0;
35
scalar
meanCoNum
= 0.0;
36
scalar
acousticCoNum
= 0.0;
37
38
if
(
mesh
.nInternalFaces())
39
{
40
scalarField
sumPhi
41
(
42
fvc::surfaceSum
(
mag
(
phi
))().primitiveField()
43
);
44
45
CoNum
= 0.5*
gMax
(sumPhi/
mesh
.V().field())*
runTime
.deltaTValue();
46
47
meanCoNum
=
48
0.5*(
gSum
(sumPhi)/
gSum
(
mesh
.V().field()))*
runTime
.deltaTValue();
49
50
acousticCoNum
= 0.5*
gMax
51
(
52
fvc::surfaceSum
53
(
54
fvc::interpolate
(scalar(1)/
sqrt
(
psi
))*
mesh
.magSf()
55
)().primitiveField()/
mesh
.V().field()
56
)*
runTime
.deltaTValue();
57
}
58
59
Info
<<
"phi Courant Number mean: "
<<
meanCoNum
60
<<
" max: "
<<
CoNum
61
<<
" acoustic max: "
<<
acousticCoNum
62
<<
endl
;
63
64
// ************************************************************************* //
acousticCoNum
scalar acousticCoNum
Definition:
CourantNo.H:33
runTime
engineTime & runTime
Definition:
createEngineTime.H:13
Foam::fvc::surfaceSum
tmp< GeometricField< Type, fvPatchField, volMesh > > surfaceSum(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
Definition:
fvcSurfaceIntegrate.C:135
Foam::scalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Definition:
primitiveFieldsFwd.H:52
CoNum
scalar CoNum
Definition:
CourantNo.H:31
Foam::endl
Ostream & endl(Ostream &os)
Add newline and flush stream.
Definition:
Ostream.H:369
Foam::gSum
Type gSum(const FieldField< Field, Type > &f)
Definition:
FieldFieldFunctions.C:594
meanCoNum
scalar meanCoNum
Definition:
CourantNo.H:32
Foam::Info
messageStream Info
Information stream (stdout output on master, null elsewhere)
phi
surfaceScalarField & phi
Definition:
setRegionFluidFields.H:8
mesh
dynamicFvMesh & mesh
Definition:
createDynamicFvMesh.H:6
Foam::sqrt
dimensionedScalar sqrt(const dimensionedScalar &ds)
Definition:
dimensionedScalar.C:144
Foam::mag
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
psi
const volScalarField & psi
Definition:
createFieldRefs.H:1
Foam::fac::interpolate
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.
Foam::gMax
Type gMax(const FieldField< Field, Type > &f)
Definition:
FieldFieldFunctions.C:592
applications
solvers
multiphase
cavitatingFoam
CourantNo.H
Generated by
1.8.17
OPENFOAM® is a registered
trademark
of OpenCFD Ltd.