1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | foam-extend: Open Source CFD
4 \\ / O peration | Version: 3.2
5 \\ / A nd | Web: http://www.foam-extend.org
6 \\/ M anipulation | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
9 This file is part of foam-extend.
11 foam-extend is free software: you can redistribute it and/or modify it
12 under the terms of the GNU General Public License as published by the
13 Free Software Foundation, either version 3 of the License, or (at your
14 option) any later version.
16 foam-extend is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 General Public License for more details.
21 You should have received a copy of the GNU General Public License
22 along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
25 Point of the binary tree.
27 \*---------------------------------------------------------------------------*/
32 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
35 #include "dictionary.H"
37 #include "scalarField.H"
44 /*---------------------------------------------------------------------------*\
45 Class chemPoint Declaration
46 \*---------------------------------------------------------------------------*/
52 //- Reference to the node in the binary tree
59 //- Number of times the element has been used
62 //- Vector storing the composition, temperature and pressure
65 //- Reaction mapping for v0
68 //- Ellipsoid of accuracy
71 //- Ellipsoid of accuracy for the solution
72 scalarField solutionsEOA_;
74 //- tolerance for the Ellipsoid of accuracy
77 //- Use logarithm of temperature
80 //- Time step, stored but not actually used
83 //- Ellipsoid of accuracy for the time step
91 //- Construct from components
94 const scalarField& v0,
96 const scalarField& tolerances,
97 const scalarField& tolerancesSolutions,
103 //- Construct from components and reference to a binary node
106 const scalarField& v0,
107 const scalarField& r,
108 const scalarField& tolerances,
109 const scalarField& tolerancesSolutions,
110 const scalar& absErr,
112 const scalar& deltaT,
116 //- Construct from another chemPoint and reference to a binary node
123 //- Construct from another chemPoint
132 inline label& nUsed()
137 inline const label& nUsed() const
142 inline scalarField& v0()
147 inline const scalarField& v0() const
152 inline scalarField& r()
157 inline const scalarField& r() const
162 inline scalarField& EOA()
167 inline const scalarField& EOA() const
172 inline scalarField& solutionsEOA()
174 return solutionsEOA_;
177 inline const scalarField& solutionsEOA() const
179 return solutionsEOA_;
182 inline const scalar& absErr() const
187 inline Switch& logT()
192 inline const Switch& logT() const
197 inline binaryNode* node()
202 inline scalar& deltaT()
207 inline const scalar& deltaT() const
212 inline scalar& timeEOA()
217 inline const scalar& timeEOA() const
225 // const scalarField& point,
226 // const scalarField& scaleFactor,
230 // Is the point in the ellipsoid of accuracy?
233 const scalarField& point,
234 const scalarField& Wi,
236 const scalar& deltaT,
237 const scalarField& scaleFactor
240 // Grow the ellipsoid of accuracy?
243 const scalarField& v0,
244 const scalarField& Wi,
246 const scalarField& v,
250 // Check if the new solution is in the ellipsoid of accuracy?
253 const scalarField& v0,
254 const scalarField& v,
255 const scalarField& Wi,
259 const scalar& deltaT,
260 const scalarField& tolerance
263 //- Set free the point from its node, used for replacing
264 // in the binary tree
267 // clear all the stored data
272 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
274 } // End namespace Foam
276 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
280 // ************************************************************************* //