首页/文章/ 详情

多孔介质计算器Ver1.0版介绍

4年前浏览5900

最近花了些时间用ANSYS ACTFluent中开发了一个多孔介质域参数计算器,当前版本是Porous Calculator Ver1.0,可以实现导入CSV格式的速度-压差数据,设定介质物性,自动拟合计算多孔介质域中黏性阻力1/α惯性阻力C2经验系数C0C1

01.png

下面笔者简单描述下插件中核心功能的实现方法:

对于简单及均匀的多孔介质域,ANSYS Fluent提供两种方式中定义动量损失:
  • Darcy’s Law - 动量源项由两部分组成:黏性损失项和惯性损失项

02.png

  • Power Law - 动量源项定义为速度大小的幂律

03.png

选择Darcy’s Law模型,需要输入黏性阻力系数1/α、惯性阻力系数C2;选择Power Law模型,需要输入经验系数C0C1参数。

04.png

对于上述模型方程,可以改写为如下形式,上述模型中方程的各个系数,可以通过最小二乘法来确认参数

05.png

考虑如下的流体在多孔介质中速度对应压降的实验数据,计算条件:μ=1.7994e-5kg/m·s , ρ=1.225kg/m3Δn =0.01m

06.png

上面的两个模型公式可以改写成多元一次方程,如下形式,采用多元线性回归的方式拟合求解系数;

07.png

思路是根据Velocity和Pressure Drop数据获得方程中变量x和对应结果的矩阵,然后借助线性拟合工具得到系数β矩阵。
在ANSYS软件中,使用的是IronPython语言,没法使用Numpy、SciPy等科学计算库,但是可以使用.NET平台上的MathNet Numerics,详细步骤和代码如下:

(1)导入必要模块

c2020041501.png

(2)获得CSV文件输入

将上述数据中VelocityPressure Drop数据存成csv格式,然后读取数据存到数组中:

c2020041502.png

(3)获得变量和结果矩阵

c2020041503.png

(4)MathNet Numerics计算

使用MathNet.Numerics.LinearRegression命名空间下的MultipleRegression类中方法实现线性拟合,如下:

c2020041504.png

得到系数矩阵后,根据上面系数β对应的关系和其他计算参数,可以得到黏性阻力1/α、惯性阻力C2、经验系数C0C1,过程如下

08.png

最后采用ANSYS ACT平台对上述的功能进行封装,提供交互的界面提供参数输入和计算结果输出,插件安装使用的方法可参照以下视频。
**“ANSYS仿真与开发”后台回复关键词“多孔介质”,或者下载文章附件,即可免费获得Porous Calculator Ver1.0插件,适用于19.0以上ANSYS Fluent版本。

附件

100积分PorousCalculator.rar
ACTFluent多孔介质代码&命令理论
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2020-04-16
最近编辑:4年前
小田老师
硕士 | 仿真工程师 欢迎关注ANSYS仿真与开发!
获赞 624粉丝 3623文章 62课程 4
点赞
收藏

作者推荐

未登录
5条评论
陆陆
签名征集中
1年前
非常方便,赞一个
回复
Leefanfan
签名征集中
2年前
插件安装使用的方法可参照以下视频,这个在哪里啊?
回复
Leefanfan
签名征集中
2年前
多孔介质
回复
达芬奇        仿真秀秀
又到了吃冷面的季节还爱吃酸菜
3年前
没传到ANSYS ACT STORE?
回复
暮商望日
签名征集中
3年前
老师我想问下,输入的几组速度数据是对应不同工况吗,还是那几个速度数据是一个工况里的不同位置速度
回复 1条回复

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈