Cantera  2.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MMCollisionInt.h
Go to the documentation of this file.
1 /**
2  * @file MMCollisionInt.h
3  * Monk and Monchick collision integrals
4  */
5 // Copyright 2001 California Institute of Technology
6 
7 #ifndef CT_MMCOLLISIONINT_H
8 #define CT_MMCOLLISIONINT_H
9 
10 #include "cantera/base/ct_defs.h"
11 
12 namespace Cantera
13 {
14 
15 //! Calculation of Collision integrals
16 /*!
17  * This class provides functions that
18  * interpolate the tabulated collision integrals in Monchick and
19  * Mason, "Transport Properties of Polar Gases," J. Chem. Phys. (1961)
20  *
21  * @ingroup tranprops
22  */
24 {
25 public:
26  MMCollisionInt() {}
27  virtual ~MMCollisionInt() {}
28 
29  //! Initialize the object for calculation
30  /*!
31  * @param tsmin Minimum value of Tstar to carry out the fitting
32  * @param tsmax Maximum value of Tstar to carry out the fitting
33  * @param loglevel Set the loglevel for the object. The default
34  * loglevel is zero, indicating no output.
35  */
36  void init(doublereal tsmin, doublereal tsmax, int loglevel = 0);
37 
38  doublereal omega22(double ts, double deltastar);
39  doublereal astar(double ts, double deltastar);
40  doublereal bstar(double ts, double deltastar);
41  doublereal cstar(double ts, double deltastar);
42  void fit(int degree, doublereal deltastar,
43  doublereal* astar, doublereal* bstar, doublereal* cstar);
44  void fit_omega22(int degree, doublereal deltastar, doublereal* om22);
45  doublereal omega11(double ts, double deltastar) {
46  return omega22(ts, deltastar)/astar(ts, deltastar);
47  }
48 
49 private:
50  doublereal fitDelta(int table, int ntstar, int degree, doublereal* c);
51 
52  std::vector<vector_fp> m_o22poly;
53 
54  std::vector<vector_fp> m_apoly;
55  std::vector<vector_fp> m_bpoly;
56 
57  std::vector<vector_fp> m_cpoly;
58 
59  static doublereal delta[8];
60 
61  static doublereal tstar22[37];
62 
63  //! Table of omega22 values from MM
64  static doublereal omega22_table[37*8];
65 
66  //! tstar
67  /*!
68  * table of tstar values
69  */
70  static doublereal tstar[39];
71 
72  //! astar table from MM
73  static doublereal astar_table[39*8];
74 
75  //! bstar table from MM
76  static doublereal bstar_table[39*8];
77 
78  //! cstar table from MM
79  static doublereal cstar_table[39*8];
80 
81  //! Log temp
83 
84  int m_nmin;
85 
86  int m_nmax;
87 
88  //! loglevel
90 };
91 }
92 #endif
void init(doublereal tsmin, doublereal tsmax, int loglevel=0)
Initialize the object for calculation.
vector_fp m_logTemp
Log temp.
static doublereal tstar[39]
tstar
static doublereal bstar_table[39 *8]
bstar table from MM
This file contains definitions of terms that are used in internal routines and are unlikely to need m...
static doublereal astar_table[39 *8]
astar table from MM
static doublereal omega22_table[37 *8]
Table of omega22 values from MM.
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
Calculation of Collision integrals.
static doublereal cstar_table[39 *8]
cstar table from MM