Density/Volume (thermo.volume)¶
This module contains implementations of TDependentProperty
representing liquid, vapor, and solid volume. A variety of estimation
and data methods are available as included in the chemicals library.
Additionally liquid, vapor, and solid mixture volume predictor objects
are implemented subclassing MixtureProperty.
For reporting bugs, adding feature requests, or submitting pull requests, please use the GitHub issue tracker.
Pure Liquid Volume¶
- class thermo.volume.VolumeLiquid(MW=None, Tb=None, Tc=None, Pc=None, Vc=None, Zc=None, omega=None, dipole=None, Psat=None, CASRN='', has_hydroxyl=False, extrapolation='constant', **kwargs)[source]¶
Bases:
TPDependentPropertyClass for dealing with liquid molar volume 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 are six coefficient-based methods from five data sources, one source of tabular information, one source of constant values, eight corresponding-states estimators, the external library CoolProp and the equation of state.
For high-pressure liquids (also, <1 atm liquids), there is one corresponding-states estimator, and the external library CoolProp.
- Parameters:
- CASRN
str,optional The CAS number of the chemical
- 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, [debye]
- Psat
floatorcallable,optional Vapor pressure at a given temperature, or callable for the same [Pa]
- eos
object,optional Equation of State object after
thermo.eos.GCEOS- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- extrapolation
strorNone None to not extrapolate; see
TDependentPropertyfor a full list of all options, [-]- method
strorNone,optional If specified, use this method by default and do not use the ranked sorting; an exception is raised if this is not a valid method for the provided inputs, [-]
- CASRN
- Attributes:
Methods
calculate(T, method)Method to calculate low-pressure liquid molar volume at tempearture T with a given method.
calculate_P(T, P, method)Method to calculate pressure-dependent liquid molar volume at temperature T and pressure P with a given method.
test_method_validity(T, method)Method to test the validity of a specified method for a given temperature.
test_method_validity_P(T, P, method)Method to check the validity of a high-pressure method.
See also
chemicals.volume.Yen_Woods_saturationchemicals.volume.Rackettchemicals.volume.Yamada_Gunnchemicals.volume.Townsend_Haleschemicals.volume.Bhirud_normalchemicals.volume.COSTALDchemicals.volume.Campbell_Thodoschemicals.volume.SNM0chemicals.volume.CRC_inorganicchemicals.volume.COSTALD_compressed
Notes
A string holding each method’s name is assigned to the following variables in this module, intended as the most convenient way to refer to a method. To iterate over all methods, use the lists stored in
volume_liquid_methodsandvolume_liquid_methods_Pfor low and high pressure methods respectively.Low pressure methods:
- DIPPR_PERRY_8E:
A simple polynomial as expressed in [1], with data available for 344 fluids. Temperature limits are available for all fluids. Believed very accurate.
- VDI_PPDS:
Coefficients for a equation form developed by the PPDS (
EQ116in terms of mass density), published openly in [3]. Valid up to the critical temperature, and extrapolates to very low temperatures well.- MMSNM0FIT:
Uses a fit coefficient for better accuracy in the
SNM0method, Coefficients available for 73 fluids from [2]. Valid to the critical point.- HTCOSTALDFIT:
A method with two fit coefficients to the
COSTALDmethod. Coefficients available for 192 fluids, from [3]. Valid to the critical point.- RACKETTFIT:
The
Rackettmethod, with a fit coefficient Z_RA. Data is available for 186 fluids, from [3]. Valid to the critical point.- CRC_INORG_L:
Single-temperature coefficient linear model in terms of mass density for the density of inorganic liquids; converted to molar units internally. Data is available for 177 fluids normally valid over a narrow range above the melting point, from [4]; described in
CRC_inorganic.- MMSNM0:
CSP method, described in
SNM0.- HTCOSTALD:
CSP method, described in
COSTALD.- YEN_WOODS_SAT:
CSP method, described in
Yen_Woods_saturation.- RACKETT:
CSP method, described in
Rackett.- YAMADA_GUNN:
CSP method, described in
Yamada_Gunn.- BHIRUD_NORMAL:
CSP method, described in
Bhirud_normal.- TOWNSEND_HALES:
CSP method, described in
Townsend_Hales.- CAMPBELL_THODOS:
CSP method, described in
Campbell_Thodos.- 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 [5]. Very slow.
- HEOS_FIT:
A series of higher-order polynomial fits to the calculated results from fundamental helmholtz equations of state as calculated with REFPROP
- CRC_INORG_L_CONST:
Constant inorganic liquid densities, in [4].
- VDI_TABULAR:
Tabular data in [6] along the saturation curve; interpolation is as set by the user or the default.
- EOS:
Equation of state provided by user.
High pressure methods:
- COSTALD_COMPRESSED:
CSP method, described in
COSTALD_compressed. Calculates a low-pressure molar volume first, usingT_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 [5]. Very slow, but unparalled in accuracy for pressure dependence.
- EOS:
Equation of state provided by user.
References
[1]Green, Don, and Robert Perry. Perry’s Chemical Engineers’ Handbook, 8E. McGraw-Hill Professional, 2007.
[2]Mchaweh, A., A. Alsaygh, Kh. Nasrifar, and M. Moshfeghian. “A Simplified Method for Calculating Saturated Liquid Densities.” Fluid Phase Equilibria 224, no. 2 (October 1, 2004): 157-67. doi:10.1016/j.fluid.2004.06.054
[3] (1,2,3)Hankinson, Risdon W., and George H. Thomson. “A New Correlation for Saturated Densities of Liquids and Their Mixtures.” AIChE Journal 25, no. 4 (1979): 653-663. doi:10.1002/aic.690250412
[4] (1,2)Haynes, W.M., Thomas J. Bruno, and David R. Lide. CRC Handbook of Chemistry and Physics. [Boca Raton, FL]: CRC press, 2014.
[5] (1,2)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/
[6]Gesellschaft, V. D. I., ed. VDI Heat Atlas. 2nd edition. Berlin; New York:: Springer, 2010.
- property Tmax¶
Maximum temperature (K) at which the current method can calculate the property.
- property Tmin¶
Minimum temperature (K) at which the current method can calculate the property.
- calculate(T, method)[source]¶
Method to calculate low-pressure liquid molar volume at tempearture T with a given method.
This method has no exception handling; see
T_dependent_propertyfor that.
- calculate_P(T, P, method)[source]¶
Method to calculate pressure-dependent liquid molar volume at temperature T and pressure P with a given method.
This method has no exception handling; see
TP_dependent_propertyfor that.
- name = 'Liquid molar volume'¶
- property_max = 0.002¶
Maximum valid value of liquid molar volume. Generous limit.
- property_min = 0¶
Mimimum valid value of liquid molar volume. It should normally occur at the triple point, and be well above this.
- ranked_methods = ['HEOS_FIT', 'DIPPR_PERRY_8E', 'VDI_PPDS', 'COOLPROP', 'MMSNM0FIT', 'VDI_TABULAR', 'HTCOSTALDFIT', 'RACKETTFIT', 'CRC_INORG_L', 'CRC_INORG_L_CONST', 'COMMON_CHEMISTRY', 'MMSNM0', 'HTCOSTALD', 'YEN_WOODS_SAT', 'RACKETT', 'YAMADA_GUNN', 'BHIRUD_NORMAL', 'TOWNSEND_HALES', 'CAMPBELL_THODOS', 'EOS']¶
Default rankings of the low-pressure methods.
- ranked_methods_P = ['COOLPROP', 'COSTALD_COMPRESSED', 'EOS', 'NEGLECT_P']¶
Default rankings of the high-pressure methods.
- test_method_validity(T, method)¶
Method to test the validity of a specified method for a given temperature. Demo function for testing only; must be implemented according to the methods available for each individual method. Include the interpolation check here.
- 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. COSTALD_COMPRESSED is considered valid for all values of temperature and pressure. However, it very often will not actually work, due to the form of the polynomial in terms of Tr, the result of which is raised to a negative power. For tabular data, extrapolation outside of the range is used if
tabular_extrapolation_permittedis 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.
- units = 'm^3/mol'¶
- thermo.volume.volume_liquid_methods = ['HEOS_FIT', 'DIPPR_PERRY_8E', 'VDI_PPDS', 'COOLPROP', 'MMSNM0FIT', 'VDI_TABULAR', 'HTCOSTALDFIT', 'RACKETTFIT', 'CRC_INORG_L', 'CRC_INORG_L_CONST', 'COMMON_CHEMISTRY', 'MMSNM0', 'HTCOSTALD', 'YEN_WOODS_SAT', 'RACKETT', 'YAMADA_GUNN', 'BHIRUD_NORMAL', 'TOWNSEND_HALES', 'CAMPBELL_THODOS', 'EOS']¶
Holds all low-pressure methods available for the
VolumeLiquidclass, for use in iterating over them.
- thermo.volume.volume_liquid_methods_P = ['COOLPROP', 'COSTALD_COMPRESSED', 'EOS', 'NEGLECT_P']¶
Holds all high-pressure methods available for the
VolumeLiquidclass, for use in iterating over them.
Pure Gas Volume¶
- class thermo.volume.VolumeGas(CASRN='', MW=None, Tc=None, Pc=None, omega=None, dipole=None, extrapolation=None, **kwargs)[source]¶
Bases:
TPDependentPropertyClass for dealing with gas molar volume as a function of temperature and pressure.
All considered methods are both temperature and pressure dependent. Included are four CSP methods for calculating second virial coefficients, one source of polynomials for calculating second virial coefficients, one equation of state (Peng-Robinson), and the ideal gas law.
- Parameters:
- CASRN
str,optional The CAS number of the chemical
- MW
float,optional Molecular weight, [g/mol]
- Tc
float,optional Critical temperature, [K]
- Pc
float,optional Critical pressure, [Pa]
- omega
float,optional Acentric factor, [-]
- dipole
float,optional Dipole, [debye]
- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- extrapolation
strorNone None to not extrapolate; see
TDependentPropertyfor a full list of all options, [-]- method
strorNone,optional If specified, use this method by default and do not use the ranked sorting; an exception is raised if this is not a valid method for the provided inputs, [-]
- CASRN
- Attributes:
Methods
calculate(T, method)Method to calculate a property with a specified method, with no validity checking or error handling.
calculate_P(T, P, method)Method to calculate pressure-dependent gas molar volume at temperature T and pressure P with a given method.
test_method_validity(T, method)Method to test the validity of a specified method for a given temperature.
test_method_validity_P(T, P, method)Method to check the validity of a pressure and temperature dependent gas molar volume method.
See also
Notes
A string holding each method’s name is assigned to the following variables in this module, intended as the most convenient way to refer to a method. To iterate over all methods, use the list stored in
volume_gas_methods.- PR:
Peng-Robinson Equation of State. See the appropriate module for more information.
- CRC_VIRIAL:
Short polynomials, for 105 fluids from [1]. The full expression is:
- TSONOPOULOS_EXTENDED:
CSP method for second virial coefficients, described in
chemicals.virial.BVirial_Tsonopoulos_extended- TSONOPOULOS:
CSP method for second virial coefficients, described in
chemicals.virial.BVirial_Tsonopoulos- ABBOTT:
CSP method for second virial coefficients, described in
chemicals.virial.BVirial_Abbott. This method is the simplest CSP method implemented.- PITZER_CURL:
CSP method for second virial coefficients, described in
chemicals.virial.BVirial_Pitzer_Curl.- 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 [2]. Very slow, but unparalled in accuracy for pressure dependence.
References
[1]Haynes, W.M., Thomas J. Bruno, and David R. Lide. CRC Handbook of Chemistry and Physics. [Boca Raton, FL]: CRC press, 2014.
[2]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/
- property Tmax¶
Maximum temperature (K) at which the current method can calculate the property.
- property Tmin¶
Minimum temperature (K) at which the current method can calculate the property.
- calculate(T, method)¶
Method to calculate a property with a specified method, with no validity checking or error handling. Demo function for testing only; must be implemented according to the methods available for each individual method. Include the interpolation call here.
- calculate_P(T, P, method)[source]¶
Method to calculate pressure-dependent gas molar volume at temperature T and pressure P with a given method.
This method has no exception handling; see
TP_dependent_propertyfor that.
- name = 'Gas molar volume'¶
- property_max = 10000000000.0¶
Maximum valid value of gas molar volume. Set roughly at an ideal gas at 1 Pa and 2 billion K.
- property_min = 0¶
Mimimum valid value of gas molar volume. It should normally be well above this.
- ranked_methods = []¶
Default rankings of the low-pressure methods.
- ranked_methods_P = ['IDEAL', 'COOLPROP', 'EOS', 'TSONOPOULOS_EXTENDED', 'TSONOPOULOS', 'ABBOTT', 'PITZER_CURL', 'CRC_VIRIAL']¶
Default rankings of the pressure-dependent methods.
- test_method_validity(T, method)¶
Method to test the validity of a specified method for a given temperature. Demo function for testing only; must be implemented according to the methods available for each individual method. Include the interpolation check here.
- test_method_validity_P(T, P, method)[source]¶
Method to check the validity of a pressure and temperature dependent gas molar volume method. For the four CSP methods that calculate second virial coefficient, the method is considered valid for all temperatures and pressures, with validity checking based on the result only. For CRC_VIRIAL, there is no limit but there should be one; at some conditions, a negative volume will result! For COOLPROP, the fluid must be both a gas at the given conditions and under the maximum pressure of the fluid’s EOS.
For the equation of state PR, the determined phase must be a gas. For IDEAL, there are no limits.
For tabular data, extrapolation outside of the range is used if
tabular_extrapolation_permittedis 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.
- units = 'm^3/mol'¶
Pure Solid Volume¶
- class thermo.volume.VolumeSolid(CASRN='', MW=None, Tt=None, Vml_Tt=None, extrapolation='linear', **kwargs)[source]¶
Bases:
TDependentPropertyClass for dealing with solid molar volume as a function of temperature. Consists of one constant value source, and one simple estimator based on liquid molar volume.
- Parameters:
- CASRN
str,optional CAS number
- MW
float,optional Molecular weight, [g/mol]
- Tt
float,optional Triple temperature
- Vml_Tt
float,optional Liquid molar volume at the triple point
- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- extrapolation
strorNone None to not extrapolate; see
TDependentPropertyfor a full list of all options, [-]- method
strorNone,optional If specified, use this method by default and do not use the ranked sorting; an exception is raised if this is not a valid method for the provided inputs, [-]
- CASRN
Methods
calculate(T, method)Method to calculate the molar volume of a solid at tempearture T with a given method.
test_method_validity(T, method)Method to test the validity of a specified method for a given temperature.
See also
Notes
A string holding each method’s name is assigned to the following variables in this module, intended as the most convenient way to refer to a method. To iterate over all methods, use the list stored in
volume_solid_methods.- CRC_INORG_S:
Constant values in [1], for 1872 chemicals.
- GOODMAN:
Simple method using the liquid molar volume. Good up to 0.3*Tt. See
Goodmanfor details.
References
[1]Haynes, W.M., Thomas J. Bruno, and David R. Lide. CRC Handbook of Chemistry and Physics. [Boca Raton, FL]: CRC press, 2014.
- calculate(T, method)[source]¶
Method to calculate the molar volume of a solid at tempearture T with a given method.
This method has no exception handling; see
T_dependent_propertyfor that.
- name = 'Solid molar volume'¶
- property_max = 0.002¶
Maximum value of Heat capacity; arbitrarily set to 0.002, as the largest in the data is 0.00136.
- property_min = 0.0¶
Molar volume cannot be under 0.
- ranked_methods = ['CRC_INORG_S', 'GOODMAN']¶
Default rankings of the available methods.
- test_method_validity(T, method)¶
Method to test the validity of a specified method for a given temperature. Demo function for testing only; must be implemented according to the methods available for each individual method. Include the interpolation check here.
- units = 'm^3/mol'¶
- thermo.volume.volume_solid_methods = ['GOODMAN', 'CRC_INORG_S']¶
Holds all methods available for the
VolumeSolidclass, for use in iterating over them.
Mixture Liquid Volume¶
- class thermo.volume.VolumeLiquidMixture(MWs=[], Tcs=[], Pcs=[], Vcs=[], Zcs=[], omegas=[], CASs=[], VolumeLiquids=[], load_data=True, **kwargs)[source]¶
Bases:
MixturePropertyClass for dealing with the molar volume of a liquid mixture as a function of temperature, pressure, and composition. Consists of one electrolyte-specific method, four corresponding states methods which do not use pure-component volumes, and one mole-weighted averaging method.
Prefered method is LINEAR, or LALIBERTE if the mixture is aqueous and has electrolytes.
- Parameters:
- MWs
list[float],optional Molecular weights of all species in the mixture, [g/mol]
- Tcs
list[float],optional Critical temperatures of all species in the mixture, [K]
- Pcs
list[float],optional Critical pressures of all species in the mixture, [Pa]
- Vcs
list[float],optional Critical molar volumes of all species in the mixture, [m^3/mol]
- Zcs
list[float],optional Critical compressibility factors of all species in the mixture, [Pa]
- omegas
list[float],optional Accentric factors of all species in the mixture, [-]
- CASs
list[str],optional The CAS numbers of all species in the mixture, [-]
- VolumeLiquids
list[VolumeLiquid],optional VolumeLiquid objects created for all species in the mixture, [-]
- correct_pressure_purebool,
optional Whether to try to use the better pressure-corrected pure component models or to use only the T-only dependent pure species models, [-]
- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- MWs
Methods
calculate(T, P, zs, ws, method)Method to calculate molar volume of a liquid mixture at temperature T, pressure P, mole fractions zs and weight fractions ws with a given method.
test_method_validity(T, P, zs, ws, method)Method to test the validity of a specified method for the given conditions.
Notes
To iterate over all methods, use the list stored in
volume_liquid_mixture_methods.- LALIBERTE:
Aqueous electrolyte model equation with coefficients; see
thermo.electrochem.Laliberte_densityfor more details.- COSTALD_MIXTURE:
CSP method described in
COSTALD_mixture.- COSTALD_MIXTURE_FIT:
CSP method described in
COSTALD_mixture, with two mixture composition independent fit coefficients, Vc and omega.- RACKETT:
CSP method described in
Rackett_mixture.- RACKETT_PARAMETERS:
CSP method described in
Rackett_mixture, but with a mixture independent fit coefficient for compressibility factor for each species.- LINEAR:
Linear mole fraction mixing rule described in
mixing_simple; also known as Amgat’s law.
References
[1]Poling, Bruce E. The Properties of Gases and Liquids. 5th edition. New York: McGraw-Hill Professional, 2000.
- Tmax¶
Maximum temperature at which no method can calculate the property above.
- Tmin¶
Minimum temperature at which no method can calculate the property under.
- calculate(T, P, zs, ws, method)[source]¶
Method to calculate molar volume of a liquid 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_propertyfor that.- Parameters:
- Returns:
- Vm
float Molar volume of the liquid mixture at the given conditions, [m^3/mol]
- Vm
- name = 'Liquid volume'¶
- property_max = 0.002¶
Maximum valid value of liquid molar volume. Generous limit.
- property_min = 0¶
Mimimum valid value of liquid molar volume. It should normally occur at the triple point, and be well above this.
- ranked_methods = ['LALIBERTE', 'LINEAR', 'COSTALD_MIXTURE_FIT', 'RACKETT_PARAMETERS', 'COSTALD_MIXTURE', 'RACKETT']¶
- test_method_validity(T, P, zs, ws, method)[source]¶
Method to test the validity of a specified method for the given conditions.
- Parameters:
- Returns:
- validitybool
Whether or not a specifid method is valid
- units = 'm^3/mol'¶
- thermo.volume.volume_liquid_mixture_methods = ['LALIBERTE', 'LINEAR', 'COSTALD_MIXTURE_FIT', 'RACKETT_PARAMETERS', <function COSTALD>, 'RACKETT']¶
Holds all low-pressure methods available for the
VolumeLiquidMixtureclass, for use in iterating over them.
Mixture Gas Volume¶
- class thermo.volume.VolumeGasMixture(eos=None, CASs=[], VolumeGases=[], MWs=[], load_data=False, **kwargs)[source]¶
Bases:
MixturePropertyClass for dealing with the molar volume of a gas mixture as a function of temperature, pressure, and composition. Consists of an equation of state, the ideal gas law, and one mole-weighted averaging method.
Prefered method is EOS, or IDEAL if critical properties of components are unavailable.
- Parameters:
- CASs
list[str],optional The CAS numbers of all species in the mixture, [-]
- VolumeGases
list[VolumeGas],optional VolumeGas objects created for all species in the mixture, [-]
- eos
container[EOSObject],optional Equation of state mixture object, [-]
- MWs
list[float],optional Molecular weights of all species in the mixture, [g/mol]
- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- CASs
Methods
calculate(T, P, zs, ws, method)Method to calculate molar volume of a gas mixture at temperature T, pressure P, mole fractions zs and weight fractions ws with a given method.
test_method_validity(T, P, zs, ws, method)Method to test the validity of a specified method for the given conditions.
See also
Notes
To iterate over all methods, use the list stored in
volume_gas_mixture_methods.- EOS:
Equation of state mixture object; see
thermo.eos_mixfor more details.- LINEAR:
Linear mole fraction mixing rule described in
mixing_simple; more correct than the ideal gas law.- IDEAL:
The ideal gas law.
References
[1]Poling, Bruce E. The Properties of Gases and Liquids. 5th edition. New York: McGraw-Hill Professional, 2000.
- Tmax¶
Maximum temperature at which no method can calculate the property above.
- Tmin¶
Minimum temperature at which no method can calculate the property under.
- calculate(T, P, zs, ws, method)[source]¶
Method to calculate molar volume 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_propertyfor that.- Parameters:
- Returns:
- Vm
float Molar volume of the gas mixture at the given conditions, [m^3/mol]
- Vm
- name = 'Gas volume'¶
- property_max = 10000000000.0¶
Maximum valid value of gas molar volume. Set roughly at an ideal gas at 1 Pa and 2 billion K.
- property_min = 0.0¶
Mimimum valid value of gas molar volume. It should normally be well above this.
- ranked_methods = ['EOS', 'LINEAR', 'IDEAL', 'LINEAR_MISSING_IDEAL']¶
- test_method_validity(T, P, zs, ws, method)[source]¶
Method to test the validity of a specified method for the given conditions.
- Parameters:
- Returns:
- validitybool
Whether or not a specifid method is valid
- units = 'm^3/mol'¶
- thermo.volume.volume_gas_mixture_methods = ['EOS', 'LINEAR', 'IDEAL']¶
Holds all methods available for the
VolumeGasMixtureclass, for use in iterating over them.
Mixture Solid Volume¶
- class thermo.volume.VolumeSolidMixture(CASs=[], VolumeSolids=[], MWs=[], load_data=True, **kwargs)[source]¶
Bases:
MixturePropertyClass for dealing with the molar volume of a solid mixture as a function of temperature, pressure, and composition. Consists of only mole-weighted averaging.
- Parameters:
- CASs
list[str],optional The CAS numbers of all species in the mixture, [-]
- VolumeSolids
list[VolumeSolid],optional VolumeSolid objects created for all species in the mixture, [-]
- MWs
list[float],optional Molecular weights of all species in the mixture, [g/mol]
- load_databool,
optional If False, do not load property coefficients from data sources in files [-]
- CASs
Methods
calculate(T, P, zs, ws, method)Method to calculate molar volume of a solid mixture at temperature T, pressure P, mole fractions zs and weight fractions ws with a given method.
test_method_validity(T, P, zs, ws, method)Method to test the validity of a specified method for the given conditions.
Notes
To iterate over all methods, use the list stored in
volume_solid_mixture_methods.- LINEAR:
Linear mole fraction mixing rule described in
mixing_simple.
- Tmax¶
Maximum temperature at which no method can calculate the property above.
- Tmin¶
Minimum temperature at which no method can calculate the property under.
- calculate(T, P, zs, ws, method)[source]¶
Method to calculate molar volume of a solid 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_propertyfor that.- Parameters:
- Returns:
- Vm
float Molar volume of the solid mixture at the given conditions, [m^3/mol]
- Vm
- name = 'Solid molar volume'¶
- property_max = 0.002¶
Maximum value of Heat capacity; arbitrarily set to 0.002, as the largest in the data is 0.00136.
- property_min = 0¶
Molar volume cannot be under 0.
- ranked_methods = ['LINEAR']¶
- test_method_validity(T, P, zs, ws, method)[source]¶
Method to test the validity of a specified method for the given conditions.
- Parameters:
- Returns:
- validitybool
Whether or not a specifid method is valid
- units = 'm^3/mol'¶
- thermo.volume.volume_solid_mixture_methods = ['LINEAR']¶
Holds all methods available for the
VolumeSolidMixtureclass, for use in iterating over them.