Cantera  2.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TransportParams.h
Go to the documentation of this file.
1 /**
2  * @file TransportParams.h
3  * Class that holds the data that is read in from the XML file, and which is used for
4  * processing of the transport object
5  * (see \ref tranprops and \link Cantera::TransportParams TransportParams \endlink).
6  */
7 #ifndef CT_TRANSPORTPARAMS_H
8 #define CT_TRANSPORTPARAMS_H
9 
11 #include "TransportBase.h"
12 
13 namespace Cantera
14 {
15 
16 //! Base structure to hold transport model parameters.
17 /*!
18  * This structure is used by TransportFactory.
19  */
21 {
22 public:
24  virtual ~TransportParams() {}
25 
26  //! Local storage of the number of species
27  size_t nsp_;
28 
29  //! Pointer to the ThermoPhase object: shallow pointer
31 
32  //! Local storage of the molecular weights of the species
33  /*!
34  * Length is nsp_ and units are kg kmol-1.
35  */
37 
38  //! A basis for the average velocity can be specified.
39  /*!
40  * Valid bases include "mole", "mass", and "species" names.
41  */
43 
44  //! Maximum temperatures for parameter fits
45  doublereal tmax;
46 
47  //! Minimum temperatures for parameter fits
48  doublereal tmin;
49 
50  //! Mode parameter
51  int mode_;
52 
53  //! Log level
54  int log_level;
55 };
56 
57 //! This structure holds transport model parameters relevant to transport in ideal
58 //! gases with a kinetic theory of gases derived transport model.
59 /*!
60  * This structure is used by TransportFactory object.
61  * @deprecated Unused. Mostly merged into class GasTransport. This class will be
62  * removed after Cantera 2.2.
63  */
65 {
66 public:
68 
69  // polynomial fits
70 
71  //! temperature-fit of the viscosity
72  /*!
73  * The outer loop the number of species, nsp
74  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
75  */
76  std::vector<vector_fp> visccoeffs;
77 
78  //! temperature-fits of the heat conduction
79  /*!
80  * The outer loop the number of species, nsp
81  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
82  */
83  std::vector<vector_fp> condcoeffs;
84 
85  //! temperature-fits of the diffusivity
86  /*!
87  * The outer loop the number of species, nsp
88  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
89  */
90  std::vector<vector_fp> diffcoeffs;
91 
92  //! This is vector of vectors containing the integer lookup value for the (i,j) interaction
93  /*!
94  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
95  * Unique values of delta get their own spot in the array. The values of delta are stored in
96  * the fitlist vector.
97  *
98  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
99  */
100  std::vector<std::vector<int> > poly;
101 
102  //! This is vector of vectors containing the astar fit.
103  /*!
104  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
105  * Unique values of delta get their own spot in the array. The values of delta are stored in
106  * the fitlist vector.
107  *
108  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
109  */
110  std::vector<vector_fp> omega22_poly;
111 
112  //! This is vector of vectors containing the astar fit.
113  /*!
114  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
115  * Unique values of delta get their own spot in the array. The values of delta are stored in
116  * the fitlist vector.
117  *
118  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
119  */
120  std::vector<vector_fp> astar_poly;
121 
122  //! This is vector of vectors containing the astar fit.
123  /*!
124  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
125  * Unique values of delta get their own spot in the array. The values of delta are stored in
126  * the fitlist vector.
127  *
128  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
129  */
130  std::vector<vector_fp> bstar_poly;
131 
132  //! This is vector of vectors containing the astar fit.
133  /*!
134  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
135  * Unique values of delta get their own spot in the array. The values of delta are stored in
136  * the fitlist vector.
137  *
138  * The inner loop is over degree + 1, which is the polynomial order of the collision integral fit.
139  */
140  std::vector<vector_fp> cstar_poly;
141 
142  //! Rotational relaxation number for the species in the current phase
143  /*!
144  * length is the number of species in the phase
145  * units are dimensionless
146  */
148 
149  //! Dimensionless rotational heat capacity of the species in the current phase
150  /*!
151  * These values are 0, 1 and 1.5 for single-molecule, linear, and nonlinear species respectively
152  * length is the number of species in the phase
153  * units are dimensionless (Cr / R)
154  */
156 
157  //! Vector of booleans indicating whether a species is a polar molecule
158  /*!
159  * Length is nsp
160  */
161  std::vector<bool> polar;
162 
163  //! Polarizability of each species in the phase
164  /*!
165  * Length = nsp
166  * Units = m^3
167  */
169 
170  //! This is vector containing the values of delta(i,j) that are used in the collision integral fits.
171  /*!
172  * This is used in astar_poly, bstar_poly, cstar_poly, and omega22_poly.
173  * The outer loop is over a flat (i,j) index that is parameterized on the tr.delta(i,j) value.
174  * Unique values of delta get their own spot in the array. The values of delta are stored in
175  * the fitlist vector.
176  */
178 
179  //! Lennard-Jones well-depth of the species in the current phase
180  /*!
181  * length is the number of species in the phase
182  * Units are Joules (Note this is not Joules/kmol) (note, no kmol -> this is a per molecule amount)
183  */
185 
186  //! Lennard-Jones diameter of the species in the current phase
187  /*!
188  * length is the number of species in the phase
189  * units are in meters.
190  */
192 
193  //! This is the reduced mass of the interaction between species i and j
194  /*!
195  * tr.reducedMass(i,j) = tr.mw[i] * tr.mw[j] / (Avogadro * (tr.mw[i] + tr.mw[j]));
196  *
197  * Units are kg (note, no kmol -> this is a per molecule amount)
198  *
199  * Length nsp * nsp. This is a symmetric matrix
200  */
202 
203  //! hard-sphere diameter for (i,j) collision
204  /*!
205  * diam(i,j) = 0.5*(tr.sigma[i] + tr.sigma[j]);
206  * Units are m (note, no kmol -> this is a per molecule amount)
207  *
208  * Length nsp * nsp. This is a symmetric matrix.
209  */
211 
212  //! The effective well depth for (i,j) collisions
213  /*!
214  * epsilon(i,j) = sqrt(tr.eps[i]*tr.eps[j]);
215  * Units are Joules (note, no kmol -> this is a per molecule amount)
216  *
217  * Length nsp * nsp. This is a symmetric matrix.
218  */
220 
221  //! The effective dipole moment for (i,j) collisions
222  /*!
223  * dipoleMoment has units of Debye. A Debye is 3.335e-30 C-m
224  *
225  * tr.dipole(i,i) = 1.e-21 / lightSpeed * dipoleMoment;
226  * tr.dipole(i,j) = sqrt(tr.dipole(i,i)*tr.dipole(j,j));
227  * (note, no kmol -> this is a per molecule amount)
228  *
229  * Length nsp * nsp. This is a symmetric matrix.
230  */
232 
233  //! Matrix containing the reduced dipole moment of the interaction between two species
234  /*!
235  * This is the reduced dipole moment of the interaction between two species
236  * 0.5 * tr.dipole(i,j)^2 / (4 * Pi * epsilon_0 * epsilon(i,j) * d^3);
237  *
238  * Length nsp * nsp .This is a symmetric matrix
239  */
241 
242  //! Pitzer acentric factor
243  /*!
244  * Length is the number of species in the phase.
245  * Unitless
246  */
248 
249 };
250 
251 } // End of namespace Cantera
252 
253 #endif //CT_TRANSPORTPARAMS_H
doublereal tmin
Minimum temperatures for parameter fits.
DenseMatrix diam
hard-sphere diameter for (i,j) collision
This structure holds transport model parameters relevant to transport in ideal gases with a kinetic t...
vector_fp alpha
Polarizability of each species in the phase.
thermo_t * thermo
Pointer to the ThermoPhase object: shallow pointer.
std::vector< vector_fp > omega22_poly
This is vector of vectors containing the astar fit.
std::vector< vector_fp > astar_poly
This is vector of vectors containing the astar fit.
size_t nsp_
Local storage of the number of species.
doublereal tmax
Maximum temperatures for parameter fits.
Headers for the Transport object, which is the virtual base class for all transport property evaluato...
vector_fp sigma
Lennard-Jones diameter of the species in the current phase.
DenseMatrix reducedMass
This is the reduced mass of the interaction between species i and j.
vector_fp fitlist
This is vector containing the values of delta(i,j) that are used in the collision integral fits...
std::vector< vector_fp > cstar_poly
This is vector of vectors containing the astar fit.
std::vector< vector_fp > diffcoeffs
temperature-fits of the diffusivity
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:97
int VelocityBasis
The diffusion fluxes must be referenced to a particular reference fluid velocity. ...
Definition: TransportBase.h:79
vector_fp zrot
Rotational relaxation number for the species in the current phase.
vector_fp eps
Lennard-Jones well-depth of the species in the current phase.
VelocityBasis velocityBasis_
A basis for the average velocity can be specified.
std::vector< bool > polar
Vector of booleans indicating whether a species is a polar molecule.
DenseMatrix delta
Matrix containing the reduced dipole moment of the interaction between two species.
vector_fp crot
Dimensionless rotational heat capacity of the species in the current phase.
DenseMatrix epsilon
The effective well depth for (i,j) collisions.
vector_fp mw
Local storage of the molecular weights of the species.
std::vector< vector_fp > bstar_poly
This is vector of vectors containing the astar fit.
std::vector< std::vector< int > > poly
This is vector of vectors containing the integer lookup value for the (i,j) interaction.
int mode_
Mode parameter.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
Definition: ct_defs.h:157
DenseMatrix dipole
The effective dipole moment for (i,j) collisions.
std::vector< vector_fp > visccoeffs
temperature-fit of the viscosity
Headers for the DenseMatrix object, which deals with dense rectangular matrices and description of th...
std::vector< vector_fp > condcoeffs
temperature-fits of the heat conduction
Base structure to hold transport model parameters.
vector_fp w_ac
Pitzer acentric factor.
A class for full (non-sparse) matrices with Fortran-compatible data storage, which adds matrix operat...
Definition: DenseMatrix.h:71