Loading [MathJax]/extensions/tex2jax.js
Cantera  3.2.0a1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
MMCollisionInt Class Reference

Calculation of Collision integrals. More...

#include <MMCollisionInt.h>

Detailed Description

Calculation of Collision integrals.

This class provides functions that interpolate the tabulated collision integrals in Monchick and Mason [30].

The collision integrals computed by Monchick and Mason use the Stockmayer potential, which models a polar molecule as a spherical potential with a point dipole at the center). Equation 16 of Monchick and Mason [30] gives the potential as:

\[ \phi(r) = 4 \epsilon_0 \left[ \left(\frac{\sigma_0}{r}\right)^{12} - \left(\frac{\sigma_0}{r}\right)^6 + \delta \left(\frac{\sigma_0}{r}\right)^3 \right] \]

Where \( \epsilon_0 \) is the depth of the potential well, \( \sigma_0 \) is the distance at which the potential between the two molecules is zero, \( \delta \) is defined as:

\[ \delta = \frac{1}{4} (\mu^*)^2 \zeta \left( \theta_1, \theta_2, \phi \right) \]

\( \mu^* \) is the reduced dipole moment. \( \theta_1 \) , \( \theta_2 \) , and \( \phi \) are angles related to trajectories of colliding molecules. In the work of Monchick and Mason, these details are not what is presented in the tables. Instead, the tables are presented as being functions of the reduced temperature, \( T^* \), and the \( \delta \) parameter. The reduced dipole moment, \( \mu^* \) is defined as:

\[ \mu^* = \frac{\mu}{\sqrt{\epsilon_0 \sigma_0^3}} \]

Where \( \mu \) is the dipole moment of the molecule and the other parameters have been defined earlier. This work considers only the collisions of like molecules, so only a single value is needed.

The tabulated data comes from the averaged collision integrals in tables V through VIII of Monchick and Mason [30].

Definition at line 59 of file MMCollisionInt.h.

Public Member Functions

void init (double tsmin, double tsmax)
 Initialize the object for calculation.
 
double omega22 (double ts, double deltastar)
 
double astar (double ts, double deltastar)
 
double bstar (double ts, double deltastar)
 
double cstar (double ts, double deltastar)
 
void fit (int degree, double deltastar, double *astar, double *bstar, double *cstar)
 
void fit_omega22 (int degree, double deltastar, double *om22)
 
double omega11 (double ts, double deltastar)
 

Private Member Functions

double fitDelta (int table, int ntstar, int degree, double *c)
 
double quadInterp (double x0, double *x, double *y)
 

Private Attributes

vector< vector< double > > m_o22poly
 
vector< vector< double > > m_apoly
 
vector< vector< double > > m_bpoly
 
vector< vector< double > > m_cpoly
 
vector< double > m_logTemp
 Log temp.
 
int m_nmin
 Index of the tstar array that encompasses the minimum temperature fitting range value of tsmin.
 
int m_nmax
 Index of the tstar array that encompasses the maximum temperature fitting range value of tsmax.
 

Static Private Attributes

static double delta [8]
 
static double tstar22 [37]
 
static double omega22_table [37 *8]
 Table of omega22 values.
 
static double tstar [39]
 T* values (reduced temperature)
 
static double astar_table [39 *8]
 astar table
 
static double bstar_table [39 *8]
 bstar table
 
static double cstar_table [39 *8]
 cstar table
 

Constructor & Destructor Documentation

◆ MMCollisionInt()

MMCollisionInt ( )
inline

Definition at line 62 of file MMCollisionInt.h.

◆ ~MMCollisionInt()

virtual ~MMCollisionInt ( )
inlinevirtual

Definition at line 63 of file MMCollisionInt.h.

Member Function Documentation

◆ init()

void init ( double  tsmin,
double  tsmax 
)

Initialize the object for calculation.

Parameters
tsminMinimum value of Tstar to carry out the fitting
tsmaxMaximum value of Tstar to carry out the fitting

Definition at line 216 of file MMCollisionInt.cpp.

◆ omega22()

double omega22 ( double  ts,
double  deltastar 
)

Definition at line 277 of file MMCollisionInt.cpp.

◆ astar()

double astar ( double  ts,
double  deltastar 
)

Definition at line 302 of file MMCollisionInt.cpp.

◆ bstar()

double bstar ( double  ts,
double  deltastar 
)

Definition at line 325 of file MMCollisionInt.cpp.

◆ cstar()

double cstar ( double  ts,
double  deltastar 
)

Definition at line 348 of file MMCollisionInt.cpp.

◆ fit()

void fit ( int  degree,
double  deltastar,
double *  astar,
double *  bstar,
double *  cstar 
)

Definition at line 388 of file MMCollisionInt.cpp.

◆ fit_omega22()

void fit_omega22 ( int  degree,
double  deltastar,
double *  om22 
)

Definition at line 371 of file MMCollisionInt.cpp.

◆ omega11()

double omega11 ( double  ts,
double  deltastar 
)
inline

Definition at line 78 of file MMCollisionInt.h.

◆ fitDelta()

double fitDelta ( int  table,
int  ntstar,
int  degree,
double *  c 
)
private

Definition at line 253 of file MMCollisionInt.cpp.

◆ quadInterp()

double quadInterp ( double  x0,
double *  x,
double *  y 
)
private

Definition at line 22 of file MMCollisionInt.cpp.

Member Data Documentation

◆ m_o22poly

vector<vector<double> > m_o22poly
private

Definition at line 86 of file MMCollisionInt.h.

◆ m_apoly

vector<vector<double> > m_apoly
private

Definition at line 87 of file MMCollisionInt.h.

◆ m_bpoly

vector<vector<double> > m_bpoly
private

Definition at line 88 of file MMCollisionInt.h.

◆ m_cpoly

vector<vector<double> > m_cpoly
private

Definition at line 89 of file MMCollisionInt.h.

◆ delta

double delta
staticprivate
Initial value:
= {0.0, 0.25, 0.50, 0.75, 1.0,
1.5, 2.0, 2.5
}

Definition at line 91 of file MMCollisionInt.h.

◆ tstar22

double tstar22
staticprivate
Initial value:
= {
0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0,
1.2, 1.4, 1.6, 1.8, 2.0, 2.5, 3.0, 3.5, 4.0,
5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 12.0, 14.0, 16.0,
18.0, 20.0, 25.0, 30.0, 35.0, 40.0, 50.0, 75.0, 100.0
}

Definition at line 92 of file MMCollisionInt.h.

◆ omega22_table

double omega22_table
staticprivate

Table of omega22 values.

Definition at line 95 of file MMCollisionInt.h.

◆ tstar

double tstar
staticprivate
Initial value:
= {
0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0,
1.2, 1.4, 1.6, 1.8, 2.0, 2.5, 3.0, 3.5, 4.0,
5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 12.0, 14.0, 16.0,
18.0, 20.0, 25.0, 30.0, 35.0, 40.0, 50.0, 75.0, 100.0, 500.0
}

T* values (reduced temperature)

Definition at line 98 of file MMCollisionInt.h.

◆ astar_table

double astar_table
staticprivate

astar table

Definition at line 101 of file MMCollisionInt.h.

◆ bstar_table

double bstar_table
staticprivate

bstar table

Definition at line 104 of file MMCollisionInt.h.

◆ cstar_table

double cstar_table
staticprivate

cstar table

Definition at line 107 of file MMCollisionInt.h.

◆ m_logTemp

vector<double> m_logTemp
private

Log temp.

Definition at line 110 of file MMCollisionInt.h.

◆ m_nmin

int m_nmin
private

Index of the tstar array that encompasses the minimum temperature fitting range value of tsmin.

Definition at line 114 of file MMCollisionInt.h.

◆ m_nmax

int m_nmax
private

Index of the tstar array that encompasses the maximum temperature fitting range value of tsmax.

Definition at line 118 of file MMCollisionInt.h.


The documentation for this class was generated from the following files: