NIST REFPROP 数据库技能用于通过 Python 查询高精度热力学与输运性质。REFPROP(Reference Fluid Thermodynamic and Transport Properties)由美国国家标准与技术研究院(NIST)开发,是热物理性质计算领域的参考标准。
【用途】 该技能面向需要最高精度热物性数据的工程设计与研究场景,包括:需要最高精度的关键工程设计、对其他性质库(如 CoolProp 以 REFPROP 为验证基准)进行校验、具有复杂相行为的混合物计算、带温度滑移的制冷剂混合物应用,以及研究与出版级数据。
【主要能力】
- 纯流体:147 种以上纯流体,具有可获得的最高精度。
- 混合物:预定义与自定义混合物,支持高级混合规则(如 GERG-2008、Kunz-Wagner 等),最多 20 个组分。
- 制冷剂混合物:所有常见制冷剂混合物,支持温度滑移计算。
- 输运性质:黏度、导热系数、表面张力。
- 热力学性质:焓、熵、密度、比热。
- 相平衡:混合物的 VLE、LLE、VLLE 计算。
- 其他能力:湿度计算(psychrometrics)、闪蒸计算(PT、PH、PS 等)、带雅可比的饱和性质、辅助方程、伪纯流体近似。
【流体覆盖】 常见工业流体(水、空气、二氧化碳、氮、氧、氩、氦、氢);烃类 40 种以上(烷烃、烯烃、芳烃、环状);制冷剂 60 种以上(CFCs、HCFCs、HFCs、HFOs、天然工质、混合物);低温流体(氦、氖、氩、氪、氙、氢、氘、仲氢、氮、氧、氟、甲烷、乙烷);特种流体(硅氧烷、醇类、其他有机物、无机物)。
【使用方式】
- 从 NIST 购买并安装 REFPROP(通常安装到 C:\Program Files (x86)\REFPROP\)。
- 安装 Python 封装:pip install ctREFPROP。
- 设置 RPPREFIX 环境变量指向安装目录(Windows 可用 PowerShell 或系统环境变量,Linux/Mac 用 export,也可在 Python 中通过 os.environ 设置)。
- 验证安装:初始化 REFPROPFunctionLibrary,调用 SETPATHdll,打印 RPVersion()。
- 查询时使用 REFPROPdll 函数,指定流体名、输入对(如 TP、TH、TS、TD、PH、PS、PD、TQ、PQ)、输出属性代码(如 D;H;S;CP;CV;W;VIS;TCX)、单位制枚举、温度、压力及组分数组。
- 混合物以分号分隔组分名,摩尔分数数组需合计为 1.0。
- 每次调用后检查 ierr 错误码与 herr 消息。
【单位约定】 默认使用 MOLAR BASE SI 时:温度 K、压力 kPa(注意 CoolProp 使用 Pa)、密度 kg/m³、焓 J/kg、熵 J/kg/K、黏度 Pa·s、导热系数 W/m/K。可用单位制包括 SI 摩尔单位、SI 质量单位、英制单位与自定义单位。
【适用场景】 需要最高精度(约 0.01%)、复杂混合物、最新制冷剂数据(HFOs)、带温度滑移的沸石混合工质、出版或关键设计工作时使用 REFPROP。若预算受限、仅需基本性质(约 0.1% 精度可接受)、仅用纯流体、需要开源许可或快速原型开发,则可考虑 CoolProp。
【限制】 REFPROP 为商业软件,非免费或开源,必须从 NIST 购买许可证(标准许可约 300 美元一次性购买,学术机构有优惠),许可证为按用户永久授权,更新与新流体文件提供约 5 年,不可再分发。使用前必须已购买并安装 REFPROP,否则无法运行。流体名称区分大小写,需使用 FLUIDS 目录中的准确名称。
【最佳实践】 在导入 ctREFPROP 前设置 RPPREFIX;每次调用后检查 ierr;使用准确流体名;混合物组成需预先计算且合计为 1.0;缓存 RP 实例避免重复初始化;针对不同相区使用合适的输入对;初期用已知值验证结果;阅读错误消息以获取详细诊断。
【参考资源】 NIST REFPROP 官网:https://www.nist.gov/srd/refprop;ctREFPROP 文档:https://github.com/usnistgov/REFPROP-wrappers/tree/master/wrappers/python;GitHub:https://github.com/usnistgov/REFPROP-wrappers;支持邮箱:refprop@nist.gov;问题追踪:https://github.com/usnistgov/REFPROP-issues;论坛:https://groups.google.com/g/refprop。