idaes.property_models package¶

idaes.property_models.iapws95 module¶

IDAES IAPWS-95 Steam properties

Dropped all critical enhancments and non-analytic terms ment to improve accruacy near the critical point. These tend to cause singularities in the equations, and it is assumend that we will try to avoid operating very close to the critical point.

References: (some of this is only used in the C++ part)
International Association for the Properties of Water and Steam (2016).
IAPWS R6-95 (2016), “Revised Release on the IAPWS Formulation 1995 for the Properties of Ordinary Water Substance for General Scientific Use,” URL: http://iapws.org/relguide/IAPWS95-2016.pdf
Wagner, W., A. Pruss (2002). “The IAPWS Formulation 1995 for the
Thermodynamic Properties of Ordinary Water Substance for General and Scientific Use.” J. Phys. Chem. Ref. Data, 31, 387-535.
Wagner, W. et al. (2000). “The IAPWS Industrial Formulation 1997 for the
Thermodynamic Properties of Water and Steam,” ASME J. Eng. Gas Turbines and Power, 122, 150-182.
Akasaka, R. (2008). “A Reliable and Useful Method to Determine the
Saturation State from Helmholtz Energy Equations of State.” Journal of Thermal Science and Technology, 3(3), 442-451.
International Association for the Properties of Water and Steam (2011).
IAPWS R15-11, “Release on the IAPWS Formulation 2011 for the Thermal Conductivity of Ordinary Water Substance,” URL: http://iapws.org/relguide/ThCond.pdf
International Association for the Properties of Water and Steam (2008).
IAPWS R12-08, “Release on the IAPWS Formulation 2008 for the Viscosity of Ordinary Water Substance,” URL: http://iapws.org/relguide/visc.pdf
class idaes.property_models.iapws95.Iapws95ParameterBlock(*args, **kwargs)
Parameters: rule (function) – A rule function or None. Default rule calls build(). concrete (bool) – If True, make this a toplevel model. Default - False. ctype (str) – Pyomo ctype of the block. Default - “Block” default (dict) – Default ProcessBlockData config Keys default_arguments Default arguments to use with Property Package phase_presentation Set the way phases are presented to models. The MIX option appears to the framework to be a mixed phase containing liquid and/or vapor. The mixed option can simplify calculations at the unit model level since it can be treated as a single phase, but unit models such as flash vessels will not be able to treate the phases indepedently. The LG option presents as two sperate phases to the framework. The L or G options can be used if it is known for sure that only one phase is present. default - PhaseType.MIX Valid values: { PhaseType.MIX - Present a mixed phase with liquid and/or vapor, PhaseType.LG - Present a liquid and vapor phase, PhaseType.L - Assume only liquid can be present, PhaseType.G - Assume only vapor can be present} state_vars The set of state variables to use. Depending on the use, one state variable set or another may be better computationally. Usually pressure and enthalpy are the best choice because they are well behaved during a phase change. default - StateVars.PH Valid values: { StateVars.PH - Pressure-Enthalpy, StateVars.TPX - Temperature-Pressure-Quality} initialize (dict) – ProcessBlockData config for individual elements. Keys are BlockData indexes and values are dictionaries described under the “default” argument above. idx_map (function) – Function to take the index of a BlockData element and return the index in the initialize dict from which to read arguments. This can be provided to overide the default behavior of matching the BlockData index exactly to the index in initialize. (Iapws95ParameterBlock) New instance
class idaes.property_models.iapws95.Iapws95ParameterBlockData(component)[source]
build()[source]

General build method for PropertyParameterBlocks. Inheriting models should call super().build.

Parameters: None – None
classmethod define_metadata(obj)[source]

Set all the metadata for properties and units.

This method should be implemented by subclasses. In the implementation, they should set information into the object provided as an argument.

class idaes.property_models.iapws95.Iapws95StateBlock(*args, **kwargs)

This is some placeholder doc.

Parameters: rule (function) – A rule function or None. Default rule calls build(). concrete (bool) – If True, make this a toplevel model. Default - False. ctype (str) – Pyomo ctype of the block. Default - “Block” default (dict) – Default ProcessBlockData config Keys parameters A reference to an instance of the Property Parameter Block associated with this property package. defined_state Flag indicating whether the state should be considered fully defined, and thus whether constraints such as sum of mass/mole fractions should be included, default - False. Valid values: { True - state variables will be fully defined, False - state variables will not be fully defined.} has_phase_equilibrium Flag indicating whether phase equilibrium constraints should be constructed in this state block, default - True. Valid values: { True - StateBlock should calculate phase equilibrium, False - StateBlock should not calculate phase equilibrium.} initialize (dict) – ProcessBlockData config for individual elements. Keys are BlockData indexes and values are dictionaries described under the “default” argument above. idx_map (function) – Function to take the index of a BlockData element and return the index in the initialize dict from which to read arguments. This can be provided to overide the default behavior of matching the BlockData index exactly to the index in initialize. (Iapws95StateBlock) New instance
class idaes.property_models.iapws95.Iapws95StateBlockData(component)[source]

This is a property package for calculating thermophysical properties of water

build(*args)[source]

Callable method for Block construction

define_display_vars()[source]

Method used to specify components to use to generate stream tables and other outputs. Defaults to define_state_vars, and developers should overload as required.

define_state_vars()[source]

Method that returns a dictionary of state variables used in property package. Implement a placeholder method which returns an Exception to force users to overload this.

get_energy_density_terms(p)[source]

Method which returns a valid expression for enthalpy density to use in the energy balances.

get_enthalpy_flow_terms(p)[source]

Method which returns a valid expression for enthalpy flow to use in the energy balances.

get_material_density_terms(p, j)[source]

Method which returns a valid expression for material density to use in the material balances .

get_material_flow_terms(p, j)[source]

Method which returns a valid expression for material flow to use in the material balances.

class idaes.property_models.iapws95.PhaseType[source]

Ways to present phases to the framework

class idaes.property_models.iapws95.StateVars[source]

State variable set options

idaes.property_models.iapws95.htpx(T, P=None, x=None)[source]

Convenience function to calculate steam enthalpy from temperature and either pressure or vapor fraction. This function can be used for inlet streams and initialization where temperature is known instead of enthalpy.

User must provided values for one (and only one) of arguments P and x.

Parameters: T – Temperature [K] (between 200 and 3000) P – Pressure [Pa] (between 1 and 1e9), None if saturated steam x – Vapor fraction [mol vapor/mol total] (between 0 and 1), None if or subcooled (superheated) – Total molar enthalpy [J/mol].
idaes.property_models.iapws95.iapws95_available()[source]

Make sure the compiled IAPWS-95 functions are available. Yes, in Windows the .so extention is still used.