计算不同压力和温度下流体的实际气体热力学。
项目描述
是什么realtpl?
realtpl(真实气体热力学 python 库)使用基于三次状态方程 (EoS) 的热力学模型计算密度 (rho)、热容量 (cp)、声速 (sound)、粘度 (visc) 和热导率 (lambda)并将其与开源库中的参考数据进行比较
CoolProp。三次 EoS 是众所周知的 Soave-Redlich-Kwong (SRK) 和 Peng-Robinson (PR) EoS 以及更复杂的三参数 Redlich-Kwong-Peng-Robinson (RKPR) EoS。后者采用了 EoS 参数的临界压缩系数,详情请参阅参考Trummler 等人。. 当前的实施主要设计用于评估给定压力水平的温度范围内(具有定义的温度步数)的结果。数据以图形方式显示,也可以导出到csv文件中进行进一步处理。唯一的强制性输入是流体名称、温度范围和压力。此外,还有一个附加功能可以评估所需温度和压力范围内的数据,以支持表格生成。
流体特性,如质量、临界压力等,直接从CoolProp. 此数据也保存到输出目录(在配置文件中指定)为<fluidname>.out. 为了计算热容量,必须评估参考值,这是使用 NASA 7 或 9 系数多项式完成的。因此,必须提供相应的系数。对于选定的流体,我们已经在相应文件中生成了一个数据库 -nasa_7.yaml或nasa_9.yaml. 更多数据可以在这些文件的标题中提供的参考资料中找到。
的一个特殊功能realtpl是所有使用建议的热力学模型的计算都是矢量化的,这使得它们非常快。
动机和目标受众
realtpl是面向物理学家、工程师、科学家、技术人员和任何对真实气体热力学感兴趣的人的开源软件(在 GNU GPL 许可下)。它可以在所有支持 Python 的操作系统上运行,安装快速、免费且易于使用。缩进的用途是只运行可执行文件和修改配置文件。
realtpl专门设计用于 CFD 模拟。预先检查热力学模型的准确性是进行 CFD 模拟之前的核心步骤。对于不同的流体以及不同的压力和温度范围,这种评估可能很复杂,而且特别耗时。为此,我们编写realtpl了以轻松比较基于立方 EoS 的热力学模型获得的结果。有关更多详细信息,请参阅参考Trummler 等人。.
安装
realtpl可作为 Python 包使用。使用pip你可以简单地安装它:
pip install realtpl
此外,realtpl也可以在 github
https://github.com/ttrummler/realtpl上找到。克隆最新版本:
git clone https://github.com/ttrummler/realtpl
并继续安装(使用-e可编辑安装选项):
cd realtpl
pip install .
安装后,您将拥有一个名为 的可执行文件realtpl,您可以在任何地方运行它。
测试
测试是使用tox. 如果尚未安装,请tox
使用 pip安装
pip install tox
然后,您只需输入 即可tox自动执行测试
tox
请注意,它可能无法在您的操作系统上运行所有经过测试的 python 版本(py38、py39、py310)。
跑步realtpl
要运行测试示例,请使用
realtpl --config /path/to/tests/example/config.yaml
在配置文件中指定了计算的所有内容。
配置文件
请参阅tests/example/示例配置文件。配置文件的最小工作示例如下:
fluid_name: nHexane
pressure_Pa: 6.0e+06
temperature_start_K: 300
temperature_end_K: 600
请注意,压力和温度输入必须采用 SI 单位开尔文和帕斯卡,参数名称中也有说明。
其他可选配置参数是:
fluid_name: nHexane
eos_list: [SRK, PR, RKPR] # optional; default: SRK, PR, RKPR;
include_ref_data: true # optional; default: true
pressure_Pa: 6.0e+06
temperature_start_K: 300
temperature_end_K: 600
temperature_step_K: 1 # optional; default: 1
n_nasa_coeff: 7 # optional; default: 7
output_dir: results # optional; default: results
save_data_to_csv: true # optional;
show_plots: false # optional; default: true
save_plots: true # optional; default: false
show_deviation: true # optional; default: false
save_deviation: true # optional; default: false
performance_tracking: true # optional; default: false
除此之外,还可以评估压力和温度范围。但是,则无法激活图形输出。
fluid_name: nHexane
eos_list: [SRK, PR, RKPR]
include_ref_data: true
pressure_start_Pa: 4.0e+06
pressure_end_Pa: 8.0e+06
pressure_step_Pa: 1.0e+06
temperature_start_K: 300
temperature_end_K: 600
temperature_step_K: 100
n_nasa_coeff: 7
output_dir: results
save_data_to_csv: true
show_plots: false
save_plots: false
用于计算的配置数据被写入输出目录到config_data.out.
流体 ( fluid_name) 的选择受限于数据文件中相应 NASA 系数的可用性nasa_X.yaml。当前可用的流体列在本说明的末尾。
最新源代码
最新的开发版本realtpl可以在
https://github.com/ttrummler/realtpl
错误报告
要报告错误,请使用realtpl's Bug Tracker,网址为:
https://github.com/ttrummler/realtpl
许可证信息
有关使用此软件的条款和条件以及所有保证的免责声明,请参阅许可证。
realtpl如果在您的工作中使用或生成工作所需的数据,请引用。引用为:Trummler, T.、Glatzle, M.、Doehring, A.、Urban, N.、Klein, M.,基于广义三次状态方程的数值模拟热力学建模。
注意用于计算热量特性的 7 个系数 NASA 多项式的包含数据库的许可。使用这些数据需要在相关出版物中包含适当的引用。引用: Goos, E., Burcat, A., Ruscic, B.. 新的 NASA 热力学多项式数据库,带有活动热化学表更新。报告 ANL 05/20 TAE 960。
引文
realtpl要在出版物中引用,请使用:
Trummler, T., Glatzle, M., Doehring, A., Urban, N., Klein, M.,基于广义三次状态方程的数值模拟热力学建模。
可用流体
流体 ( fluid_name) 的选择受限于数据文件中相应 NASA 系数的可用性nasa_X.yaml。任何时候都可以进行扩展,只需在文件中添加正确的数据nasa_7.yaml或nasa_9.yaml. 下面列出了当前可用的流体。请注意配置文件中流体名称的拼写相同。
NASA 7 系数多项式 ( n_nasa_coeff: 7):
- 氮
- 正十二烷
- 正己烷
- 环己烷
- 环戊烷
- 甲烷
- 甲醇
- 乙醇
- 丙烷
- 丁烷
- 正戊烷
- 二氧化碳
NASA 9 系数多项式 ( n_nasa_coeff: 9):
- 氮
- 氢
- 正十二烷
- 正己烷
- 环戊烷
- 环己烷
- 丙烷
- 甲烷
- 二氧化碳
- 甲醇
- 乙醇
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。