首页 > 其他 > 详细

mfix输出自定义数据

时间:2019-04-04 22:08:30      阅读:142      评论:0      收藏:0      [点我收藏+]

有时候需要输出一些自定义的网格或者DEM颗粒信息,比如输出颗粒的受力,这里举例颗粒自定义数据的输出。网格自定义输出方法类似。

 

首先用FileLocatorPro(网上很多绿色版),搜索一下代码里model文件下的关键字 PostCohesive,如下:

 技术分享图片

 

这个变量是专门用来存储颗粒粘性力,以供后处理用的,因此只需要仿照里面的代码添加就可以了。

技术分享图片

 

下面安装顺序逐一添加代码。

技术分享图片

技术分享图片

上面代码是释放内存空间,对于可分配数组,使用完以后需要手动释放,需要使用的时候再为其分配空间。

技术分享图片

技术分享图片

技术分享图片

 这里由于我要输出的是颗粒和壁面重合的值,这部分数据在calc_collision_wall_mod.f里计算得到,所以获取需要输出的数据这部分比较灵活,需要自己去找到对应的代码位置。

 并且这里需要注意一下,这里由于业务逻辑里,只有靠近壁面的颗粒才会计算重叠的值,其他颗粒在循环的时候直接跳过,所以最好在每次进入循环的开始先将内存区置零。

 技术分享图片

技术分享图片

 技术分享图片

 这里先给颗粒信息分配内存,然后还得调用real_grow函数,因为颗粒数量有可能计算过程中增加。

技术分享图片

技术分享图片

 这里是交换颗粒信息,具体作用还没细看。

技术分享图片

技术分享图片

 在模块里定义可分配数组。当然这部分也可以在usr_mod.f里定义,只要记得在使用到的地方use一下就行了。

技术分享图片

技术分享图片

 将内存区置零。

技术分享图片

 技术分享图片

 写出数据。

技术分享图片

技术分享图片

 写出数据。似乎对于DEM,定义了两个写出的函数,区别没仔细研究,都加上不会错。

 

最后重新cmake一下然后编译即可。有时候自己添加代码直接make会有些莫名奇妙的报错,重新cmake一下一般能解决。

 

最后的效果:

技术分享图片

 

显示的是颗粒和壁面的重合的值。

 

对于网格数据,用类似的方法,搜一下VORTICITY这个关键字:

技术分享图片

 

按照上面类似的方法操作即可。

mfix输出自定义数据

原文:https://www.cnblogs.com/Jay-CFD/p/10621274.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!