Cantera  3.1.0
Loading...
Searching...
No Matches
MixtureFugacityTP.h
Go to the documentation of this file.
1/**
2 * @file MixtureFugacityTP.h
3 * Header file for a derived class of ThermoPhase that handles
4 * non-ideal mixtures based on the fugacity models (see @ref thermoprops and
5 * class @link Cantera::MixtureFugacityTP MixtureFugacityTP@endlink).
6 */
7
8// This file is part of Cantera. See License.txt in the top-level directory or
9// at https://cantera.org/license.txt for license and copyright information.
10
11#ifndef CT_MIXTUREFUGACITYTP_H
12#define CT_MIXTUREFUGACITYTP_H
13
14#include "ThermoPhase.h"
15
16namespace Cantera
17{
18//! Various states of the Fugacity object. In general there can be multiple liquid
19//! objects for a single phase identified with each species.
20
21#define FLUID_UNSTABLE -4
22#define FLUID_UNDEFINED -3
23#define FLUID_SUPERCRIT -2
24#define FLUID_GAS -1
25#define FLUID_LIQUID_0 0
26#define FLUID_LIQUID_1 1
27#define FLUID_LIQUID_2 2
28#define FLUID_LIQUID_3 3
29#define FLUID_LIQUID_4 4
30#define FLUID_LIQUID_5 5
31#define FLUID_LIQUID_6 6
32#define FLUID_LIQUID_7 7
33#define FLUID_LIQUID_8 8
34#define FLUID_LIQUID_9 9
35
36/**
37 * @ingroup thermoprops
38 *
39 * This is a filter class for ThermoPhase that implements some preparatory steps
40 * for efficiently handling mixture of gases that whose standard states are
41 * defined as ideal gases, but which describe also non-ideal solutions. In
42 * addition a multicomponent liquid phase below the critical temperature of the
43 * mixture is also allowed. The main subclass is currently a mixture Redlich-
44 * Kwong class.
45 *
46 * Several concepts are introduced. The first concept is there are temporary
47 * variables for holding the species standard state values of Cp, H, S, G, and V
48 * at the last temperature and pressure called. These functions are not
49 * recalculated if a new call is made using the previous temperature and
50 * pressure.
51 *
52 * The other concept is that the current state of the mixture is tracked. The
53 * state variable is either GAS, LIQUID, or SUPERCRIT fluid. Additionally, the
54 * variable LiquidContent is used and may vary between 0 and 1.
55 *
56 * Typically, only one liquid phase is allowed to be formed within these
57 * classes. Additionally, there is an inherent contradiction between three phase
58 * models and the ThermoPhase class. The ThermoPhase class is really only meant
59 * to represent a single instantiation of a phase. The three phase models may be
60 * in equilibrium with multiple phases of the fluid in equilibrium with each
61 * other. This has yet to be resolved.
62 *
63 * This class is usually used for non-ideal gases.
64 */
66{
67public:
68 //! @name Constructors and Duplicators for MixtureFugacityTP
69 //! @{
70
71 //! Constructor.
72 MixtureFugacityTP() = default;
73
74 //! @}
75 //! @name Utilities
76 //! @{
77
78 string type() const override {
79 return "MixtureFugacity";
80 }
81
82 int standardStateConvention() const override;
83
84 //! Set the solution branch to force the ThermoPhase to exist on one branch
85 //! or another
86 /*!
87 * @param solnBranch Branch that the solution is restricted to. the value
88 * -1 means gas. The value -2 means unrestricted. Values of zero or
89 * greater refer to species dominated condensed phases.
90 */
91 void setForcedSolutionBranch(int solnBranch);
92
93 //! Report the solution branch which the solution is restricted to
94 /*!
95 * @return Branch that the solution is restricted to. the value -1 means
96 * gas. The value -2 means unrestricted. Values of zero or greater
97 * refer to species dominated condensed phases.
98 */
99 int forcedSolutionBranch() const;
100
101 //! Report the solution branch which the solution is actually on
102 /*!
103 * @return Branch that the solution is restricted to. the value -1 means
104 * gas. The value -2 means superfluid.. Values of zero or greater refer
105 * to species dominated condensed phases.
106 */
107 int reportSolnBranchActual() const;
108
109 //! @}
110 //! @name Molar Thermodynamic properties
111 //! @{
112
113 double enthalpy_mole() const override;
114 double entropy_mole() const override;
115
116 //! @}
117 //! @name Properties of the Standard State of the Species in the Solution
118 //!
119 //! Within MixtureFugacityTP, these properties are calculated via a common
120 //! routine, _updateStandardStateThermo(), which must be overloaded in
121 //! inherited objects. The values are cached within this object, and are not
122 //! recalculated unless the temperature or pressure changes.
123 //! @{
124
125 //! Get the array of chemical potentials at unit activity.
126 /*!
127 * These are the standard state chemical potentials @f$ \mu^0_k(T,P)
128 * @f$. The values are evaluated at the current temperature and pressure.
129 *
130 * For all objects with the Mixture Fugacity approximation, we define the
131 * standard state as an ideal gas at the current temperature and pressure
132 * of the solution.
133 *
134 * @param mu Output vector of standard state chemical potentials.
135 * length = m_kk. units are J / kmol.
136 */
137 void getStandardChemPotentials(double* mu) const override;
138
139 //! Get the nondimensional Enthalpy functions for the species at their
140 //! standard states at the current *T* and *P* of the solution.
141 /*!
142 * For all objects with the Mixture Fugacity approximation, we define the
143 * standard state as an ideal gas at the current temperature and pressure
144 * of the solution.
145 *
146 * @param hrt Output vector of standard state enthalpies.
147 * length = m_kk. units are unitless.
148 */
149 void getEnthalpy_RT(double* hrt) const override;
150
151 //! Get the array of nondimensional Enthalpy functions for the standard
152 //! state species at the current *T* and *P* of the solution.
153 /*!
154 * For all objects with the Mixture Fugacity approximation, we define the
155 * standard state as an ideal gas at the current temperature and pressure of
156 * the solution.
157 *
158 * @param sr Output vector of nondimensional standard state entropies.
159 * length = m_kk.
160 */
161 void getEntropy_R(double* sr) const override;
162
163 //! Get the nondimensional Gibbs functions for the species at their standard
164 //! states of solution at the current T and P of the solution.
165 /*!
166 * For all objects with the Mixture Fugacity approximation, we define the
167 * standard state as an ideal gas at the current temperature and pressure
168 * of the solution.
169 *
170 * @param grt Output vector of nondimensional standard state Gibbs free
171 * energies. length = m_kk.
172 */
173 void getGibbs_RT(double* grt) const override;
174
175 //! Get the pure Gibbs free energies of each species. Species are assumed to
176 //! be in their standard states.
177 /*!
178 * This is the same as getStandardChemPotentials().
179 *
180 * @param[out] gpure Array of standard state Gibbs free energies. length =
181 * m_kk. units are J/kmol.
182 */
183 void getPureGibbs(double* gpure) const override;
184
185 //! Returns the vector of nondimensional internal Energies of the standard
186 //! state at the current temperature and pressure of the solution for each
187 //! species.
188 /*!
189 * For all objects with the Mixture Fugacity approximation, we define the
190 * standard state as an ideal gas at the current temperature and pressure
191 * of the solution.
192 *
193 * @f[
194 * u^{ss}_k(T,P) = h^{ss}_k(T) - P * V^{ss}_k
195 * @f]
196 *
197 * @param urt Output vector of nondimensional standard state internal
198 * energies. length = m_kk.
199 */
200 void getIntEnergy_RT(double* urt) const override;
201
202 //! Get the nondimensional Heat Capacities at constant pressure for the
203 //! standard state of the species at the current T and P.
204 /*!
205 * For all objects with the Mixture Fugacity approximation, we define the
206 * standard state as an ideal gas at the current temperature and pressure of
207 * the solution.
208 *
209 * @param cpr Output vector containing the the nondimensional Heat
210 * Capacities at constant pressure for the standard state of
211 * the species. Length: m_kk.
212 */
213 void getCp_R(double* cpr) const override;
214
215 //! Get the molar volumes of each species in their standard states at the
216 //! current *T* and *P* of the solution.
217 /*!
218 * For all objects with the Mixture Fugacity approximation, we define the
219 * standard state as an ideal gas at the current temperature and pressure of
220 * the solution.
221 *
222 * units = m^3 / kmol
223 *
224 * @param vol Output vector of species volumes. length = m_kk.
225 * units = m^3 / kmol
226 */
227 void getStandardVolumes(double* vol) const override;
228 //! @}
229
230 //! Set the temperature of the phase
231 /*!
232 * Currently this passes down to setState_TP(). It does not make sense to
233 * calculate the standard state without first setting T and P.
234 *
235 * @param temp Temperature (kelvin)
236 */
237 void setTemperature(const double temp) override;
238
239 //! Set the internally stored pressure (Pa) at constant temperature and
240 //! composition
241 /*!
242 * Currently this passes down to setState_TP(). It does not make sense to
243 * calculate the standard state without first setting T and P.
244 *
245 * @param p input Pressure (Pa)
246 */
247 void setPressure(double p) override;
248
249protected:
250 void compositionChanged() override;
251
252 //! Updates the reference state thermodynamic functions at the current T of
253 //! the solution.
254 /*!
255 * This function must be called for every call to functions in this class.
256 * It checks to see whether the temperature has changed and thus the ss
257 * thermodynamics functions for all of the species must be recalculated.
258 *
259 * This function is responsible for updating the following internal members:
260 *
261 * - m_h0_RT;
262 * - m_cp0_R;
263 * - m_g0_RT;
264 * - m_s0_R;
265 */
266 virtual void _updateReferenceStateThermo() const;
267
268 //! Temporary storage - length = m_kk.
269 mutable vector<double> m_tmpV;
270public:
271
272 //! @name Thermodynamic Values for the Species Reference States
273 //!
274 //! There are also temporary variables for holding the species reference-
275 //! state values of Cp, H, S, and V at the last temperature and reference
276 //! pressure called. These functions are not recalculated if a new call is
277 //! made using the previous temperature. All calculations are done within the
278 //! routine _updateRefStateThermo().
279 //! @{
280
281 void getEnthalpy_RT_ref(double* hrt) const override;
282 void getGibbs_RT_ref(double* grt) const override;
283
284protected:
285 //! Returns the vector of nondimensional Gibbs free energies of the
286 //! reference state at the current temperature of the solution and the
287 //! reference pressure for the species.
288 /*!
289 * @return Output vector contains the nondimensional Gibbs free energies
290 * of the reference state of the species
291 * length = m_kk, units = dimensionless.
292 */
293 const vector<double>& gibbs_RT_ref() const;
294
295public:
296 void getGibbs_ref(double* g) const override;
297 void getEntropy_R_ref(double* er) const override;
298 void getCp_R_ref(double* cprt) const override;
299 void getStandardVolumes_ref(double* vol) const override;
300
301 //! @}
302 //! @name Initialization Methods - For Internal use
303 //!
304 //! The following methods are used in the process of constructing
305 //! the phase and setting its parameters from a specification in an
306 //! input file. They are not normally used in application programs.
307 //! To see how they are used, see importPhase().
308 //! @{
309 bool addSpecies(shared_ptr<Species> spec) override;
310 //! @}
311
312protected:
313 //! @name Special Functions for fugacity classes
314 //! @{
315
316 //! Calculate the value of z
317 /*!
318 * @f[
319 * z = \frac{P v}{R T}
320 * @f]
321 *
322 * returns the value of z
323 */
324 double z() const;
325
326 //! Calculate the deviation terms for the total entropy of the mixture from
327 //! the ideal gas mixture
328 /**
329 * Here we use the current state conditions
330 *
331 * @returns the change in entropy in units of J kmol-1 K-1.
332 */
333 virtual double sresid() const;
334
335 //! Calculate the deviation terms for the total enthalpy of the mixture from
336 //! the ideal gas mixture
337 /**
338 * Here we use the current state conditions
339 *
340 * @returns the change in entropy in units of J kmol-1.
341 */
342 virtual double hresid() const;
343
344 //! Estimate for the saturation pressure
345 /*!
346 * Note: this is only used as a starting guess for later routines that
347 * actually calculate an accurate value for the saturation pressure.
348 *
349 * @param TKelvin temperature in kelvin
350 * @return the estimated saturation pressure at the given temperature
351 */
352 virtual double psatEst(double TKelvin) const;
353
354public:
355 //! Estimate for the molar volume of the liquid
356 /*!
357 * Note: this is only used as a starting guess for later routines that
358 * actually calculate an accurate value for the liquid molar volume. This
359 * routine doesn't change the state of the system.
360 *
361 * @param TKelvin temperature in kelvin
362 * @param pres Pressure in Pa. This is used as an initial guess. If the
363 * routine needs to change the pressure to find a stable
364 * liquid state, the new pressure is returned in this
365 * variable.
366 * @returns the estimate of the liquid volume. If the liquid can't be
367 * found, this routine returns -1.
368 */
369 virtual double liquidVolEst(double TKelvin, double& pres) const;
370
371 //! Calculates the density given the temperature and the pressure and a
372 //! guess at the density.
373 /*!
374 * Note, below T_c, this is a multivalued function. We do not cross the
375 * vapor dome in this. This is protected because it is called during
376 * setState_TP() routines. Infinite loops would result if it were not
377 * protected.
378 *
379 * @param TKelvin Temperature in Kelvin
380 * @param pressure Pressure in Pascals (Newton/m**2)
381 * @param phaseRequested int representing the phase whose density we are
382 * requesting. If we put a gas or liquid phase here, we will attempt to
383 * find a volume in that part of the volume space, only, in this
384 * routine. A value of FLUID_UNDEFINED means that we will accept
385 * anything.
386 * @param rhoguess Guessed density of the fluid. A value of -1.0 indicates
387 * that there is no guessed density
388 * @return We return the density of the fluid at the requested phase. If
389 * we have not found any acceptable density we return a -1. If we
390 * have found an acceptable density at a different phase, we
391 * return a -2.
392 */
393 virtual double densityCalc(double TKelvin, double pressure, int phaseRequested,
394 double rhoguess);
395
396protected:
397 //! Utility routine in the calculation of the saturation pressure
398 /*!
399 * @param TKelvin temperature (kelvin)
400 * @param pres pressure (Pascal)
401 * @param[out] densLiq density of liquid
402 * @param[out] densGas density of gas
403 * @param[out] liqGRT deltaG/RT of liquid
404 * @param[out] gasGRT deltaG/RT of gas
405 */
406 int corr0(double TKelvin, double pres, double& densLiq,
407 double& densGas, double& liqGRT, double& gasGRT);
408
409public:
410 //! Returns the Phase State flag for the current state of the object
411 /*!
412 * @param checkState If true, this function does a complete check to see
413 * where in parameters space we are
414 *
415 * There are three values:
416 * - WATER_GAS below the critical temperature but below the critical density
417 * - WATER_LIQUID below the critical temperature but above the critical density
418 * - WATER_SUPERCRIT above the critical temperature
419 */
420 int phaseState(bool checkState = false) const;
421
422 //! Return the value of the density at the liquid spinodal point (on the
423 //! liquid side) for the current temperature.
424 /*!
425 * @returns the density with units of kg m-3
426 */
427 virtual double densSpinodalLiquid() const;
428
429 //! Return the value of the density at the gas spinodal point (on the gas
430 //! side) for the current temperature.
431 /*!
432 * @returns the density with units of kg m-3
433 */
434 virtual double densSpinodalGas() const;
435
436public:
437 //! Calculate the saturation pressure at the current mixture content for the
438 //! given temperature
439 /*!
440 * @param TKelvin (input) Temperature (Kelvin)
441 * @param molarVolGas (return) Molar volume of the gas
442 * @param molarVolLiquid (return) Molar volume of the liquid
443 * @returns the saturation pressure at the given temperature
444 */
445 double calculatePsat(double TKelvin, double& molarVolGas, double& molarVolLiquid);
446
447public:
448 //! Calculate the saturation pressure at the current mixture content for the
449 //! given temperature
450 /*!
451 * @param TKelvin Temperature (Kelvin)
452 * @return The saturation pressure at the given temperature
453 */
454 double satPressure(double TKelvin) override;
455 void getActivityConcentrations(double* c) const override;
456
457protected:
458 //! Calculate the pressure and the pressure derivative given the temperature
459 //! and the molar volume
460 /*!
461 * Temperature and mole number are held constant
462 *
463 * @param TKelvin temperature in kelvin
464 * @param molarVol molar volume ( m3/kmol)
465 * @param presCalc Returns the pressure.
466 * @returns the derivative of the pressure wrt the molar volume
467 */
468 virtual double dpdVCalc(double TKelvin, double molarVol, double& presCalc) const;
469
470 virtual void updateMixingExpressions();
471
472 //! @}
473 //! @name Critical State Properties.
474 //! @{
475
476 double critTemperature() const override;
477 double critPressure() const override;
478 double critVolume() const override;
479 double critCompressibility() const override;
480 double critDensity() const override;
481 virtual void calcCriticalConditions(double& pc, double& tc, double& vc) const;
482
483 //! Solve the cubic equation of state
484 /*!
485 *
486 * Returns the number of solutions found. For the gas phase solution, it returns
487 * a positive number (1 or 2). If it only finds the liquid branch solution,
488 * it will return -1 or -2 instead of 1 or 2.
489 * If it returns 0, then there is an error.
490 * The cubic equation is solved using Nickalls' method @cite nickalls1993.
491 *
492 * @param T temperature (kelvin)
493 * @param pres pressure (Pa)
494 * @param a "a" parameter in the non-ideal EoS [Pa-m^6/kmol^2]
495 * @param b "b" parameter in the non-ideal EoS [m^3/kmol]
496 * @param aAlpha a*alpha (temperature dependent function for P-R EoS, 1 for R-K EoS)
497 * @param Vroot Roots of the cubic equation for molar volume (m3/kmol)
498 * @param an constant used in cubic equation
499 * @param bn constant used in cubic equation
500 * @param cn constant used in cubic equation
501 * @param dn constant used in cubic equation
502 * @param tc Critical temperature (kelvin)
503 * @param vc Critical volume
504 * @returns the number of solutions found
505 */
506 int solveCubic(double T, double pres, double a, double b,
507 double aAlpha, double Vroot[3], double an,
508 double bn, double cn, double dn, double tc, double vc) const;
509
510 //! @}
511
512 //! Storage for the current values of the mole fractions of the species
513 /*!
514 * This vector is kept up-to-date when some the setState functions are called.
515 */
516 vector<double> moleFractions_;
517
518 //! Current state of the fluid
519 /*!
520 * There are three possible states of the fluid:
521 * - FLUID_GAS
522 * - FLUID_LIQUID
523 * - FLUID_SUPERCRIT
524 */
525 int iState_ = FLUID_GAS;
526
527 //! Force the system to be on a particular side of the spinodal curve
528 int forcedState_ = FLUID_UNDEFINED;
529
530 //! Temporary storage for dimensionless reference state enthalpies
531 mutable vector<double> m_h0_RT;
532
533 //! Temporary storage for dimensionless reference state heat capacities
534 mutable vector<double> m_cp0_R;
535
536 //! Temporary storage for dimensionless reference state Gibbs energies
537 mutable vector<double> m_g0_RT;
538
539 //! Temporary storage for dimensionless reference state entropies
540 mutable vector<double> m_s0_R;
541};
542}
543
544#endif
Header file for class ThermoPhase, the base class for phases with thermodynamic properties,...
This is a filter class for ThermoPhase that implements some preparatory steps for efficiently handlin...
int iState_
Current state of the fluid.
int reportSolnBranchActual() const
Report the solution branch which the solution is actually on.
double enthalpy_mole() const override
Molar enthalpy. Units: J/kmol.
int standardStateConvention() const override
This method returns the convention used in specification of the standard state, of which there are cu...
MixtureFugacityTP()=default
Constructor.
vector< double > m_g0_RT
Temporary storage for dimensionless reference state Gibbs energies.
double critPressure() const override
Critical pressure (Pa).
double critDensity() const override
Critical density (kg/m3).
void getEntropy_R(double *sr) const override
Get the array of nondimensional Enthalpy functions for the standard state species at the current T an...
vector< double > m_h0_RT
Temporary storage for dimensionless reference state enthalpies.
void getGibbs_ref(double *g) const override
Returns the vector of the Gibbs function of the reference state at the current temperature of the sol...
void getStandardChemPotentials(double *mu) const override
Get the array of chemical potentials at unit activity.
double critTemperature() const override
Critical temperature (K).
void getCp_R(double *cpr) const override
Get the nondimensional Heat Capacities at constant pressure for the standard state of the species at ...
virtual double densSpinodalLiquid() const
Return the value of the density at the liquid spinodal point (on the liquid side) for the current tem...
virtual void _updateReferenceStateThermo() const
Updates the reference state thermodynamic functions at the current T of the solution.
string type() const override
String indicating the thermodynamic model implemented.
double satPressure(double TKelvin) override
Calculate the saturation pressure at the current mixture content for the given temperature.
vector< double > m_tmpV
Temporary storage - length = m_kk.
void getActivityConcentrations(double *c) const override
This method returns an array of generalized concentrations.
int solveCubic(double T, double pres, double a, double b, double aAlpha, double Vroot[3], double an, double bn, double cn, double dn, double tc, double vc) const
Solve the cubic equation of state.
double critCompressibility() const override
Critical compressibility (unitless).
void setPressure(double p) override
Set the internally stored pressure (Pa) at constant temperature and composition.
const vector< double > & gibbs_RT_ref() const
Returns the vector of nondimensional Gibbs free energies of the reference state at the current temper...
void getStandardVolumes_ref(double *vol) const override
Get the molar volumes of the species reference states at the current T and P_ref of the solution.
virtual double densSpinodalGas() const
Return the value of the density at the gas spinodal point (on the gas side) for the current temperatu...
void getPureGibbs(double *gpure) const override
Get the pure Gibbs free energies of each species.
double calculatePsat(double TKelvin, double &molarVolGas, double &molarVolLiquid)
Calculate the saturation pressure at the current mixture content for the given temperature.
vector< double > moleFractions_
Storage for the current values of the mole fractions of the species.
void getEnthalpy_RT(double *hrt) const override
Get the nondimensional Enthalpy functions for the species at their standard states at the current T a...
void getEntropy_R_ref(double *er) const override
Returns the vector of nondimensional entropies of the reference state at the current temperature of t...
void setTemperature(const double temp) override
Set the temperature of the phase.
vector< double > m_s0_R
Temporary storage for dimensionless reference state entropies.
virtual double dpdVCalc(double TKelvin, double molarVol, double &presCalc) const
Calculate the pressure and the pressure derivative given the temperature and the molar volume.
void getGibbs_RT(double *grt) const override
Get the nondimensional Gibbs functions for the species at their standard states of solution at the cu...
double entropy_mole() const override
Molar entropy. Units: J/kmol/K.
virtual double densityCalc(double TKelvin, double pressure, int phaseRequested, double rhoguess)
Calculates the density given the temperature and the pressure and a guess at the density.
double critVolume() const override
Critical volume (m3/kmol).
virtual double psatEst(double TKelvin) const
Estimate for the saturation pressure.
void getCp_R_ref(double *cprt) const override
Returns the vector of nondimensional constant pressure heat capacities of the reference state at the ...
void getStandardVolumes(double *vol) const override
Get the molar volumes of each species in their standard states at the current T and P of the solution...
virtual double sresid() const
Calculate the deviation terms for the total entropy of the mixture from the ideal gas mixture.
void getIntEnergy_RT(double *urt) const override
Returns the vector of nondimensional internal Energies of the standard state at the current temperatu...
int forcedState_
Force the system to be on a particular side of the spinodal curve.
virtual double liquidVolEst(double TKelvin, double &pres) const
Estimate for the molar volume of the liquid.
int forcedSolutionBranch() const
Report the solution branch which the solution is restricted to.
void compositionChanged() override
Apply changes to the state which are needed after the composition changes.
vector< double > m_cp0_R
Temporary storage for dimensionless reference state heat capacities.
int corr0(double TKelvin, double pres, double &densLiq, double &densGas, double &liqGRT, double &gasGRT)
Utility routine in the calculation of the saturation pressure.
void setForcedSolutionBranch(int solnBranch)
Set the solution branch to force the ThermoPhase to exist on one branch or another.
bool addSpecies(shared_ptr< Species > spec) override
Add a Species to this Phase.
virtual double hresid() const
Calculate the deviation terms for the total enthalpy of the mixture from the ideal gas mixture.
void getGibbs_RT_ref(double *grt) const override
Returns the vector of nondimensional Gibbs Free Energies of the reference state at the current temper...
double z() const
Calculate the value of z.
int phaseState(bool checkState=false) const
Returns the Phase State flag for the current state of the object.
void getEnthalpy_RT_ref(double *hrt) const override
Returns the vector of nondimensional enthalpies of the reference state at the current temperature of ...
virtual double pressure() const
Return the thermodynamic pressure (Pa).
Definition Phase.h:580
Base class for a phase with thermodynamic properties.
Namespace for the Cantera kernel.
Definition AnyMap.cpp:595