首页/文章/ 详情

如何在OpenFOAM中添加液相流体热物性

1年前浏览3182
液体火箭发动机具有比冲高、能反复启动、工作时间长短可任意设定、多次使用、推力可调节等优点,其燃烧包括如下子过程:喷雾、液膜形成、液滴蒸发、湍流混合、湍流燃烧、传热以及燃烧不稳定等。对液体燃料火箭发动机、喷注雾化点火器等装置内部液态流体燃烧过程进行精确的数值模拟仿真,有利于改进设备设计、改善工况及节能减排研究。  

图片来源:https://web.stanford.edu/group/fpc/cgi-bin/fpcwiki/Main/Gallery


液态流体燃料燃烧模拟涉及到多相反应流之间的传热,液态流体在相变过程中,其热物性数值随温度发生动态变化,因此,需要在算例模拟开始之前拟合出液态流体各热物性随温度变化的曲线以准确计算液态流体蒸发速率、热流量等物理量,常用液态流体热物性诸如液态流体的摩尔质量、密度、蒸汽压、汽化焓、液体比热容、熵、理想气体比热容等。

这里主要介绍OpenFOAM添加液态流体热物性的方法,即建立liquidProperties文件、用NSRDSfunc函数拟合液态流体热物性曲线及编译liquidProperties文件。  
 
以某案例添加液氧热物性进行说明,OpenFOAM添加液相流体热物性的工作原理如下:  
liquidProperties文件包含两个重要文件,liquidProperties.C文件与O2文件,liquidProperties.C是O2.C文件的类模板。O2文件包含O2.C、O2.H和O2I.H三个文件,O2.C文件定义O2类并存储了液氧各热物性的系数值,O2.H和O2I.H声明O2类,O2.H文件确定拟合函数与热物性之间的对应关系。编译liquidProperties文件将液氧添加为哈希表(Hash Table)键值,在运行时选择机制(RTS)下,哈希表动态读取指定字典文件以获取液氧热物性数据。运行时选择机制的作用是通过C++宏的方式实现“虚构造函数”,依据不同对象类型调用不同的构造函数。下图是哈希表工作原理示意图。  

哈希表示意图


1

liquidProperties文件的建立

通过以下路径可以找到OpenFOAM内置liquidProperties文件:

/opt/openfoam7/src/thermophysicalModels/thermophysicalProperties/liquidProperties

将其拷贝至算例目录,适当增加、删减、修改部分内容以包含编译liquidProperties文件所需的全部文件或文件夹。

该案例中,在liquidProperties文件下有O2、liquidProperties、Make、lnInclude文件夹与O2_fitting.py文件,下图是liquidProperties文件目录树结构示意图。


2

基于NSRDSfunc函数的液态流体热物性曲线拟合

液氧物性曲线拟合的理论是用OpenFOAM内置的NSRDSfunc函数来拟合液态甲烷物性随温度变化的公式曲线,并最终返回具体拟合NSRDSfunc函数的各系数值;液氧物性曲线拟合的思路是用python语言编写一个拟合曲线程序文件(这里采用了VS Code 编写python程序,并将其命名为O2_fitting.py),其最终要实现的功能是以不同线形式显示原曲线与拟合曲线并返回拟合系数值。            
具体实现过程及部分程序代码如下:              
           

Step 1 

在程序开头部分导入必要的numpy软件包、matplotlib2D绘图工具、开源scipy库;


Step 2 

定义NSRDSfunc函数


Step 3 

将待拟合物性的原始公式定义成函数(注意单位换算),选择具体的NSRDSfunc函数作为拟合函数,并设置初始拟合系数与拟合系数边界          


Step 4 

运行程序,观察拟合结果


         

如未成功,需要回到Step 3:

  • 若拟合曲线与原始曲线线形接近,只需修改初始拟合系数和拟合系数边界

  • 若拟合曲线与原始曲线线形差异很大,需更改拟合函数,并重设初始拟合系数与拟合系数边界。


           

3

liquidProperties文件编译

编译之前,需要完成以下几项工作:

Step 1 

在文件下Make/files文件中添加编译的目标源文件O2/O2.C并命名编译后生成的libs库文件;


Step 2

在Make/options文件中添加需要使用的外部链接库;


Step 3 

在system/controlDict字典里添加libs链接库以便调用;          


         

Step 4

在liquidProperties文件下输入wmake libso命令进行编译;          


显示编译正确,OpenFOAM添加液态流体热物性成功。




OpenFOAM模拟液态流体燃料燃烧,需要添加液态流体热物性,方法归纳如下:建立liquidProperties文件,基于NSRDSfunc函数拟合液态流体热物性曲线得到液态流体主程序文件中(如O2.C)热物性的系数值,在liquidProperties/Make/files 文件里指定欲添加热物性液态流体的目标源程序文件(如O2.C)以及在liquidProperties/Make/options文件里添加所需外部链接库,输入wmake libso命令编译liquidProperties文件将液态流体添加为哈希表键值。




           


液体火箭发动机仿真解决方案

-- 实云软件


上海实云工业软件有限公司可为液体火箭发动机的复杂化学反应及流动提供完整的仿真解决方案,包括从喷注器内流动到雾化特性仿真分析,再到燃烧室燃烧模拟。

不同于航空发动机,液体火箭发动机自带氧化剂,由涡轮泵部件对氧化剂和燃料进行加压,涉及流动、多相流、相变、传热传质、化学反应、组分输运等多个物理化学过程,很难准确捕捉燃烧细节。另外,由于液体火箭发动机燃烧温度高于3500K,冷却问题和烧蚀问题也成为行业关注的重点问题。

雾化与蒸发

             

对于燃油雾化仿真,实云流体仿真软件Level Set界面追踪方法具有连续、可导的特性,便于计算表面张力和曲率,适合处理界面的剧烈变形、破碎、聚并等问题;此外,Level Set方法不做界面重构,界面真实性高且计算量少。实云流体仿真软件不仅具备Level Set、VOF方法,而且具备集成欧拉-拉格朗日、欧拉-欧拉等多种方法的能力。

喷注器流量特性

             

喷注器是火箭发动机中的关键部件,主要的结构类型有互击式喷注器、自击式喷注器以及针栓式喷注器等,喷注器流量特性直接影响燃料雾化性能。实云流体仿真软件具有的丰富的湍流模型及两相流模型,可准确模拟喷注器内的流动状态。

燃烧全过程仿真

             

实云流体仿真软件燃烧模块集成了湍流模型(RANS、LES、VLES)、液膜流动传热与蒸发模型、多孔介质模型以及传热模型(热对流、热传导、热辐射),可实现冷态、流动、点火、燃烧全过程的仿真分析;可提供Cantera数据接口以实现复杂化学动力学计算。

实云流体仿真软件可以在多相流雾化基础上,采用EDM模型、有限速率模型等燃烧模型,将电极加热液滴过程简化为极间距直径的均匀热源加热区域,对点火过程实现准确模拟。此外,可以对燃烧不稳定性、燃烧室在高温环境中出现的材料烧蚀问题进行模拟。

喷口摆动

             

液体火箭的推理矢量控制系统是通过液压伺服机构来控制喷口摆动,实现对火箭姿态和运动方向的调整,保证火箭的正常飞行和变轨。实云软件可以对火箭喷管摆动过程中的流动状态进行仿真,获取喷管摆动瞬间燃气流动参数的变化,为火箭的矢量推力装置提供设计依据。

涡轮泵部件仿真

             

涡轮泵的主要作用是通过涡轮带动离心泵从而提高燃料压力,因此涡轮泵的高性能运行直接影响着火箭发动机的工作状态:涡轮泵内发生的空化现象会导致流动不稳定,进而引起发动机性能下降。实云流体仿真软件的湍流模型及空化模型可以实现对涡轮泵的空化性能模拟,判断空化发生的位置,研究其空化特性和流动不稳定性。

来源:多相流在线
OpenFOAM多相流燃烧化学组分输运多孔介质通用航空航天船舶python水利理论材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-06-23
最近编辑:1年前
积鼎科技
联系我们13162025768
获赞 109粉丝 112文章 302课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈