Cantera  2.5.1
HighPressureGasTransport.h
Go to the documentation of this file.
1 /**
2  * @file HighPressureGasTransport.h
3  * Interface for class HighPressureGasTransport
4  */
5 
6 // This file is part of Cantera. See License.txt in the top-level directory or
7 // at https://cantera.org/license.txt for license and copyright information.
8 
9 #ifndef CT_HIGHPRESSUREGASTRAN_H
10 #define CT_HIGHPRESSUREGASTRAN_H
11 
12 // Cantera includes
13 #include "GasTransport.h"
16 
17 namespace Cantera
18 {
19 
20 //! Class MultiTransport implements transport properties for
21 //! high pressure gas mixtures.
22 /*!
23  * @attention This class currently does not have any test cases or examples. Its
24  * implementation may be incomplete, and future changes to Cantera may
25  * unexpectedly cause this class to stop working. If you use this class,
26  * please consider contributing examples or test cases. In the absence of
27  * new tests or examples, this class may be deprecated and removed in a
28  * future version of Cantera. See
29  * https://github.com/Cantera/cantera/issues/267 for additional information.
30  *
31  * The implementation employs a method of corresponding states, using the
32  * Takahashi approach for binary diffusion coefficients, (using multicomponent
33  * averaging rules for the mixture properties, and the Lucas method for the
34  * viscosity of a high-pressure gas mixture.
35  *
36  * @ingroup tranprops
37  */
39 {
40 protected:
41  //! default constructor
42  /*!
43  * @param thermo Optional parameter for the pointer to the ThermoPhase object
44  */
46 
47 public:
48  virtual std::string transportType() const {
49  return "HighPressureGas";
50  }
51 
52  //! Return the thermal diffusion coefficients (kg/m/s)
53  /*!
54  * Currently not implemented for this model
55  */
56  virtual void getThermalDiffCoeffs(doublereal* const dt);
57 
58  virtual double thermalConductivity();
59 
60  /*! Returns the matrix of binary diffusion coefficients
61  *
62  * d[ld*j + i] = rp*m_bdiff(i,j)*(DP)_R;
63  *
64  * @param ld offset of rows in the storage
65  * @param d output vector of diffusion coefficients. Units of m**2 / s
66  */
67  virtual void getBinaryDiffCoeffs(const size_t ld, doublereal* const d);
68 
69  virtual void getMultiDiffCoeffs(const size_t ld, doublereal* const d);
70 
71  virtual doublereal viscosity();
72 
73  friend class TransportFactory;
74 
75 protected:
76  virtual doublereal Tcrit_i(size_t i);
77 
78  virtual doublereal Pcrit_i(size_t i);
79 
80  virtual doublereal Vcrit_i(size_t i);
81 
82  virtual doublereal Zcrit_i(size_t i);
83 
84  vector_fp store(size_t i, size_t nsp);
85 
86  virtual doublereal FQ_i(doublereal Q, doublereal Tr, doublereal MW);
87 
88  virtual doublereal setPcorr(doublereal Pr, doublereal Tr);
89 };
90 }
91 #endif
Cantera::HighPressureGasTransport::HighPressureGasTransport
HighPressureGasTransport(thermo_t *thermo=0)
default constructor
Definition: HighPressureGasTransport.cpp:30
MultiTransport.h
Cantera::TransportFactory
Factory class for creating new instances of classes derived from Transport.
Definition: TransportFactory.h:30
Cantera::Transport::thermo
thermo_t & thermo()
Definition: TransportBase.h:165
Cantera::HighPressureGasTransport
Class MultiTransport implements transport properties for high pressure gas mixtures.
Definition: HighPressureGasTransport.h:38
Cantera::vector_fp
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:180
DenseMatrix.h
Cantera::MultiTransport
Class MultiTransport implements multicomponent transport properties for ideal gas mixtures.
Definition: MultiTransport.h:26
Cantera::HighPressureGasTransport::getBinaryDiffCoeffs
virtual void getBinaryDiffCoeffs(const size_t ld, doublereal *const d)
Definition: HighPressureGasTransport.cpp:136
Cantera::HighPressureGasTransport::thermalConductivity
virtual double thermalConductivity()
Returns the mixture thermal conductivity in W/m/K.
Definition: HighPressureGasTransport.cpp:35
Cantera::ThermoPhase
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:101
Cantera::HighPressureGasTransport::transportType
virtual std::string transportType() const
Identifies the Transport object type.
Definition: HighPressureGasTransport.h:48
GasTransport.h
Cantera::HighPressureGasTransport::getMultiDiffCoeffs
virtual void getMultiDiffCoeffs(const size_t ld, doublereal *const d)
Return the Multicomponent diffusion coefficients. Units: [m^2/s].
Definition: HighPressureGasTransport.cpp:193
Cantera::HighPressureGasTransport::viscosity
virtual doublereal viscosity()
Viscosity of the mixture (kg /m /s)
Definition: HighPressureGasTransport.cpp:277
Cantera::HighPressureGasTransport::getThermalDiffCoeffs
virtual void getThermalDiffCoeffs(doublereal *const dt)
Return the thermal diffusion coefficients (kg/m/s)
Definition: HighPressureGasTransport.cpp:125
Cantera
Namespace for the Cantera kernel.
Definition: AnyMap.cpp:263