国际水和蒸汽特性协会标准的 Python 实现
项目描述
国际合作社
IAPWS ( http://www.iapws.org/release.html )标准的 Python 实现。该模块实现了全套标准,包括:
IAPWS-IF97 IAPWS-95 IAPWS-06 for Ice IAPWS-08 for seawater IAPWS-17 for Heavy water ...
依赖
支持两个 python 分支:
* python 2.7 * python 3.4 or later
Numpy-scipy:带有数学和科学工具的库
安装
在 debian 中,您可以在 jessie、testing 和 sid 的官方存储库中找到。在 ubuntu 中,它位于 ubuntu saucy (13.10) 的官方存储库中。在其他系统中,您可以使用 pip 安装:
pip install iapws
或直接从 github 存储库:
pip install git+https://github.com/jjgomera/iapws.git
这是拥有最新版本的推荐选项。
文件
要查看包的完整文档,请参阅readthedocs
有关快速使用演示,请参阅此示例
IAPWS-IF97(查看完整文档)
from iapws import IAPWS97
sat_steam=IAPWS97(P=1,x=1) #saturated steam with known P
sat_liquid=IAPWS97(T=370, x=0) #saturated liquid with known T
steam=IAPWS97(P=2.5, T=500) #steam with known P and T
print(sat_steam.h, sat_liquid.h, steam.h) #calculated enthalpies
IAPWS-95(查看完整文档)
from iapws import IAPWS95
sat_steam=IAPWS95(P=1,x=1) #saturated steam with known P
sat_liquid=IAPWS95(T=370, x=0) #saturated liquid with known T
steam=IAPWS95(P=2.5, T=500) #steam with known P and T
print(sat_steam.h, sat_liquid.h, steam.h) #calculated enthalpies
用于重水的 IAPWS-17(请参阅完整文档)
from iapws import D2O
sat_liquid=D2O(T=370, x=0) #saturated liquid with known T
print(sat_liquid.h) #calculated enthalpy
用于 Ice Ih 的 IAPWS-06(请参阅完整文档)
from iapws import _Ice
ice=_Ice(273.15, 0.101325) #Ice at normal melting point
print(ice["rho"]) #Calculated density
用于海水的 IAPWS-08(请参阅完整文档)
from iapws import SeaWater
state = SeaWater(T=300, P=0.101325, S=0.001) #Seawater with 0.1% Salinity
print(state.cp) # Get cp
去做
FIXME:电解电导率
TODO:改进 IAPWS95 和 D2O 类的两相区域的收敛性
TODO:实现快速计算的 SBTL 方法
TODO:实现快速计算的 TTSE 方法
氨水混合物:
FIXME:氨水混合物残留 helmholtz。数值好坏相差 1%
TODO:添加平衡程序
我尝试测试所有代码并使用标准给出的所有值进行计算机验证,但无论如何代码可能存在隐藏问题。对于任何建议、评论、错误……您可以使用github 问题部分,或通过电子邮件直接与我联系。