IDEA.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-2019 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 Class
25  Foam::IDEA
26 
27 Description
28  The IDEA fuel is constructed by adding 30% alphaMethylNaphthalene
29  with 70% n-decane.
30 
31  The new properties have been calculated by adding the values in these
32  proportions and making a least square fit, using the same NSRDS-eq.
33  so that Y = 0.3*Y_naphthalene + 0.7*Y_decane
34 
35  The valid Temperature range for n-decane is normally 243.51 - 617.70 K
36  and for the naphthalene it is 242.67 - 772.04 K
37  The least square fit was done in the interval 244 - 617 K
38 
39  The critical temperature was taken to be 618.074 K, since this
40  is the 'c'-value in the rho-equation, which corresponds to Tcrit,
41  This value was then used in the fit for the NSRDS6-eq, which uses Tcrit.
42  (important for the latent heat and surface tension)
43 
44  The molecular weights are 142.20 and 142.285 and for the IDEA fuel
45  it is thus 142.26 ( approximately 0.3*142.2 + 0.7*142.285 )
46 
47  Critical pressure was set to the lowest one (n-Decane)
48 
49  Critical volume... also the lowest one (naphthalene) 0.523 m^3/kmol
50 
51  Second Virial Coefficient is n-Decane
52 
53 SourceFiles
54  IDEA.C
55 
56 \*---------------------------------------------------------------------------*/
57 
58 #ifndef IDEA_H
59 #define IDEA_H
60 
61 #include "liquidProperties.H"
62 #include "NSRDSfunc0.H"
63 #include "NSRDSfunc1.H"
64 #include "NSRDSfunc2.H"
65 #include "NSRDSfunc3.H"
66 #include "NSRDSfunc4.H"
67 #include "NSRDSfunc5.H"
68 #include "NSRDSfunc6.H"
69 #include "NSRDSfunc7.H"
70 #include "APIdiffCoefFunc.H"
71 
72 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
73 
74 namespace Foam
75 {
76 
77 /*---------------------------------------------------------------------------*\
78  Class IDEA Declaration
79 \*---------------------------------------------------------------------------*/
80 
81 class IDEA
82 :
83  public liquidProperties
84 {
85  // Private Data
86 
87  NSRDSfunc5 rho_;
88  NSRDSfunc1 pv_;
89  NSRDSfunc6 hl_;
90  NSRDSfunc0 Cp_;
91  NSRDSfunc0 h_;
92  NSRDSfunc7 Cpg_;
93  NSRDSfunc4 B_;
94  NSRDSfunc1 mu_;
95  NSRDSfunc2 mug_;
96  NSRDSfunc0 kappa_;
97  NSRDSfunc2 kappag_;
98  NSRDSfunc6 sigma_;
99  APIdiffCoefFunc D_;
100 
101 
102 public:
104  friend class liquidProperties;
105 
106  //- Runtime type information
107  TypeName("IDEA");
108 
109 
110  // Constructors
111 
112  //- Construct null
113  IDEA();
114 
115  // Construct from components
116  IDEA
117  (
118  const liquidProperties& l,
119  const NSRDSfunc5& density,
120  const NSRDSfunc1& vapourPressure,
121  const NSRDSfunc6& heatOfVapourisation,
122  const NSRDSfunc0& heatCapacity,
123  const NSRDSfunc0& enthalpy,
124  const NSRDSfunc7& idealGasHeatCapacity,
125  const NSRDSfunc4& secondVirialCoeff,
126  const NSRDSfunc1& dynamicViscosity,
127  const NSRDSfunc2& vapourDynamicViscosity,
128  const NSRDSfunc0& thermalConductivity,
129  const NSRDSfunc2& vapourThermalConductivity,
130  const NSRDSfunc6& surfaceTension,
131  const APIdiffCoefFunc& vapourDiffussivity
132  );
133 
134  //- Construct from dictionary
135  IDEA(const dictionary& dict);
136 
137  //- Construct and return clone
138  virtual autoPtr<liquidProperties> clone() const
139  {
140  return autoPtr<liquidProperties>(new IDEA(*this));
141  }
142 
143 
144  // Member Functions
145 
146  //- Liquid density [kg/m^3]
147  inline scalar rho(scalar p, scalar T) const;
148 
149  //- Vapour pressure [Pa]
150  inline scalar pv(scalar p, scalar T) const;
151 
152  //- Heat of vapourisation [J/kg]
153  inline scalar hl(scalar p, scalar T) const;
154 
155  //- Liquid heat capacity [J/kg/K]
156  inline scalar Cp(scalar p, scalar T) const;
157 
158  //- Liquid Enthalpy [J/kg]
159  inline scalar h(scalar p, scalar T) const;
160 
161  //- Ideal gas heat capacity [J/kg/K]
162  inline scalar Cpg(scalar p, scalar T) const;
163 
164  //- Second Virial Coefficient [m^3/kg]
165  inline scalar B(scalar p, scalar T) const;
166 
167  //- Liquid viscosity [Pa s]
168  inline scalar mu(scalar p, scalar T) const;
169 
170  //- Vapour viscosity [Pa s]
171  inline scalar mug(scalar p, scalar T) const;
172 
173  //- Liquid thermal conductivity [W/m/K]
174  inline scalar kappa(scalar p, scalar T) const;
175 
176  //- Vapour thermal conductivity [W/m/K]
177  inline scalar kappag(scalar p, scalar T) const;
178 
179  //- Surface tension [N/m]
180  inline scalar sigma(scalar p, scalar T) const;
181 
182  //- Vapour diffussivity [m2/s]
183  inline scalar D(scalar p, scalar T) const;
184 
185  //- Vapour diffussivity [m2/s] with specified binary pair
186  inline scalar D(scalar p, scalar T, scalar Wb) const;
187 
188 
189  // I-O
190 
191  //- Write the function coefficients
192  void writeData(Ostream& os) const;
193 
194  //- Ostream Operator
195  friend Ostream& operator<<(Ostream& os, const IDEA& l);
196 };
197 
198 
199 Ostream& operator<<(Ostream& os, const IDEA& l);
200 
201 
202 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
203 
204 } // End namespace Foam
205 
206 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
207 
208 #include "IDEAI.H"
209 
210 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
211 
212 #endif
213 
214 // ************************************************************************* //
virtual autoPtr< liquidProperties > clone() const
Construct and return clone.
Definition: IDEA.H:137
IDEA()
Construct null.
Definition: IDEA.C:40
scalar mug(scalar p, scalar T) const
Vapour viscosity [Pa s].
Definition: IDEAI.H:74
dictionary dict
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition: dictionary.H:158
The IDEA fuel is constructed by adding 30% alphaMethylNaphthalene with 70% n-decane.
Definition: IDEA.H:80
NSRDS function number 102.
Definition: NSRDSfunc2.H:67
scalar kappa(scalar p, scalar T) const
Liquid thermal conductivity [W/m/K].
Definition: IDEAI.H:80
NSRDS-AICHE function number 107.
Definition: NSRDSfunc7.H:67
scalar mu(scalar p, scalar T) const
Liquid viscosity [Pa s].
Definition: IDEAI.H:68
friend Ostream & operator<<(Ostream &os, const IDEA &l)
Ostream Operator.
NSRDS function number 104.
Definition: NSRDSfunc4.H:67
scalar rho(scalar p, scalar T) const
Liquid density [kg/m^3].
Definition: IDEAI.H:26
The thermophysical properties of a liquid.
NSRDS function number 105.
Definition: NSRDSfunc5.H:67
An Ostream is an abstract base class for all output systems (streams, files, token lists...
Definition: Ostream.H:53
scalar kappag(scalar p, scalar T) const
Vapour thermal conductivity [W/m/K].
Definition: IDEAI.H:86
void writeData(Ostream &os) const
Write the function coefficients.
Definition: IDEA.C:160
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
scalar h(scalar p, scalar T) const
Liquid Enthalpy [J/kg].
Definition: IDEAI.H:50
scalar D(scalar p, scalar T) const
Vapour diffussivity [m2/s].
Definition: IDEAI.H:98
scalar Cpg(scalar p, scalar T) const
Ideal gas heat capacity [J/kg/K].
Definition: IDEAI.H:56
NSRDS function number 100.
Definition: NSRDSfunc0.H:67
scalar pv(scalar p, scalar T) const
Vapour pressure [Pa].
Definition: IDEAI.H:32
NSRDS function number 106.
Definition: NSRDSfunc6.H:67
TypeName("IDEA")
Runtime type information.
API function for vapour mass diffusivity.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: PtrList.H:52
volScalarField & p
scalar sigma(scalar p, scalar T) const
Surface tension [N/m].
Definition: IDEAI.H:92
scalar hl(scalar p, scalar T) const
Heat of vapourisation [J/kg].
Definition: IDEAI.H:38
NSRDS function number 101.
Definition: NSRDSfunc1.H:67
Namespace for OpenFOAM.
scalar B(scalar p, scalar T) const
Second Virial Coefficient [m^3/kg].
Definition: IDEAI.H:62
scalar Cp(scalar p, scalar T) const
Liquid heat capacity [J/kg/K].
Definition: IDEAI.H:44