thermo.thermal_conductivity module

thermo.thermal_conductivity.Sheffy_Johnson(T, M, Tm)[source]

Calculate the thermal conductivity of a liquid as a function of temperature using the Sheffy-Johnson (1961) method. Requires Temperature, molecular weight, and melting point.

\[k = 1.951 \frac{1-0.00126(T-T_m)}{T_m^{0.216}MW^{0.3}}\]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Tm : float

Melting point of the fluid [K]

Returns:

kl : float

Thermal conductivity of the fluid, W/m/k

Notes

The origin of this equation has been challenging to trace. It is presently unknown, and untested.

References

[R514]Scheffy, W. J., and E. F. Johnson. “Thermal Conductivities of Liquids at High Temperatures.” Journal of Chemical & Engineering Data 6, no. 2 (April 1, 1961): 245-49. doi:10.1021/je60010a019

Examples

>>> Sheffy_Johnson(300, 47, 280)
0.17740150413112196
thermo.thermal_conductivity.Sato_Riedel(T, M, Tb, Tc)[source]

Calculate the thermal conductivity of a liquid as a function of temperature using the CSP method of Sato-Riedel [R515], [R516], published in Reid [R517]. Requires temperature, molecular weight, and boiling and critical temperatures.

\[k = \frac{1.1053}{\sqrt{MW}}\frac{3+20(1-T_r)^{2/3}} {3+20(1-T_{br})^{2/3}}\]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Tb : float

Boiling temperature of the fluid [K]

Tc : float

Critical temperature of the fluid [K]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

This equation has a complicated history. It is proposed by Reid [R517]. Limited accuracy should be expected. Uncheecked.

References

[R515](1, 2) Riedel, L.: Chem. Ing. Tech., 21, 349 (1949); 23: 59, 321, 465 (1951)
[R516](1, 2) Maejima, T., private communication, 1973
[R517](1, 2, 3) Properties of Gases and Liquids”, 3rd Ed., McGraw-Hill, 1977

Examples

>>> Sato_Riedel(300, 47, 390, 520)
0.21037692461337687
thermo.thermal_conductivity.Lakshmi_Prasad(T, M)[source]

Estimates thermal conductivity of pure liquids as a function of temperature using a reference fluid approach. Low accuracy but quick. Developed using several organic fluids.

\[\lambda = 0.0655-0.0005T + \frac{1.3855-0.00197T}{M^{0.5}}\]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

This equation returns negative numbers at high T sometimes. This equation is one of those implemented by DDBST. If this results in a negative thermal conductivity, no value is returned.

References

[R518]Lakshmi, D. S., and D. H. L. Prasad. “A Rapid Estimation Method for Thermal Conductivity of Pure Liquids.” The Chemical Engineering Journal 48, no. 3 (April 1992): 211-14. doi:10.1016/0300-9467(92)80037-B

Examples

>>> Lakshmi_Prasad(273.15, 100)
0.013664450000000009
thermo.thermal_conductivity.Gharagheizi_liquid(T, M, Tb, Pc, omega)[source]

Estimates the thermal conductivity of a liquid as a function of temperature using the CSP method of Gharagheizi [R519]. A convoluted method claiming high-accuracy and using only statistically significant variable following analalysis.

Requires temperature, molecular weight, boiling temperature and critical pressure and acentric factor.

\[ \begin{align}\begin{aligned}&k = 10^{-4}\left[10\omega + 2P_c-2T+4+1.908(T_b+\frac{1.009B^2}{MW^2}) +\frac{3.9287MW^4}{B^4}+\frac{A}{B^8}\right]\\&A = 3.8588MW^8(1.0045B+6.5152MW-8.9756)\\&B = 16.0407MW+2T_b-27.9074\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Tb : float

Boiling temperature of the fluid [K]

Pc : float

Critical pressure of the fluid [Pa]

omega : float

Acentric factor of the fluid [-]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

Pressure is internally converted into bar, as used in the original equation.

This equation was derived with 19000 points representing 1640 unique compounds.

References

[R519](1, 2) Gharagheizi, Farhad, Poorandokht Ilani-Kashkouli, Mehdi Sattari, Amir H. Mohammadi, Deresh Ramjugernath, and Dominique Richon. “Development of a General Model for Determination of Thermal Conductivity of Liquid Chemical Compounds at Atmospheric Pressure.” AIChE Journal 59, no. 5 (May 1, 2013): 1702-8. doi:10.1002/aic.13938

Examples

>>> Gharagheizi_liquid(300, 40, 350, 1E6, 0.27)
0.2171113029534838
thermo.thermal_conductivity.Nicola_original(T, M, Tc, omega, Hfus)[source]

Estimates the thermal conductivity of a liquid as a function of temperature using the CSP method of Nicola [R520]. A simpler but long method claiming high-accuracy and using only statistically significant variable following analalysis.

Requires temperature, molecular weight, critical temperature, acentric factor and the heat of vaporization.

\[\frac{\lambda}{1 \text{Wm/K}}=-0.5694-0.1436T_r+5.4893\times10^{-10} \frac{\Delta_{fus}H}{\text{kmol/J}}+0.0508\omega + \left(\frac{1 \text{kg/kmol}}{MW}\right)^{0.0622}\]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Tc : float

Critical temperature of the fluid [K]

omega : float

Acentric factor of the fluid [-]

Hfus : float

Heat of fusion of the fluid [J/mol]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

A weird statistical correlation. Recent and yet to be reviewed. This correlation has been superceded by the author’s later work. Hfus is internally converted to be in J/kmol.

References

[R520](1, 2) Nicola, Giovanni Di, Eleonora Ciarrocchi, Mariano Pierantozzi, and Roman Stryjek. “A New Equation for the Thermal Conductivity of Organic Compounds.” Journal of Thermal Analysis and Calorimetry 116, no. 1 (April 1, 2014): 135-40. doi:10.1007/s10973-013-3422-7

Examples

>>> Nicola_original(300, 142.3, 611.7, 0.49, 201853)
0.2305018632230984
thermo.thermal_conductivity.Nicola(T, M, Tc, Pc, omega)[source]

Estimates the thermal conductivity of a liquid as a function of temperature using the CSP method of [R521]. A statistically derived equation using any correlated terms.

Requires temperature, molecular weight, critical temperature and pressure, and acentric factor.

\[\frac{\lambda}{0.5147 W/m/K} = -0.2537T_r+\frac{0.0017Pc}{\text{bar}} +0.1501 \omega + \left(\frac{1}{MW}\right)^{-0.2999}\]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Tc : float

Critical temperature of the fluid [K]

Pc : float

Critical pressure of the fluid [Pa]

omega : float

Acentric factor of the fluid [-]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

A statistical correlation. A revision of an original correlation.

References

[R521](1, 2) Di Nicola, Giovanni, Eleonora Ciarrocchi, Gianluca Coccia, and Mariano Pierantozzi. “Correlations of Thermal Conductivity for Liquid Refrigerants at Atmospheric Pressure or near Saturation.” International Journal of Refrigeration. 2014. doi:10.1016/j.ijrefrig.2014.06.003

Examples

>>> Nicola(300, 142.3, 611.7, 2110000.0, 0.49)
0.10863821554584034
thermo.thermal_conductivity.Bahadori_liquid(T, M)[source]

Estimates the thermal conductivity of parafin liquid hydrocarbons. Fits their data well, and is useful as only MW is required. X is the Molecular weight, and Y the temperature.

\[ \begin{align}\begin{aligned}K = a + bY + CY^2 + dY^3\\a = A_1 + B_1 X + C_1 X^2 + D_1 X^3\\b = A_2 + B_2 X + C_2 X^2 + D_2 X^3\\c = A_3 + B_3 X + C_3 X^2 + D_3 X^3\\d = A_4 + B_4 X + C_4 X^2 + D_4 X^3\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the fluid [K]

M : float

Molecular weight of the fluid [g/mol]

Returns:

kl : float

Estimated liquid thermal conductivity [W/m/k]

Notes

The accuracy of this equation has not been reviewed.

References

[R522](1, 2) Bahadori, Alireza, and Saeid Mokhatab. “Estimating Thermal Conductivity of Hydrocarbons.” Chemical Engineering 115, no. 13 (December 2008): 52-54

Examples

Data point from [R522].

>>> Bahadori_liquid(273.15, 170)
0.14274278108272603
thermo.thermal_conductivity.thermal_conductivity_liquid_methods = ['COOLPROP', 'DIPPR_PERRY_8E', 'VDI_PPDS', 'VDI_TABULAR', 'GHARAGHEIZI_L', 'SHEFFY_JOHNSON', 'SATO_RIEDEL', 'LAKSHMI_PRASAD', 'BAHADORI_L', 'NICOLA', 'NICOLA_ORIGINAL']

Holds all low-pressure methods available for the ThermalConductivityLiquid class, for use in iterating over them.

class thermo.thermal_conductivity.ThermalConductivityLiquid(CASRN='', MW=None, Tm=None, Tb=None, Tc=None, Pc=None, omega=None, Hfus=None)[source]

Bases: thermo.utils.TPDependentProperty

Class for dealing with liquid thermal conductivity as a function of temperature and pressure.

For low-pressure (at 1 atm while under the vapor pressure; along the saturation line otherwise) liquids, there is one source of tabular information, one polynomial-based method, 7 corresponding-states estimators, and the external library CoolProp.

For high-pressure liquids (also, <1 atm liquids), there are two corresponding-states estimator, and the external library CoolProp.

Parameters:

CASs : list[str], optional

The CAS numbers of all species in the mixture

MW : float, optional

Molecular weight, [g/mol]

Tm : float, optional

Melting point, [K]

Tb : float, optional

Boiling point, [K]

Tc : float, optional

Critical temperature, [K]

Pc : float, optional

Critical pressure, [Pa]

omega : float, optional

Acentric factor, [-]

Hfus : float, optional

Heat of fusion, [J/mol]

Notes

To iterate over all methods, use the lists stored in thermal_conductivity_liquid_methods and thermal_conductivity_liquid_methods_P for low and high pressure methods respectively.

Low pressure methods:

GHARAGHEIZI_L:
CSP method, described in Gharagheizi_liquid.
SATO_RIEDEL:
CSP method, described in Sato_Riedel.
NICOLA:
CSP method, described in Nicola.
NICOLA_ORIGINAL:
CSP method, described in Nicola_original.
SHEFFY_JOHNSON:
CSP method, described in Sheffy_Johnson.
BAHADORI_L:
CSP method, described in Bahadori_liquid.
LAKSHMI_PRASAD:
CSP method, described in Lakshmi_Prasad.
DIPPR_PERRY_8E:
A collection of 340 coefficient sets from the DIPPR database published openly in [R525]. Provides temperature limits for all its fluids. thermo.dippr.EQ100 is used for its fluids.
VDI_PPDS:
Coefficients for a equation form developed by the PPDS, published openly in [R524]. Covers a large temperature range, but does not extrapolate well at very high or very low temperatures. 271 compounds.
COOLPROP:
CoolProp external library; with select fluids from its library. Range is limited to that of the equations of state it uses, as described in [R523]. Very slow.
VDI_TABULAR:
Tabular data in [R524] along the saturation curve; interpolation is as set by the user or the default.

High pressure methods:

DIPPR_9G:
CSP method, described in DIPPR9G. Calculates a low-pressure thermal conductivity first, using T_dependent_property.
MISSENARD:
CSP method, described in Missenard. Calculates a low-pressure thermal conductivity first, using T_dependent_property.
COOLPROP:
CoolProp external library; with select fluids from its library. Range is limited to that of the equations of state it uses, as described in [R523]. Very slow, but unparalled in accuracy for pressure dependence.

References

[R523](1, 2, 3) Bell, Ian H., Jorrit Wronski, Sylvain Quoilin, and Vincent Lemort. “Pure and Pseudo-Pure Fluid Thermophysical Property Evaluation and the Open-Source Thermophysical Property Library CoolProp.” Industrial & Engineering Chemistry Research 53, no. 6 (February 12, 2014): 2498-2508. doi:10.1021/ie4033999. http://www.coolprop.org/
[R524](1, 2, 3) Gesellschaft, V. D. I., ed. VDI Heat Atlas. 2nd edition. Berlin; New York:: Springer, 2010.
[R525](1, 2) Green, Don, and Robert Perry. Perry’s Chemical Engineers’ Handbook, Eighth Edition. McGraw-Hill Professional, 2007.

Attributes

TP_cached  
T_cached  
interpolation_P  
interpolation_T  
interpolation_property  
interpolation_property_inv  
method  
method_P  

Methods

TP_dependent_property(T, P) Method to calculate the property with sanity checking and without specifying a specific method.
TP_dependent_property_derivative_P(T, P[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to pressure at constant temperature, of a given order.
TP_dependent_property_derivative_T(T, P[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to temperature at constant pressure, of a given order.
TP_or_T_dependent_property(T, P)
T_dependent_property(T) Method to calculate the property with sanity checking and without specifying a specific method.
T_dependent_property_derivative(T[, order]) Method to obtain a derivative of a property with respect to temperature, of a given order.
T_dependent_property_integral(T1, T2) Method to calculate the integral of a property with respect to temperature, using a specified method.
T_dependent_property_integral_over_T(T1, T2) Method to calculate the integral of a property over temperature with respect to temperature, using a specified method.
__call__(T, P) Convenience method to calculate the property; calls TP_dependent_property.
calculate(T, method) Method to calculate low-pressure liquid thermal conductivity at tempearture T with a given method.
calculate_P(T, P, method) Method to calculate pressure-dependent liquid thermal conductivity at temperature T and pressure P with a given method.
calculate_derivative(T, method[, order]) Method to calculate a derivative of a property with respect to temperature, of a given order using a specified method.
calculate_derivative_P(P, T, method[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to pressure at constant temperature, of a given order using a specified method.
calculate_derivative_T(T, P, method[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to temperature at constant pressure, of a given order using a specified method.
calculate_integral(T1, T2, method) Method to calculate the integral of a property with respect to temperature, using a specified method.
calculate_integral_over_T(T1, T2, method) Method to calculate the integral of a property over temperature with respect to temperature, using a specified method.
extrapolate_tabular(T)
interpolate(T, name) Method to perform interpolation on a given tabular data set previously added via set_tabular_data.
interpolate_P(T, P, name) Method to perform interpolation on a given tabular data set previously added via set_tabular_data_P.
load_all_methods() Method which picks out coefficients for the specified chemical from the various dictionaries and DataFrames storing it.
plot_TP_dependent_property([Tmin, Tmax, ...]) Method to create a plot of the property vs temperature and pressure according to either a specified list of methods, or user methods (if set), or all methods.
plot_T_dependent_property([Tmin, Tmax, ...]) Method to create a plot of the property vs temperature according to either a specified list of methods, or user methods (if set), or all methods.
plot_isobar(P[, Tmin, Tmax, methods_P, pts, ...]) Method to create a plot of the property vs temperature at a specific pressure according to either a specified list of methods, or user methods (if set), or all methods.
plot_isotherm(T[, Pmin, Pmax, methods_P, ...]) Method to create a plot of the property vs pressure at a specified temperature according to either a specified list of methods, or the user methods (if set), or all methods.
select_valid_methods(T) Method to obtain a sorted list of methods which are valid at T according to test_method_validity.
select_valid_methods_P(T, P) Method to obtain a sorted list methods which are valid at T according to test_method_validity.
set_tabular_data(Ts, properties[, name, ...]) Method to set tabular data to be used for interpolation.
set_tabular_data_P(Ts, Ps, properties[, ...]) Method to set tabular data to be used for interpolation.
set_user_methods(user_methods[, forced]) Method used to select certain property methods as having a higher priority than were set by default.
set_user_methods_P(user_methods_P[, forced_P]) Method to set the pressure-dependent property methods desired for consideration by the user.
solve_prop(goal[, reset_method]) Method to solve for the temperature at which a property is at a specified value.
test_method_validity(T, method) Method to check the validity of a temperature-dependent low-pressure method.
test_method_validity_P(T, P, method) Method to check the validity of a high-pressure method.
test_property_validity(prop) Method to test the validity of a calculated property.
Tmax = None

Maximum temperature at which no method can calculate the liquid thermal conductivity above.

Tmin = None

Minimum temperature at which no method can calculate the liquid thermal conductivity under.

all_methods = None

Set of all low-pressure methods available for a given CASRN and properties; filled by load_all_methods.

all_methods_P = None

Set of all high-pressure methods available for a given CASRN and properties; filled by load_all_methods.

calculate(T, method)[source]

Method to calculate low-pressure liquid thermal conductivity at tempearture T with a given method.

This method has no exception handling; see T_dependent_property for that.

Parameters:

T : float

Temperature of the liquid, [K]

method : str

Name of the method to use

Returns:

kl : float

Thermal conductivity of the liquid at T and a low pressure, [W/m/K]

calculate_P(T, P, method)[source]

Method to calculate pressure-dependent liquid thermal conductivity at temperature T and pressure P with a given method.

This method has no exception handling; see TP_dependent_property for that.

Parameters:

T : float

Temperature at which to calculate liquid thermal conductivity, [K]

P : float

Pressure at which to calculate liquid thermal conductivity, [K]

method : str

Name of the method to use

Returns:

kl : float

Thermal conductivity of the liquid at T and P, [W/m/K]

interpolation_P = None

No interpolation transformation by default.

interpolation_T = None

No interpolation transformation by default.

interpolation_property = None

No interpolation transformation by default.

interpolation_property_inv = None

No interpolation transformation by default.

load_all_methods()[source]

Method which picks out coefficients for the specified chemical from the various dictionaries and DataFrames storing it. All data is stored as attributes. This method also sets Tmin, Tmax, all_methods and obj:all_methods_P as a set of methods for which the data exists for.

Called on initialization only. See the source code for the variables at which the coefficients are stored. The coefficients can safely be altered once the class is initialized. This method can be called again to reset the parameters.

name = 'liquid thermal conductivity'
property_max = 10

Maximum valid value of liquid thermal conductivity. Generous limit.

property_min = 0

Mimimum valid value of liquid thermal conductivity.

ranked_methods = ['COOLPROP', 'DIPPR_PERRY_8E', 'VDI_PPDS', 'VDI_TABULAR', 'GHARAGHEIZI_L', 'SHEFFY_JOHNSON', 'SATO_RIEDEL', 'LAKSHMI_PRASAD', 'BAHADORI_L', 'NICOLA', 'NICOLA_ORIGINAL']

Default rankings of the low-pressure methods.

ranked_methods_P = ['COOLPROP', 'DIPPR_9G', 'MISSENARD']

Default rankings of the high-pressure methods.

sorted_valid_methods = None

sorted_valid_methods, list: Stored methods which were found valid at a specific temperature; set by T_dependent_property.

sorted_valid_methods_P = None

sorted_valid_methods_P, list: Stored methods which were found valid at a specific temperature; set by TP_dependent_property.

tabular_data = None

tabular_data, dict: Stored (Ts, properties) for any tabular data; indexed by provided or autogenerated name.

tabular_data_P = None

tabular_data_P, dict: Stored (Ts, Ps, properties) for any tabular data; indexed by provided or autogenerated name.

tabular_data_interpolators = None

tabular_data_interpolators, dict: Stored (extrapolator, spline) tuples which are interp1d instances for each set of tabular data; indexed by tuple of (name, interpolation_T, interpolation_property, interpolation_property_inv) to ensure that if an interpolation transform is altered, the old interpolator which had been created is no longer used.

tabular_data_interpolators_P = None

tabular_data_interpolators_P, dict: Stored (extrapolator, spline) tuples which are interp2d instances for each set of tabular data; indexed by tuple of (name, interpolation_T, interpolation_P, interpolation_property, interpolation_property_inv) to ensure that if an interpolation transform is altered, the old interpolator which had been created is no longer used.

tabular_extrapolation_permitted = True

Allow tabular extrapolation by default.

test_method_validity(T, method)[source]

Method to check the validity of a temperature-dependent low-pressure method. For CSP methods, the models BAHADORI_L, LAKSHMI_PRASAD, and SHEFFY_JOHNSON are considered valid for all temperatures. For methods GHARAGHEIZI_L, NICOLA, and NICOLA_ORIGINAL, the methods are considered valid up to 1.5Tc and down to 0 K. Method SATO_RIEDEL does not work above the critical point, so it is valid from 0 K to the critical point.

For tabular data, extrapolation outside of the range is used if tabular_extrapolation_permitted is set; if it is, the extrapolation is considered valid for all temperatures.

It is not guaranteed that a method will work or give an accurate prediction simply because this method considers the method valid.

Parameters:

T : float

Temperature at which to test the method, [K]

method : str

Name of the method to test

Returns:

validity : bool

Whether or not a method is valid

test_method_validity_P(T, P, method)[source]

Method to check the validity of a high-pressure method. For COOLPROP, the fluid must be both a liquid and under the maximum pressure of the fluid’s EOS. MISSENARD has defined limits; between 0.5Tc and 0.8Tc, and below 200Pc. The CSP method DIPPR_9G is considered valid for all temperatures and pressures.

For tabular data, extrapolation outside of the range is used if tabular_extrapolation_permitted is set; if it is, the extrapolation is considered valid for all temperatures and pressures.

It is not guaranteed that a method will work or give an accurate prediction simply because this method considers the method valid.

Parameters:

T : float

Temperature at which to test the method, [K]

P : float

Pressure at which to test the method, [Pa]

method : str

Name of the method to test

Returns:

validity : bool

Whether or not a method is valid

units = 'W/m/K'
user_methods = None

user_methods, list: Stored methods which were specified by the user in a ranked order of preference; set by T_dependent_property.

user_methods_P = None

user_methods_P, list: Stored methods which were specified by the user in a ranked order of preference; set by TP_dependent_property.

thermo.thermal_conductivity.DIPPR9G(T, P, Tc, Pc, kl)[source]

Adjustes for pressure the thermal conductivity of a liquid using an emperical formula based on [R526], but as given in [R527].

\[k = k^* \left[ 0.98 + 0.0079 P_r T_r^{1.4} + 0.63 T_r^{1.2} \left( \frac{P_r}{30 + P_r}\right)\right]\]
Parameters:

T : float

Temperature of fluid [K]

P : float

Pressure of fluid [Pa]

Tc: float

Critical point of fluid [K]

Pc : float

Critical pressure of the fluid [Pa]

kl : float

Thermal conductivity of liquid at 1 atm or saturation, [W/m/K]

Returns:

kl_dense : float

Thermal conductivity of liquid at P, [W/m/K]

Notes

This equation is entrely dimensionless; all dimensions cancel. The original source has not been reviewed.

This is DIPPR Procedure 9G: Method for the Thermal Conductivity of Pure Nonhydrocarbon Liquids at High Pressures

References

[R526](1, 2) Missenard, F. A., Thermal Conductivity of Organic Liquids of a Series or a Group of Liquids , Rev. Gen.Thermodyn., 101 649 (1970).
[R527](1, 2, 3) Danner, Ronald P, and Design Institute for Physical Property Data. Manual for Predicting Chemical Process Design Data. New York, N.Y, 1982.

Examples

From [R527], for butyl acetate.

>>> DIPPR9G(515.05, 3.92E7, 579.15, 3.212E6, 7.085E-2)
0.0864419738671184
thermo.thermal_conductivity.Missenard(T, P, Tc, Pc, kl)[source]

Adjustes for pressure the thermal conductivity of a liquid using an emperical formula based on [R528], but as given in [R529].

\[\frac{k}{k^*} = 1 + Q P_r^{0.7}\]
Parameters:

T : float

Temperature of fluid [K]

P : float

Pressure of fluid [Pa]

Tc: float

Critical point of fluid [K]

Pc : float

Critical pressure of the fluid [Pa]

kl : float

Thermal conductivity of liquid at 1 atm or saturation, [W/m/K]

Returns:

kl_dense : float

Thermal conductivity of liquid at P, [W/m/K]

Notes

This equation is entirely dimensionless; all dimensions cancel. An interpolation routine is used here from tabulated values of Q. The original source has not been reviewed.

References

[R528](1, 2) Missenard, F. A., Thermal Conductivity of Organic Liquids of a Series or a Group of Liquids , Rev. Gen.Thermodyn., 101 649 (1970).
[R529](1, 2, 3) Poling, Bruce E. The Properties of Gases and Liquids. 5th edition. New York: McGraw-Hill Professional, 2000.

Examples

Example from [R529], toluene; matches.

>>> Missenard(304., 6330E5, 591.8, 41E5, 0.129)
0.2198375777069657
thermo.thermal_conductivity.DIPPR9H(ws, ks)[source]

Calculates thermal conductivity of a liquid mixture according to mixing rules in [R530] and also in [R531].

\[\lambda_m = \left( \sum_i w_i \lambda_i^{-2}\right)^{-1/2}\]
Parameters:

ws : float

Mass fractions of components

ks : float

Liquid thermal conductivites of all components, [W/m/K]

Returns:

kl : float

Thermal conductivity of liquid mixture, [W/m/K]

Notes

This equation is entirely dimensionless; all dimensions cancel. The example is from [R531]; all results agree. The original source has not been reviewed.

DIPPR Procedure 9H: Method for the Thermal Conductivity of Nonaqueous Liquid Mixtures

Average deviations of 3%. for 118 nonaqueous systems with 817 data points. Max deviation 20%. According to DIPPR.

References

[R530](1, 2) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. The Properties of Gases and Liquids. McGraw-Hill Companies, 1987.
[R531](1, 2, 3) Danner, Ronald P, and Design Institute for Physical Property Data. Manual for Predicting Chemical Process Design Data. New York, N.Y, 1982.

Examples

>>> DIPPR9H([0.258, 0.742], [0.1692, 0.1528])
0.15657104706719646
thermo.thermal_conductivity.Filippov(ws, ks)[source]

Calculates thermal conductivity of a binary liquid mixture according to mixing rules in [R533] as found in [R532].

\[\lambda_m = w_1 \lambda_1 + w_2\lambda_2 - 0.72 w_1 w_2(\lambda_2-\lambda_1)\]
Parameters:

ws : float

Mass fractions of components

ks : float

Liquid thermal conductivites of all components, [W/m/K]

Returns:

kl : float

Thermal conductivity of liquid mixture, [W/m/K]

Notes

This equation is entirely dimensionless; all dimensions cancel. The original source has not been reviewed. Only useful for binary mixtures.

References

[R532](1, 2) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. The Properties of Gases and Liquids. McGraw-Hill Companies, 1987.
[R533](1, 2) Filippov, L. P.: Vest. Mosk. Univ., Ser. Fiz. Mat. Estestv. Nauk, (8I0E): 67-69A955); Chem. Abstr., 50: 8276 A956). Filippov, L. P., and N. S. Novoselova: Vestn. Mosk. Univ., Ser. F iz. Mat. Estestv.Nauk, CI0B): 37-40A955); Chem. Abstr., 49: 11366 A955).

Examples

>>> Filippov([0.258, 0.742], [0.1692, 0.1528])
0.15929167628799998
thermo.thermal_conductivity.Eucken(MW, Cvm, mu)[source]

Estimates the thermal conductivity of a gas as a function of temperature using the CSP method of Eucken [R534].

\[\frac{\lambda M}{\eta C_v} = 1 + \frac{9/4}{C_v/R}\]
Parameters:

MW : float

Molecular weight of the gas [g/mol]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

mu : float

Gas viscosity [Pa*S]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

Temperature dependence is introduced via heat capacity and viscosity. A theoretical equation. No original author located. MW internally converted to kg/g-mol.

References

[R534](1, 2, 3) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

2-methylbutane at low pressure, 373.15 K. Mathes calculation in [R534].

>>> Eucken(MW=72.151, Cvm=135.9, mu=8.77E-6)
0.018792644287722975
thermo.thermal_conductivity.Eucken_modified(MW, Cvm, mu)[source]

Estimates the thermal conductivity of a gas as a function of temperature using the Modified CSP method of Eucken [R535].

\[\frac{\lambda M}{\eta C_v} = 1.32 + \frac{1.77}{C_v/R}\]
Parameters:

MW : float

Molecular weight of the gas [g/mol]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

mu : float

Gas viscosity [Pa*S]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

Temperature dependence is introduced via heat capacity and viscosity. A theoretical equation. No original author located. MW internally converted to kg/g-mol.

References

[R535](1, 2, 3) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

2-methylbutane at low pressure, 373.15 K. Mathes calculation in [R535].

>>> Eucken_modified(MW=72.151, Cvm=135.9, mu=8.77E-6)
0.023593536999201956
thermo.thermal_conductivity.DIPPR9B(T, MW, Cvm, mu, Tc=None, chemtype=None)[source]

Calculates the thermal conductivity of a gas using one of several emperical equations developed in [R536], [R537], and presented in [R538].

For monoatomic gases:

\[k = 2.5 \frac{\eta C_v}{MW}\]

For linear molecules:

\[k = \frac{\eta}{MW} \left( 1.30 C_v + 14644.00 - \frac{2928.80}{T_r}\right)\]

For nonlinear molecules:

\[k = \frac{\eta}{MW}(1.15C_v + 16903.36)\]
Parameters:

T : float

Temperature of the fluid [K]

Tc : float

Critical temperature of the fluid [K]

MW : float

Molwcular weight of fluid [g/mol]

Cvm : float

Molar heat capacity at constant volume of fluid, [J/mol/K]

mu : float

Viscosity of gas, [Pa*S]

Returns:

k_g : float

Thermal conductivity of gas, [W/m/k]

Notes

Tested with DIPPR values. Cvm is internally converted to J/kmol/K.

References

[R536](1, 2) Bromley, LeRoy A., Berkeley. University of California, and U.S. Atomic Energy Commission. Thermal Conductivity of Gases at Moderate Pressures. UCRL;1852. Berkeley, CA: University of California Radiation Laboratory, 1952.
[R537](1, 2) Stiel, Leonard I., and George Thodos. “The Thermal Conductivity of Nonpolar Substances in the Dense Gaseous and Liquid Regions.” AIChE Journal 10, no. 1 (January 1, 1964): 26-30. doi:10.1002/aic.690100114
[R538](1, 2) Danner, Ronald P, and Design Institute for Physical Property Data. Manual for Predicting Chemical Process Design Data. New York, N.Y, 1982.

Examples

CO:

>>> DIPPR9B(200., 28.01, 20.826, 1.277E-5, 132.92, chemtype='linear')
0.01813208676438415
thermo.thermal_conductivity.Chung(T, MW, Tc, omega, Cvm, mu)[source]

Estimates the thermal conductivity of a gas as a function of temperature using the CSP method of Chung [R539].

\[ \begin{align}\begin{aligned}\frac{\lambda M}{\eta C_v} = \frac{3.75 \Psi}{C_v/R}\\\Psi = 1 + \alpha \left\{[0.215+0.28288\alpha-1.061\beta+0.26665Z]/ [0.6366+\beta Z + 1.061 \alpha \beta]\right\}\\\alpha = \frac{C_v}{R}-1.5\\\beta = 0.7862-0.7109\omega + 1.3168\omega^2\\Z=2+10.5T_r^2\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Tc : float

Critical temperature of the gas [K]

omega : float

Acentric factor of the gas [-]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

mu : float

Gas viscosity [Pa*S]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

MW internally converted to kg/g-mol.

References

[R539](1, 2) Chung, Ting Horng, Lloyd L. Lee, and Kenneth E. Starling. “Applications of Kinetic Gas Theories and Multiparameter Correlation for Prediction of Dilute Gas Viscosity and Thermal Conductivity.” Industrial & Engineering Chemistry Fundamentals 23, no. 1 (February 1, 1984): 8-13. doi:10.1021/i100013a002
[R540](1, 2) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

2-methylbutane at low pressure, 373.15 K. Mathes calculation in [R540].

>>> Chung(T=373.15, MW=72.151, Tc=460.4, omega=0.227, Cvm=135.9, mu=8.77E-6)
0.023015653729496946
thermo.thermal_conductivity.eli_hanley(T, MW, Tc, Vc, Zc, omega, Cvm)[source]

Estimates the thermal conductivity of a gas as a function of temperature using the reference fluid method of Eli and Hanley [R541] as shown in [R542].

\[ \begin{align}\begin{aligned}\lambda = \lambda^* + \frac{\eta^*}{MW}(1.32)\left(C_v - \frac{3R}{2}\right)\\Tr = \text{min}(Tr, 2)\\\theta = 1 + (\omega-0.011)\left(0.56553 - 0.86276\ln Tr - \frac{0.69852}{Tr}\right)\\\psi = [1 + (\omega - 0.011)(0.38560 - 1.1617\ln Tr)]\frac{0.288}{Z_c}\\f = \frac{T_c}{190.4}\theta\\h = \frac{V_c}{9.92E-5}\psi\\T_0 = T/f\\\eta_0^*(T_0)= \sum_{n=1}^9 C_n T_0^{(n-4)/3}\\\theta_0 = 1944 \eta_0\\\lambda^* = \lambda_0 H\\\eta^* = \eta^*_0 H \frac{MW}{16.04}\\H = \left(\frac{16.04}{MW}\right)^{0.5}f^{0.5}/h^{2/3}\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Tc : float

Critical temperature of the gas [K]

Vc : float

Critical volume of the gas [m^3/mol]

Zc : float

Critical compressibility of the gas []

omega : float

Acentric factor of the gas [-]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

Reference fluid is Methane. MW internally converted to kg/g-mol.

References

[R541](1, 2) Ely, James F., and H. J. M. Hanley. “Prediction of Transport Properties. 2. Thermal Conductivity of Pure Fluids and Mixtures.” Industrial & Engineering Chemistry Fundamentals 22, no. 1 (February 1, 1983): 90-97. doi:10.1021/i100009a016.
[R542](1, 2, 3) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

2-methylbutane at low pressure, 373.15 K. Mathes calculation in [R542].

>>> eli_hanley(T=373.15, MW=72.151, Tc=460.4, Vc=3.06E-4, Zc=0.267,
... omega=0.227, Cvm=135.9)
0.02247951789135337
thermo.thermal_conductivity.Gharagheizi_gas(T, MW, Tb, Pc, omega)[source]

Estimates the thermal conductivity of a gas as a function of temperature using the CSP method of Gharagheizi [R543]. A convoluted method claiming high-accuracy and using only statistically significant variable following analalysis.

Requires temperature, molecular weight, boiling temperature and critical pressure and acentric factor.

\[ \begin{align}\begin{aligned}k = 7.9505\times 10^{-4} + 3.989\times 10^{-5} T -5.419\times 10^-5 M + 3.989\times 10^{-5} A\\A = \frac{\left(2\omega + T - \frac{(2\omega + 3.2825)T}{T_b} + 3.2825\right)}{0.1MP_cT} \times (3.9752\omega + 0.1 P_c + 1.9876B + 6.5243)^2\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the fluid [K]

MW: float

Molecular weight of the fluid [g/mol]

Tb : float

Boiling temperature of the fluid [K]

Pc : float

Critical pressure of the fluid [Pa]

omega : float

Acentric factor of the fluid [-]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

Pressure is internally converted into 10*kPa but author used correlation with kPa; overall, errors have been corrected in the presentation of the formula.

This equation was derived with 15927 points and 1574 compounds. Example value from [R543] is the first point in the supportinf info, for CH4.

References

[R543](1, 2, 3) Gharagheizi, Farhad, Poorandokht Ilani-Kashkouli, Mehdi Sattari, Amir H. Mohammadi, Deresh Ramjugernath, and Dominique Richon. “Development of a General Model for Determination of Thermal Conductivity of Liquid Chemical Compounds at Atmospheric Pressure.” AIChE Journal 59, no. 5 (May 1, 2013): 1702-8. doi:10.1002/aic.13938

Examples

>>> Gharagheizi_gas(580., 16.04246, 111.66, 4599000.0, 0.0115478000)
0.09594861261873211
thermo.thermal_conductivity.Bahadori_gas(T, MW)[source]

Estimates the thermal conductivity of hydrocarbons gases at low P. Fits their data well, and is useful as only MW is required. Y is the Molecular weight, and X the temperature.

\[ \begin{align}\begin{aligned}K = a + bY + CY^2 + dY^3\\a = A_1 + B_1 X + C_1 X^2 + D_1 X^3\\b = A_2 + B_2 X + C_2 X^2 + D_2 X^3\\c = A_3 + B_3 X + C_3 X^2 + D_3 X^3\\d = A_4 + B_4 X + C_4 X^2 + D_4 X^3\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Returns:

kg : float

Estimated gas thermal conductivity [W/m/k]

Notes

The accuracy of this equation has not been reviewed.

References

[R544]Bahadori, Alireza, and Saeid Mokhatab. “Estimating Thermal Conductivity of Hydrocarbons.” Chemical Engineering 115, no. 13 (December 2008): 52-54

Examples

>>> Bahadori_gas(40+273.15, 20) # Point from article
0.031968165337873326
thermo.thermal_conductivity.thermal_conductivity_gas_methods = ['LINDSAY_BROMLEY', 'SIMPLE']

Holds all low-pressure methods available for the ThermalConductivityGas class, for use in iterating over them.

thermo.thermal_conductivity.thermal_conductivity_gas_methods_P = ['COOLPROP', 'ELI_HANLEY_DENSE', 'CHUNG_DENSE', 'STIEL_THODOS_DENSE']

Holds all high-pressure methods available for the ThermalConductivityGas class, for use in iterating over them.

class thermo.thermal_conductivity.ThermalConductivityGas(CASRN='', MW=None, Tb=None, Tc=None, Pc=None, Vc=None, Zc=None, omega=None, dipole=None, Vmg=None, Cvgm=None, mug=None)[source]

Bases: thermo.utils.TPDependentProperty

Class for dealing with gas thermal conductivity as a function of temperature and pressure.

For gases at atmospheric pressure, there are 7 corresponding-states estimators, one source of tabular information, and the external library CoolProp.

For gases under the fluid’s boiling point (at sub-atmospheric pressures), and high-pressure gases above the boiling point, there are three corresponding-states estimators, and the external library CoolProp.

Parameters:

CASs : list[str], optional

The CAS numbers of all species in the mixture

MW : float, optional

Molecular weight, [g/mol]

Tb : float, optional

Boiling point, [K]

Tc : float, optional

Critical temperature, [K]

Pc : float, optional

Critical pressure, [Pa]

Vc : float, optional

Critical volume, [m^3/mol]

Zc : float, optional

Critical compressibility, [-]

omega : float, optional

Acentric factor, [-]

dipole : float, optional

Dipole moment of the fluid, [debye]

Vmg : float or callable, optional

Molar volume of the fluid at a pressure and temperature or callable for the same, [m^3/mol]

Cvgm : float or callable, optional

Molar heat capacity of the fluid at a pressure and temperature or or callable for the same, [J/mol/K]

mug : float or callable, optional

Gas viscosity of the fluid at a pressure and temperature or callable for the same, [Pa*S]

Notes

To iterate over all methods, use the lists stored in thermal_conductivity_gas_methods and thermal_conductivity_gas_methods_P for low and high pressure methods respectively.

Low pressure methods:

GHARAGHEIZI_G:
CSP method, described in Gharagheizi_gas.
DIPPR_9B:
CSP method, described in DIPPR9B.
CHUNG:
CSP method, described in Chung.
ELI_HANLEY:
CSP method, described in eli_hanley.
EUCKEN_MOD:
CSP method, described in Eucken_modified.
EUCKEN:
CSP method, described in Eucken.
BAHADORI_G:
CSP method, described in Bahadori_gas.
DIPPR_PERRY_8E:
A collection of 345 coefficient sets from the DIPPR database published openly in [R547]. Provides temperature limits for all its fluids. thermo.dippr.EQ102 is used for its fluids.
VDI_PPDS:
Coefficients for a equation form developed by the PPDS, published openly in [R546]. Covers a large temperature range, but does not extrapolate well at very high or very low temperatures. 275 compounds.
COOLPROP:
CoolProp external library; with select fluids from its library. Range is limited to that of the equations of state it uses, as described in [R545]. Very slow.
VDI_TABULAR:
Tabular data in [R546] along the saturation curve; interpolation is as set by the user or the default.

High pressure methods:

STIEL_THODOS_DENSE:
CSP method, described in stiel_thodos_dense. Calculates a low-pressure thermal conductivity first, using T_dependent_property.
ELI_HANLEY_DENSE:
CSP method, described in eli_hanley_dense. Calculates a low-pressure thermal conductivity first, using T_dependent_property.
CHUNG_DENSE:
CSP method, described in chung_dense. Calculates a low-pressure thermal conductivity first, using T_dependent_property.
COOLPROP:
CoolProp external library; with select fluids from its library. Range is limited to that of the equations of state it uses, as described in [R545]. Very slow, but unparalled in accuracy for pressure dependence.

References

[R545](1, 2, 3) Bell, Ian H., Jorrit Wronski, Sylvain Quoilin, and Vincent Lemort. “Pure and Pseudo-Pure Fluid Thermophysical Property Evaluation and the Open-Source Thermophysical Property Library CoolProp.” Industrial & Engineering Chemistry Research 53, no. 6 (February 12, 2014): 2498-2508. doi:10.1021/ie4033999. http://www.coolprop.org/
[R546](1, 2, 3) Gesellschaft, V. D. I., ed. VDI Heat Atlas. 2nd edition. Berlin; New York:: Springer, 2010.
[R547](1, 2) Green, Don, and Robert Perry. Perry’s Chemical Engineers’ Handbook, Eighth Edition. McGraw-Hill Professional, 2007.

Attributes

TP_cached  
T_cached  
interpolation_P  
interpolation_T  
interpolation_property  
interpolation_property_inv  
method  
method_P  

Methods

TP_dependent_property(T, P) Method to calculate the property with sanity checking and without specifying a specific method.
TP_dependent_property_derivative_P(T, P[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to pressure at constant temperature, of a given order.
TP_dependent_property_derivative_T(T, P[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to temperature at constant pressure, of a given order.
TP_or_T_dependent_property(T, P)
T_dependent_property(T) Method to calculate the property with sanity checking and without specifying a specific method.
T_dependent_property_derivative(T[, order]) Method to obtain a derivative of a property with respect to temperature, of a given order.
T_dependent_property_integral(T1, T2) Method to calculate the integral of a property with respect to temperature, using a specified method.
T_dependent_property_integral_over_T(T1, T2) Method to calculate the integral of a property over temperature with respect to temperature, using a specified method.
__call__(T, P) Convenience method to calculate the property; calls TP_dependent_property.
calculate(T, method) Method to calculate low-pressure gas thermal conductivity at tempearture T with a given method.
calculate_P(T, P, method) Method to calculate pressure-dependent gas thermal conductivity at temperature T and pressure P with a given method.
calculate_derivative(T, method[, order]) Method to calculate a derivative of a property with respect to temperature, of a given order using a specified method.
calculate_derivative_P(P, T, method[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to pressure at constant temperature, of a given order using a specified method.
calculate_derivative_T(T, P, method[, order]) Method to calculate a derivative of a temperature and pressure dependent property with respect to temperature at constant pressure, of a given order using a specified method.
calculate_integral(T1, T2, method) Method to calculate the integral of a property with respect to temperature, using a specified method.
calculate_integral_over_T(T1, T2, method) Method to calculate the integral of a property over temperature with respect to temperature, using a specified method.
extrapolate_tabular(T)
interpolate(T, name) Method to perform interpolation on a given tabular data set previously added via set_tabular_data.
interpolate_P(T, P, name) Method to perform interpolation on a given tabular data set previously added via set_tabular_data_P.
load_all_methods() Method which picks out coefficients for the specified chemical from the various dictionaries and DataFrames storing it.
plot_TP_dependent_property([Tmin, Tmax, ...]) Method to create a plot of the property vs temperature and pressure according to either a specified list of methods, or user methods (if set), or all methods.
plot_T_dependent_property([Tmin, Tmax, ...]) Method to create a plot of the property vs temperature according to either a specified list of methods, or user methods (if set), or all methods.
plot_isobar(P[, Tmin, Tmax, methods_P, pts, ...]) Method to create a plot of the property vs temperature at a specific pressure according to either a specified list of methods, or user methods (if set), or all methods.
plot_isotherm(T[, Pmin, Pmax, methods_P, ...]) Method to create a plot of the property vs pressure at a specified temperature according to either a specified list of methods, or the user methods (if set), or all methods.
select_valid_methods(T) Method to obtain a sorted list of methods which are valid at T according to test_method_validity.
select_valid_methods_P(T, P) Method to obtain a sorted list methods which are valid at T according to test_method_validity.
set_tabular_data(Ts, properties[, name, ...]) Method to set tabular data to be used for interpolation.
set_tabular_data_P(Ts, Ps, properties[, ...]) Method to set tabular data to be used for interpolation.
set_user_methods(user_methods[, forced]) Method used to select certain property methods as having a higher priority than were set by default.
set_user_methods_P(user_methods_P[, forced_P]) Method to set the pressure-dependent property methods desired for consideration by the user.
solve_prop(goal[, reset_method]) Method to solve for the temperature at which a property is at a specified value.
test_method_validity(T, method) Method to check the validity of a temperature-dependent low-pressure method.
test_method_validity_P(T, P, method) Method to check the validity of a high-pressure method.
test_property_validity(prop) Method to test the validity of a calculated property.
Tmax = None

Maximum temperature at which no method can calculate the gas thermal conductivity above.

Tmin = None

Minimum temperature at which no method can calculate the gas thermal conductivity under.

all_methods = None

Set of all low-pressure methods available for a given CASRN and properties; filled by load_all_methods.

all_methods_P = None

Set of all high-pressure methods available for a given CASRN and properties; filled by load_all_methods.

calculate(T, method)[source]

Method to calculate low-pressure gas thermal conductivity at tempearture T with a given method.

This method has no exception handling; see T_dependent_property for that.

Parameters:

T : float

Temperature of the gas, [K]

method : str

Name of the method to use

Returns:

kg : float

Thermal conductivity of the gas at T and a low pressure, [W/m/K]

calculate_P(T, P, method)[source]

Method to calculate pressure-dependent gas thermal conductivity at temperature T and pressure P with a given method.

This method has no exception handling; see TP_dependent_property for that.

Parameters:

T : float

Temperature at which to calculate gas thermal conductivity, [K]

P : float

Pressure at which to calculate gas thermal conductivity, [K]

method : str

Name of the method to use

Returns:

kg : float

Thermal conductivity of the gas at T and P, [W/m/K]

interpolation_P = None

No interpolation transformation by default.

interpolation_T = None

No interpolation transformation by default.

interpolation_property = None

No interpolation transformation by default.

interpolation_property_inv = None

No interpolation transformation by default.

load_all_methods()[source]

Method which picks out coefficients for the specified chemical from the various dictionaries and DataFrames storing it. All data is stored as attributes. This method also sets Tmin, Tmax, all_methods and obj:all_methods_P as a set of methods for which the data exists for.

Called on initialization only. See the source code for the variables at which the coefficients are stored. The coefficients can safely be altered once the class is initialized. This method can be called again to reset the parameters.

name = 'gas thermal conductivity'
property_max = 10

Maximum valid value of gas thermal conductivity. Generous limit.

property_min = 0

Mimimum valid value of gas thermal conductivity.

ranked_methods = ['COOLPROP', 'VDI_PPDS', 'DIPPR_PERRY_8E', 'VDI_TABULAR', 'GHARAGHEIZI_G', 'DIPPR_9B', 'CHUNG', 'ELI_HANLEY', 'EUCKEN_MOD', 'EUCKEN', 'BAHADORI_G']

Default rankings of the low-pressure methods.

ranked_methods_P = ['COOLPROP', 'ELI_HANLEY_DENSE', 'CHUNG_DENSE', 'STIEL_THODOS_DENSE']

Default rankings of the high-pressure methods.

sorted_valid_methods = None

sorted_valid_methods, list: Stored methods which were found valid at a specific temperature; set by T_dependent_property.

sorted_valid_methods_P = None

sorted_valid_methods_P, list: Stored methods which were found valid at a specific temperature; set by TP_dependent_property.

tabular_data = None

tabular_data, dict: Stored (Ts, properties) for any tabular data; indexed by provided or autogenerated name.

tabular_data_P = None

tabular_data_P, dict: Stored (Ts, Ps, properties) for any tabular data; indexed by provided or autogenerated name.

tabular_data_interpolators = None

tabular_data_interpolators, dict: Stored (extrapolator, spline) tuples which are interp1d instances for each set of tabular data; indexed by tuple of (name, interpolation_T, interpolation_property, interpolation_property_inv) to ensure that if an interpolation transform is altered, the old interpolator which had been created is no longer used.

tabular_data_interpolators_P = None

tabular_data_interpolators_P, dict: Stored (extrapolator, spline) tuples which are interp2d instances for each set of tabular data; indexed by tuple of (name, interpolation_T, interpolation_P, interpolation_property, interpolation_property_inv) to ensure that if an interpolation transform is altered, the old interpolator which had been created is no longer used.

tabular_extrapolation_permitted = True

Allow tabular extrapolation by default.

test_method_validity(T, method)[source]

Method to check the validity of a temperature-dependent low-pressure method. For CSP methods, the all methods are considered valid from 0 K and up.

For tabular data, extrapolation outside of the range is used if tabular_extrapolation_permitted is set; if it is, the extrapolation is considered valid for all temperatures.

It is not guaranteed that a method will work or give an accurate prediction simply because this method considers the method valid. GHARAGHEIZI_G and BAHADORI_G are known to sometimes produce negative results.

Parameters:

T : float

Temperature at which to test the method, [K]

method : str

Name of the method to test

Returns:

validity : bool

Whether or not a method is valid

test_method_validity_P(T, P, method)[source]

Method to check the validity of a high-pressure method. For COOLPROP, the fluid must be both a gas and under the maximum pressure of the fluid’s EOS. The CSP method ELI_HANLEY_DENSE, CHUNG_DENSE, and STIEL_THODOS_DENSE are considered valid for all temperatures and pressures.

For tabular data, extrapolation outside of the range is used if tabular_extrapolation_permitted is set; if it is, the extrapolation is considered valid for all temperatures and pressures.

It is not guaranteed that a method will work or give an accurate prediction simply because this method considers the method valid.

Parameters:

T : float

Temperature at which to test the method, [K]

P : float

Pressure at which to test the method, [Pa]

method : str

Name of the method to test

Returns:

validity : bool

Whether or not a method is valid

units = 'W/m/K'
user_methods = None

user_methods, list: Stored methods which were specified by the user in a ranked order of preference; set by T_dependent_property.

user_methods_P = None

user_methods_P, list: Stored methods which were specified by the user in a ranked order of preference; set by TP_dependent_property.

thermo.thermal_conductivity.stiel_thodos_dense(T, MW, Tc, Pc, Vc, Zc, Vm, kg)[source]

Estimates the thermal conductivity of a gas at high pressure as a function of temperature using difference method of Stiel and Thodos [R548] as shown in [R549].

if rho_r < 0.5:

\[(\lambda-\lambda^\circ)\Gamma Z_c^5=1.22\times 10^{-2} [\exp(0.535 \rho_r)-1]\]

if 0.5 < rho_r < 2.0:

\[(\lambda-\lambda^\circ)\Gamma Z_c^5=1.22\times 10^{-2} [\exp(0.535 \rho_r)-1]\]

if 2 < rho_r < 2.8:

\[ \begin{align}\begin{aligned}(\lambda-\lambda^\circ)\Gamma Z_c^5=1.22\times 10^{-2} [\exp(0.535 \rho_r)-1]\\\Gamma = 210 \left(\frac{T_cMW^3}{P_c^4}\right)^{1/6}\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Tc : float

Critical temperature of the gas [K]

Pc : float

Critical pressure of the gas [Pa]

Vc : float

Critical volume of the gas [m^3/mol]

Zc : float

Critical compressibility of the gas [-]

Vm : float

Molar volume of the gas at T and P [m^3/mol]

kg : float

Low-pressure gas thermal conductivity [W/m/k]

Returns:

kg : float

Estimated dense gas thermal conductivity [W/m/k]

Notes

Pc is internally converted to bar.

References

[R548](1, 2) Stiel, Leonard I., and George Thodos. “The Thermal Conductivity of Nonpolar Substances in the Dense Gaseous and Liquid Regions.” AIChE Journal 10, no. 1 (January 1, 1964): 26-30. doi:10.1002/aic.690100114.
[R549](1, 2) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

>>> stiel_thodos_dense(T=378.15, MW=44.013, Tc=309.6, Pc=72.4E5,
... Vc=97.4E-6, Zc=0.274, Vm=144E-6, kg=2.34E-2)
0.041245574404863684
thermo.thermal_conductivity.eli_hanley_dense(T, MW, Tc, Vc, Zc, omega, Cvm, Vm)[source]

Estimates the thermal conductivity of a gas at high pressure as a function of temperature using the reference fluid method of Eli and Hanley [R550] as shown in [R551].

\[ \begin{align}\begin{aligned}Tr = min(Tr, 2)\\Vr = min(Vr, 2)\\f = \frac{T_c}{190.4}\theta\\h = \frac{V_c}{9.92E-5}\psi\\T_0 = T/f\\\rho_0 = \frac{16.04}{V}h\\\theta = 1 + (\omega-0.011)\left(0.09057 - 0.86276\ln Tr + \left( 0.31664 - \frac{0.46568}{Tr}\right) (V_r - 0.5)\right)\\\psi = [1 + (\omega - 0.011)(0.39490(V_r - 1.02355) - 0.93281(V_r - 0.75464)\ln T_r]\frac{0.288}{Z_c}\\\lambda_1 = 1944 \eta_0\\\lambda_2 = \left\{b_1 + b_2\left[b_3 - \ln \left(\frac{T_0}{b_4} \right)\right]^2\right\}\rho_0\\\lambda_3 = \exp\left(a_1 + \frac{a_2}{T_0}\right)\left\{\exp[(a_3 + \frac{a_4}{T_0^{1.5}})\rho_0^{0.1} + (\frac{\rho_0}{0.1617} - 1) \rho_0^{0.5}(a_5 + \frac{a_6}{T_0} + \frac{a_7}{T_0^2})] - 1\right\}\\\lambda^{**} = [\lambda_1 + \lambda_2 + \lambda_3]H\\H = \left(\frac{16.04}{MW}\right)^{0.5}f^{0.5}/h^{2/3}\\X = \left\{\left[1 - \frac{T}{f}\left(\frac{df}{dT}\right)_v \right] \frac{0.288}{Z_c}\right\}^{1.5}\\\left(\frac{df}{dT}\right)_v = \frac{T_c}{190.4}\left(\frac{d\theta} {d T}\right)_v\\\left(\frac{d\theta}{d T}\right)_v = (\omega-0.011)\left[ \frac{-0.86276}{T} + (V_r-0.5)\frac{0.46568T_c}{T^2}\right]\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Tc : float

Critical temperature of the gas [K]

Vc : float

Critical volume of the gas [m^3/mol]

Zc : float

Critical compressibility of the gas []

omega : float

Acentric factor of the gas [-]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

Vm : float

Volume of the gas at T and P [m^3/mol]

Returns:

kg : float

Estimated dense gas thermal conductivity [W/m/k]

Notes

Reference fluid is Methane. MW internally converted to kg/g-mol.

References

[R550](1, 2) Ely, James F., and H. J. M. Hanley. “Prediction of Transport Properties. 2. Thermal Conductivity of Pure Fluids and Mixtures.” Industrial & Engineering Chemistry Fundamentals 22, no. 1 (February 1, 1983): 90-97. doi:10.1021/i100009a016.
[R551](1, 2) Reid, Robert C.; Prausnitz, John M.; Poling, Bruce E. Properties of Gases and Liquids. McGraw-Hill Companies, 1987.

Examples

>>> eli_hanley_dense(T=473., MW=42.081, Tc=364.9, Vc=1.81E-4, Zc=0.274,
... omega=0.144, Cvm=82.70, Vm=1.721E-4)
0.06038475936515042
thermo.thermal_conductivity.chung_dense(T, MW, Tc, Vc, omega, Cvm, Vm, mu, dipole, association=0)[source]

Estimates the thermal conductivity of a gas at high pressure as a function of temperature using the reference fluid method of Chung [R552] as shown in [R553].

\[ \begin{align}\begin{aligned}\lambda = \frac{31.2 \eta^\circ \Psi}{M'}(G_2^{-1} + B_6 y)+qB_7y^2T_r^{1/2}G_2\\\Psi = 1 + \alpha \left\{[0.215+0.28288\alpha-1.061\beta+0.26665Z]/ [0.6366+\beta Z + 1.061 \alpha \beta]\right\}\\\alpha = \frac{C_v}{R}-1.5\\\beta = 0.7862-0.7109\omega + 1.3168\omega^2\\Z=2+10.5T_r^2\\q = 3.586\times 10^{-3} (T_c/M')^{1/2}/V_c^{2/3}\\y = \frac{V_c}{6V}\\G_1 = \frac{1-0.5y}{(1-y)^3}\\G_2 = \frac{(B_1/y)[1-\exp(-B_4y)]+ B_2G_1\exp(B_5y) + B_3G_1} {B_1B_4 + B_2 + B_3}\\B_i = a_i + b_i \omega + c_i \mu_r^4 + d_i \kappa\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of the gas [K]

MW : float

Molecular weight of the gas [g/mol]

Tc : float

Critical temperature of the gas [K]

Vc : float

Critical volume of the gas [m^3/mol]

omega : float

Acentric factor of the gas [-]

Cvm : float

Molar contant volume heat capacity of the gas [J/mol/K]

Vm : float

Molar volume of the gas at T and P [m^3/mol]

mu : float

Low-pressure gas viscosity [Pa*S]

dipole : float

Dipole moment [debye]

association : float, optional

Association factor [-]

Returns:

kg : float

Estimated dense gas thermal conductivity [W/m/k]

Notes

MW internally converted to kg/g-mol. Vm internally converted to mL/mol. [R552] is not the latest form as presented in [R552]. Association factor is assumed 0. Relates to the polarity of the gas.

Coefficients as follows: ais = [2.4166E+0, -5.0924E-1, 6.6107E+0, 1.4543E+1, 7.9274E-1, -5.8634E+0, 9.1089E+1]

bis = [7.4824E-1, -1.5094E+0, 5.6207E+0, -8.9139E+0, 8.2019E-1, 1.2801E+1, 1.2811E+2]

cis = [-9.1858E-1, -4.9991E+1, 6.4760E+1, -5.6379E+0, -6.9369E-1, 9.5893E+0, -5.4217E+1]

dis = [1.2172E+2, 6.9983E+1, 2.7039E+1, 7.4344E+1, 6.3173E+0, 6.5529E+1, 5.2381E+2]

References

[R552](1, 2, 3, 4) Chung, Ting Horng, Mohammad Ajlan, Lloyd L. Lee, and Kenneth E. Starling. “Generalized Multiparameter Correlation for Nonpolar and Polar Fluid Transport Properties.” Industrial & Engineering Chemistry Research 27, no. 4 (April 1, 1988): 671-79. doi:10.1021/ie00076a024.
[R553](1, 2) Poling, Bruce E. The Properties of Gases and Liquids. 5th edition. New York: McGraw-Hill Professional, 2000.

Examples

>>> chung_dense(T=473., MW=42.081, Tc=364.9, Vc=184.6E-6, omega=0.142,
... Cvm=82.67, Vm=172.1E-6, mu=134E-7, dipole=0.4)
0.06160570379787278
thermo.thermal_conductivity.Lindsay_Bromley(T, ys, ks, mus, Tbs, MWs)[source]

Calculates thermal conductivity of a gas mixture according to mixing rules in [R554] and also in [R555].

\[ \begin{align}\begin{aligned}k = \sum \frac{y_i k_i}{\sum y_i A_{ij}}\\A_{ij} = \frac{1}{4} \left\{ 1 + \left[\frac{\eta_i}{\eta_j} \left(\frac{MW_j}{MW_i}\right)^{0.75} \left( \frac{T+S_i}{T+S_j}\right) \right]^{0.5} \right\}^2 \left( \frac{T+S_{ij}}{T+S_i}\right)\\S_{ij} = S_{ji} = (S_i S_j)^{0.5}\end{aligned}\end{align} \]
Parameters:

T : float

Temperature of gas [K]

ys : float

Mole fractions of gas components

ks : float

Liquid thermal conductivites of all components, [W/m/K]

mus : float

Gas viscosities of all components, [Pa*S]

Tbs : float

Boiling points of all components, [K]

MWs : float

Molecular weights of all components, [g/mol]

Returns:

kg : float

Thermal conductivity of gas mixture, [W/m/K]

Notes

This equation is entirely dimensionless; all dimensions cancel. The example is from [R555]; all results agree. The original source has not been reviewed.

DIPPR Procedure 9D: Method for the Thermal Conductivity of Gas Mixtures

Average deviations of 4-5% for 77 binary mixtures reviewed in [R555], from 1342 points; also six ternary mixtures (70 points); max deviation observed was 40%. (DIPPR)

TODO: Finish documenting this.

References

[R554](1, 2) Lindsay, Alexander L., and LeRoy A. Bromley. “Thermal Conductivity of Gas Mixtures.” Industrial & Engineering Chemistry 42, no. 8 (August 1, 1950): 1508-11. doi:10.1021/ie50488a017.
[R555](1, 2, 3, 4) Danner, Ronald P, and Design Institute for Physical Property Data. Manual for Predicting Chemical Process Design Data. New York, N.Y, 1982.

Examples

>>> Lindsay_Bromley(323.15, [0.23, 0.77], [1.939E-2, 1.231E-2], [1.002E-5, 1.015E-5], [248.31, 248.93], [46.07, 50.49])
0.01390264417969313
class thermo.thermal_conductivity.ThermalConductivityGasMixture(MWs=[], Tbs=[], CASs=[], ThermalConductivityGases=[], ViscosityGases=[])[source]

Bases: thermo.utils.MixtureProperty

Class for dealing with thermal conductivity of a gas mixture as a function of temperature, pressure, and composition. Consists of one mixing rule specific to gas thremal conductivity, and mole weighted averaging.

Prefered method is Lindsay_Bromley which requires mole fractions, pure component viscosities and thermal conductivities, and the boiling point and molecular weight of each pure component. This is substantially better than the ideal mixing rule based on mole fractions, SIMPLE which is also available.

Parameters:

MWs : list[float], optional

Molecular weights of all species in the mixture, [g/mol]

Tbs : list[float], optional

Boiling points of all species in the mixture, [K]

CASs : str, optional

The CAS numbers of all species in the mixture

ThermalConductivityGases : list[ThermalConductivityGas], optional

ThermalConductivityGas objects created for all species in the mixture, normally created by thermo.chemical.Chemical.

ViscosityGases : list[ViscosityGas], optional

ViscosityGas objects created for all species in the mixture, normally created by thermo.chemical.Chemical.

See also

Lindsay_Bromley

Notes

To iterate over all methods, use the list stored in thermal_conductivity_gas_methods.

LINDSAY_BROMLEY:
Mixing rule described in Lindsay_Bromley.
SIMPLE:
Mixing rule described in thermo.utils.mixing_simple.

References

[R556]Poling, Bruce E. The Properties of Gases and Liquids. 5th edition. New York: McGraw-Hill Professional, 2000.

Attributes

TP_zs_ws_cached  
method  
prop_cached  

Methods

__call__(T, P, zs, ws) Convenience method to calculate the property; calls mixture_property.
calculate(T, P, zs, ws, method) Method to calculate thermal conductivity of a gas mixture at temperature T, pressure P, mole fractions zs and weight fractions ws with a given method.
calculate_derivative_P(P, T, zs, ws, method) Method to calculate a derivative of a mixture property with respect to pressure at constant temperature and composition of a given order using a specified method.
calculate_derivative_T(T, P, zs, ws, method) Method to calculate a derivative of a mixture property with respect to temperature at constant pressure and composition of a given order using a specified method.
load_all_methods() Method to initialize the object by precomputing any values which may be used repeatedly and by retrieving mixture-specific variables.
mixture_property(T, P, zs, ws) Method to calculate the property with sanity checking and without specifying a specific method.
plot_isobar(P, zs, ws[, Tmin, Tmax, ...]) Method to create a plot of the property vs temperature at a specific pressure and composition according to either a specified list of methods, or user methods (if set), or all methods.
plot_isotherm(T, zs, ws[, Pmin, Pmax, ...]) Method to create a plot of the property vs pressure at a specified temperature and composition according to either a specified list of methods, or the user methods (if set), or all methods.
plot_property(zs, ws[, Tmin, Tmax, Pmin, ...]) Method to create a plot of the property vs temperature and pressure according to either a specified list of methods, or user methods (if set), or all methods.
property_derivative_P(T, P, zs, ws[, order]) Method to calculate a derivative of a mixture property with respect to pressure at constant temperature and composition, of a given order.
property_derivative_T(T, P, zs, ws[, order]) Method to calculate a derivative of a mixture property with respect to temperature at constant pressure and composition, of a given order.
select_valid_methods(T, P, zs, ws) Method to obtain a sorted list of methods which are valid at T, P, zs, ws, and possibly Vfls, according to test_method_validity.
set_user_method(user_methods[, forced]) Method to set the T, P, and composition dependent property methods desired for consideration by the user.
test_method_validity(T, P, zs, ws, method) Method to test the validity of a specified method for the given conditions.
test_property_validity(prop) Method to test the validity of a calculated property.
Tmax = None

Maximum temperature at which no method can calculate the gas thermal conductivity above.

Tmin = None

Minimum temperature at which no method can calculate the gas thermal conductivity under.

all_methods = None

Set of all methods available for a given set of information; filled by load_all_methods.

calculate(T, P, zs, ws, method)[source]

Method to calculate thermal conductivity of a gas mixture at temperature T, pressure P, mole fractions zs and weight fractions ws with a given method.

This method has no exception handling; see mixture_property for that.

Parameters:

T : float

Temperature at which to calculate the property, [K]

P : float

Pressure at which to calculate the property, [Pa]

zs : list[float]

Mole fractions of all species in the mixture, [-]

ws : list[float]

Weight fractions of all species in the mixture, [-]

method : str

Name of the method to use

Returns:

kg : float

Thermal conductivity of gas mixture, [W/m/K]

load_all_methods()[source]

Method to initialize the object by precomputing any values which may be used repeatedly and by retrieving mixture-specific variables. All data are stored as attributes. This method also sets Tmin, Tmax, and all_methods as a set of methods which should work to calculate the property.

Called on initialization only. See the source code for the variables at which the coefficients are stored. The coefficients can safely be altered once the class is initialized. This method can be called again to reset the parameters.

name = 'gas thermal conductivity'
property_max = 10.0

Maximum valid value of gas thermal conductivity. Generous limit.

property_min = 0.0

Mimimum valid value of gas thermal conductivity.

ranked_methods = ['LINDSAY_BROMLEY', 'SIMPLE']
sorted_valid_methods = None

sorted_valid_methods, list: Stored methods which were found valid at a specific temperature; set by mixture_property.

test_method_validity(T, P, zs, ws, method)[source]

Method to test the validity of a specified method for the given conditions. No methods have implemented checks or strict ranges of validity.

Parameters:

T : float

Temperature at which to check method validity, [K]

P : float

Pressure at which to check method validity, [Pa]

zs : list[float]

Mole fractions of all species in the mixture, [-]

ws : list[float]

Weight fractions of all species in the mixture, [-]

method : str

Method name to use

Returns:

validity : bool

Whether or not a specifid method is valid

units = 'W/m/K'
user_methods = None

user_methods, list: Stored methods which were specified by the user in a ranked order of preference; set by mixture_property.