OpenFOAM
6
The OpenFOAM Foundation
applications
solvers
combustion
fireFoam
setMultiRegionDeltaT.H
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration | Website: https://openfoam.org
5
\\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
6
\\/ M anipulation |
7
-------------------------------------------------------------------------------
8
License
9
This file is part of OpenFOAM.
10
11
OpenFOAM is free software: you can redistribute it and/or modify it
12
under the terms of the GNU General Public License as published by
13
the Free Software Foundation, either version 3 of the License, or
14
(at your option) any later version.
15
16
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19
for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23
24
Global
25
setMultiRegionDeltaT
26
27
Description
28
Reset the timestep to maintain a constant maximum Courant numbers.
29
Reduction of time-step is immediate, but increase is damped to avoid
30
unstable oscillations.
31
32
\*---------------------------------------------------------------------------*/
33
34
if
(
adjustTimeStep
)
35
{
36
if
(
CoNum
== -great)
37
{
38
CoNum
= small;
39
}
40
41
if
(
DiNum
== -great)
42
{
43
DiNum
= small;
44
}
45
46
47
const
scalar TFactorFluid =
maxCo
/(
CoNum
+ small);
48
const
scalar TFactorSolid =
maxDi
/(
DiNum
+ small);
49
const
scalar TFactorFilm =
maxCo
/(
surfaceFilm
.CourantNumber() + small);
50
51
const
scalar dt0 =
runTime
.deltaTValue();
52
53
runTime
.setDeltaT
54
(
55
min
56
(
57
dt0*
min
(
min
(TFactorFluid,
min
(TFactorFilm, TFactorSolid)), 1.2),
58
maxDeltaT
59
)
60
);
61
}
62
63
64
// ************************************************************************* //
DiNum
scalar DiNum
Definition:
solidRegionDiffusionNo.H:1
runTime
engineTime & runTime
Definition:
createEngineTime.H:13
maxDeltaT
maxDeltaT
Definition:
readEngineTimeControls.H:3
CoNum
scalar CoNum
Definition:
compressibleCourantNo.H:29
surfaceFilm
regionModels::surfaceFilmModel & surfaceFilm
Definition:
createFieldRefs.H:3
maxCo
scalar maxCo
Definition:
createTimeControls.H:32
Foam::min
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
adjustTimeStep
bool adjustTimeStep
Definition:
createTimeControls.H:29
maxDi
scalar maxDi
Definition:
readPyrolysisTimeControls.H:29
Generated by
1.8.13