OpenFOAM
4.1
The OpenFOAM Foundation
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
applications
solvers
combustion
coldEngineFoam
coldEngineFoam.C
Go to the documentation of this file.
1
/*---------------------------------------------------------------------------*\
2
========= |
3
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4
\\ / O peration |
5
\\ / A nd | Copyright (C) 2011-2016 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
Application
25
engineFoam
26
27
Description
28
Solver for cold-flow in internal combustion engines.
29
30
\*---------------------------------------------------------------------------*/
31
32
#include "
fvCFD.H
"
33
#include "
engineTime.H
"
34
#include "
engineMesh.H
"
35
#include "
psiThermo.H
"
36
#include "
turbulentFluidThermoModel.H
"
37
#include "
OFstream.H
"
38
#include "
fvOptions.H
"
39
#include "
pimpleControl.H
"
40
41
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
42
43
int
main(
int
argc,
char
*argv[])
44
{
45
#define CREATE_TIME createEngineTime.H
46
#define CREATE_MESH createEngineMesh.H
47
#include "
postProcess.H
"
48
49
#include "
setRootCase.H
"
50
#include "
createEngineTime.H
"
51
#include "
createEngineMesh.H
"
52
#include "createControl.H"
53
#include "createFields.H"
54
#include "createFieldRefs.H"
55
#include "
createFvOptions.H
"
56
#include "
createRhoUf.H
"
57
#include "initContinuityErrs.H"
58
#include "readEngineTimeControls.H"
59
#include "compressibleCourantNo.H"
60
#include "setInitialDeltaT.H"
61
#include "startSummary.H"
62
63
turbulence
->validate();
64
65
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
66
67
Info
<<
"\nStarting time loop\n"
<<
endl
;
68
69
while
(runTime.run())
70
{
71
#include "readEngineTimeControls.H"
72
#include "compressibleCourantNo.H"
73
#include "setDeltaT.H"
74
75
runTime++;
76
77
Info
<<
"Crank angle = "
<< runTime.theta() <<
" CA-deg"
78
<<
endl
;
79
80
mesh
.move();
81
82
#include "rhoEqn.H"
83
84
// --- Pressure-velocity PIMPLE corrector loop
85
while
(
pimple
.loop())
86
{
87
#include "UEqn.H"
88
89
// --- Pressure corrector loop
90
while
(
pimple
.correct())
91
{
92
#include "EEqn.H"
93
#include "pEqn.H"
94
}
95
96
if
(
pimple
.turbCorr())
97
{
98
turbulence
->correct();
99
}
100
}
101
102
runTime.write();
103
104
#include "logSummary.H"
105
106
Info
<<
"ExecutionTime = "
<< runTime.elapsedCpuTime() <<
" s"
107
<<
" ClockTime = "
<< runTime.elapsedClockTime() <<
" s"
108
<<
nl
<<
endl
;
109
}
110
111
Info
<<
"End\n"
<<
endl
;
112
113
return
0;
114
}
115
116
117
// ************************************************************************* //
turbulence
autoPtr< compressible::turbulenceModel > turbulence
Definition:
createFields.H:23
fvCFD.H
createFvOptions.H
psiThermo.H
pimple
const dictionary & pimple
Definition:
readFluidMultiRegionPIMPLEControls.H:1
Foam::endl
Ostream & endl(Ostream &os)
Add newline and flush stream.
Definition:
Ostream.H:253
engineTime.H
createEngineMesh.H
turbulentFluidThermoModel.H
mesh
dynamicFvMesh & mesh
Definition:
createDynamicFvMesh.H:18
engineMesh.H
createEngineTime.H
OFstream.H
Foam::nl
static const char nl
Definition:
Ostream.H:262
fvOptions.H
setRootCase.H
pimpleControl.H
Foam::Info
messageStream Info
postProcess.H
Execute application functionObjects to post-process existing results.
createRhoUf.H
Creates and initialises the velocity velocity field rhoUf.
Generated by
1.8.11