FreeFOAM The Cross-Platform CFD Toolkit
temperatureAndPressure.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 | Copyright (C) 2008-2010 OpenCFD Ltd.
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  temperatureAndPressure.H
26 
27 Description
28  Accumulates values for temperature and pressure measurement, and
29  calculates and outputs the average values at output times.
30  Requires temperatureAndPressureVariables.H to be declared before the
31  timeloop.
32 
33 \*---------------------------------------------------------------------------*/
34 
36 
38 
40 
42 
44 
46 
48 
50 
51 if (runTime.outputTime())
52 {
53  if (accumulatedNMols)
54  {
55  Info << "calculating averages" << endl;
56 
58  (
59  2.0/(moleculeCloud::kb * accumulatedDOFs)
60  *
61  (
63  -
65  )
66  );
67 
69  (
70  (
71  (accumulatedNMols/nAveragingSteps)
72  *
73  moleculeCloud::kb * averageTemperature
74  +
75  accumulatedTotalrDotfSum/(6.0 * nAveragingSteps)
76  )
77  /
79  );
80 
81  Info << "----------------------------------------" << nl
82  << "Averaged properties" << nl
83  << "Average |velocity| = "
85  << "Average temperature = " << averageTemperature << nl
86  << "Average pressure = " << averagePressure << nl
87  << "----------------------------------------" << endl;
88  }
89  else
90  {
91  Info<< "Not averaging temperature and pressure: "
92  << "no molecules in system" << endl;
93  }
94 
95  accumulatedTotalLinearMomentum = vector::zero;
96 
98 
100 
102 
103  accumulatedTotalPE = 0.0;
104 
106 
107  accumulatedNMols = 0;
108 
109  accumulatedDOFs = 0;
110 }
111 
112 
113 // ************************ vim: set sw=4 sts=4 et: ************************ //