NSRDSfunc1.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-2017 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::NSRDSfunc1
28
29Description
30 NSRDS function number 101
31
32 Source:
33 \verbatim
34 NSRDS - AICHE
35 Data Compilation Tables
36 of Properties of
37 Pure Compounds
38
39 Design Institute for Physical Property Data
40 American Institute of Chemical Engineers
41 345 East 47th Street
42 New York, New York 10017
43
44 National Standard Reference Data System
45 American Institute of Chemical Engineers
46
47 T.E. Daubert - R.P. Danner
48
49 Department of Chemical Engineering
50 The Pennsylvania State University
51 University Park, PA 16802
52 \endverbatim
53
54\*---------------------------------------------------------------------------*/
55
56#ifndef NSRDSfunc1_H
57#define NSRDSfunc1_H
58
60
61// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
62
63namespace Foam
64{
65
66/*---------------------------------------------------------------------------*\
67 Class NSRDSfunc1 Declaration
68\*---------------------------------------------------------------------------*/
70class NSRDSfunc1
71:
73{
74 // Private data
75
76 // NSRDS function 101 coefficients
77 scalar a_, b_, c_, d_, e_;
78
79
80public:
81
82 //- Runtime type information
83 TypeName("NSRDSfunc1");
84
85
86 // Constructors
87
88 //- Construct from components
90 (
91 const scalar a,
92 const scalar b,
93 const scalar c,
94 const scalar d,
95 const scalar e
96 );
97
98 //- Construct from dictionary
100
101
102 // Member Functions
103
104 //- Evaluate the function and return the result
105 scalar f(scalar, scalar T) const
106 {
107 return exp(a_ + b_/T + c_*log(T) + d_*pow(T, e_));
108 }
109
110 //- Write the function coefficients
111 void writeData(Ostream& os) const
112 {
113 os << a_ << token::SPACE
114 << b_ << token::SPACE
115 << c_ << token::SPACE
116 << d_ << token::SPACE
117 << e_;
118 }
119
120
121 // Ostream Operator
123 friend Ostream& operator<<(Ostream& os, const NSRDSfunc1& f)
124 {
125 f.writeData(os);
126 return os;
127 }
128};
129
130
131// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
132
133} // End namespace Foam
134
135// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
136
137#endif
138
139// ************************************************************************* //
NSRDS function number 101.
Definition: NSRDSfunc1.H:72
TypeName("NSRDSfunc1")
Runtime type information.
scalar f(scalar, scalar T) const
Evaluate the function and return the result.
Definition: NSRDSfunc1.H:104
void writeData(Ostream &os) const
Write the function coefficients.
Definition: NSRDSfunc1.H:110
friend Ostream & operator<<(Ostream &os, const NSRDSfunc1 &f)
Definition: NSRDSfunc1.H:122
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:62
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
Abstract base class for thermo-physical functions.
@ SPACE
Space [isspace].
Definition: token.H:125
const volScalarField & T
OBJstream os(runTime.globalPath()/outputName)
Namespace for OpenFOAM.
dimensionedScalar exp(const dimensionedScalar &ds)
dimensionedScalar log(const dimensionedScalar &ds)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
dictionary dict
volScalarField & b
Definition: createFields.H:27
volScalarField & e
Definition: createFields.H:11
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73