找回密码
 注册
Simdroid-非首页
查看: 4335|回复: 68

[CFX/ICEMCFD] CFX动网格例子与workbench CFX remeshing (补上计算文件)

[复制链接]
发表于 2011-10-19 14:33:24 | 显示全部楼层 |阅读模式 来自 湖北武汉
本帖最后由 frank0079 于 2013-9-13 13:54 编辑

      不知不觉在这个论坛上已经认真阅读3个月了,进步不少。发现这个板块其实使用CFX的人很少,写点东西出来给大家吧。这个例子将会涉及到动网格,对网格的控制需要稍微费一下大脑,同时由于变形量较大,选择使用workbench对网格进行重构(其实单独使用滑移网格和动网格就可以实现这个问题,选择remeshing功能只是想给大家一个学习user defined remeshing的思路)。
      问题描述:二维问题,一个圆桶内有一个方块,方块以1转/s的角速度绕自身的中心转动,同时其中心沿着X轴做0.2[m]幅值、周期为1s的正弦运动 和 沿着Y轴做0.1[m]幅值、周期为0.5s的正弦运动。这个问题同时涉及到平动和转动。

瞬态分析,外部圆壁面网格静止,对称面unspecified。


       内部方块的Location:我们会求得该次迭代开始时方块中心的坐标dx和dy,计算出相对该中心点,方块转动后的坐标X值newR*cos(newTheta+1[rev s^-1]*0.001)和Y坐标值newR*sin(newTheta+1[rev s^-1]*0.001)。根据位移叠加的原理,加上该迭代步结束时中心点的xy坐标值,即是方块最后的Location(大家可以想象其他的方法)。
       设置好其他的选项即可开始计算,方块转动后,网格会出现扭曲,只通过拉伸和压缩网格是无法完成计算的,我们可以通过remeshing来解决这个问题,通过ICEM remesh只能解决平动问题,CFX help中已经有详细的说明,只能使用user defined remeshing。方法有很多种,这里为大家提供一种user defined remeshing的方法,通过workbench进行remesh。首先我们要明白remesh的过程,在计算中我们会设定一个参数用来监测网格的质量,当网格质量低于我们的设定值时,cfx会暂停计算,产生新的几何文件,进行网格划分,读取新的网格,导入边界条件以及将oldmesh的计算结果作为newmesh的初始条件,继续计算。remeshing的主要功能即是完成图中方框处的过程。

         首先我们要有新的几何才可以有新的mesh,新的几何文件相对初始几何文件,我们只需要将方块旋转然后平移即可以,这样很自然让我们想其了workbench在几何建模的参数化功能。而user defined remeshing 可以调用外部命令,这个功能是很强大的,比如调用一个批处理,exe等等。我们将会在CFX暂停后,以批处理命令打开workbench,读取workbench的scripting文件进行网格的重新生成。计算初始的几何文件预先存放在workbench中,同时预先定义了网格划分的详细细节,我们会从CFX的res文件中读取当前几何模型相对初始几何模型的XY轴方向位移和相对其中心旋转的角度值,将这3个值赋给workbench的几何参数化对应的值,重新产生新的几何,updata mesh。


运行workbench,在workbench中run我们事先写好的scripting,生成新的网格文件(scripting的使用见ansys workbench的help)。

计算结果:


这里给出本次计算的文件,供大家参考。
将文件解压放在E盘根目录,即可直接计算(Ansys14.0)

这里解释下大概的流程:
   
在网格的最小 Orthogonality Angle<10[deg]时,CFX计算中断,CFX会在计算目录内生成一个临时文件夹Unnamed_001.dir,在里面保存最后一步的计算结果,文件名为res
  中断后CFX运行上图中的外部命令:"D:\Program Files\ANSYS Inc\v140\Framework\bin\Win32\runwb2.bat" -B -R E:\6dot-workbench\remesh.wbjn
  该指令的意思是:打开workbench(路径名需要自己修改,本人是将ansys装在D盘的),并读取workbench的record journal文件,这个文件既是解压后的那个 remesh.wbjn(文件记录的操作后面叙述)。 在外部指令运行完毕后,CFX会在E:\6dot-workbench\2_files\dp0\global\MECH中读取新的网格文件SYS.mshdb,继续计算下去。

初始的几何和mesh文件:
      
上面的文件是解压后文件夹中的1.wbpj, 熟悉workbench的人从上图中已经大致看明白了,这里将网格中方盒子的旋转角度和2个方向上的平移量设置成workbench input parameters,CFX的外部指令既是开打这个文件,并且读取CFX的最后一步计算结果,并将网格的3个运动值返回给上图中的P1 P3 P4,然后updata mesh,这些操作是通过record journal文件录制下来的。
                                                            

record journal文件的大致录制过程:
      打开workbench,开始录制:
     
   打开解压文件夹里的1.wbpj,新建一个results :
   
   打开results,读取res文件,将此时的旋转量和平移量设成 workbench的output parameters:
            
将表达式P5的值赋予给P1,  P6给P3, P7给P4。

最后updata mesh 并且保存workbench文件(这里将其保存为同目录下的2.wbpj),记得保存record journal文件(remesh.wbjn)。有了文件夹中的4个文件,即可开始计算。

本帖中叙述的方法有很多可以改进的地方。从该过程可以看出,cfx外部remesh确实是比较繁琐,并且remesh的速度比较慢。这里不是鼓励大家遇到需要使用remesh的问题就使用CFX的remesh来实现,也不是想证明fluent可以做到的CFX都可以做到。本帖单纯是从探索一个软件的新功能为乐趣为出发点,有兴趣的人可以试试。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

发表于 2011-10-19 15:40:00 | 显示全部楼层 来自 山东泰安
Simdroid开发平台
是个很好的例子呀。楼主帖子内容怎么加了删除线了呢?
虽然明白楼主所述的方法,但是还是怎么知道如何操作?不知道可否提供您的原文件呢?
对WB的scripting操作不了解,回头要看下帮助文档了。
回复 不支持

使用道具 举报

发表于 2011-10-19 16:07:11 | 显示全部楼层 来自 陕西西安
顶~以后有空一定过来膜拜一下
回复 不支持

使用道具 举报

 楼主| 发表于 2011-10-19 16:09:31 | 显示全部楼层 来自 湖北武汉
不太清楚,上传后就有了删除线
回复 不支持

使用道具 举报

发表于 2011-10-20 15:47:01 | 显示全部楼层 来自 中国
本帖最后由 40534427 于 2011-10-20 15:50 编辑

good! 又是一种很好的外部网格重构思路! 期待进一步分享!
回复 不支持

使用道具 举报

发表于 2011-10-21 12:12:38 | 显示全部楼层 来自 黑龙江哈尔滨
看这个帖子的人级别都好高啊!(除了我)
回复 不支持

使用道具 举报

发表于 2011-10-25 09:23:16 | 显示全部楼层 来自 黑龙江哈尔滨
学习一下,楼主辛苦!
回复 不支持

使用道具 举报

发表于 2011-10-28 21:26:29 | 显示全部楼层 来自 黑龙江哈尔滨
学习一下了楼主辛苦
回复 不支持

使用道具 举报

发表于 2011-10-29 18:49:51 | 显示全部楼层 来自 黑龙江哈尔滨
楼主辛苦 !!
回复 不支持

使用道具 举报

发表于 2011-11-9 10:25:58 | 显示全部楼层 来自 山东青岛
学习一下
回复 不支持

使用道具 举报

发表于 2011-11-10 08:31:50 | 显示全部楼层 来自 江苏镇江
学习下,谢谢分享!
回复 不支持

使用道具 举报

发表于 2011-11-10 11:26:44 | 显示全部楼层 来自 浙江杭州
膜拜下,楼主真强
回复 不支持

使用道具 举报

发表于 2011-11-13 22:16:49 | 显示全部楼层 来自 上海嘉定区
楼主,我有一个问题请教下您,就是,在workbench里面建模是参数化自动会有参数(红色框),但是result,这个我没有找到呀,怎么将result也显示出参数化,并且连接起来。。谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2011-12-13 14:27:36 | 显示全部楼层 来自 武汉大学
非常感谢分享
回复 不支持

使用道具 举报

发表于 2011-12-14 09:41:40 | 显示全部楼层 来自 黑龙江哈尔滨
为什么我的只重新生成网格一次,以后一直在remeshing
回复 不支持

使用道具 举报

发表于 2011-12-18 20:04:10 | 显示全部楼层 来自 韩国
做的很不错,思路很好!

不过,ICEM remesh也能解决转动问题。
回复 不支持

使用道具 举报

发表于 2011-12-20 10:20:16 | 显示全部楼层 来自 上海
楼主,您好。我还有最后一个问题,没有解决,就是在workbench里面的results模块里面,您是用的哪个结果文件(.res)呢(中断不是不会产生res文件吗)?还是用的monitor的监测数据?如果是res,具体是哪一个呢?望指导。谢谢
回复 不支持

使用道具 举报

 楼主| 发表于 2011-12-20 16:09:46 | 显示全部楼层 来自 湖北武汉
res文件,在post中将你要的参数设置成 workbench output parameter
回复 不支持

使用道具 举报

发表于 2011-12-20 21:59:35 | 显示全部楼层 来自 江苏南京
顶一下,学习中
回复 不支持

使用道具 举报

发表于 2011-12-20 23:30:01 | 显示全部楼层 来自 上海嘉定区
frank0079 发表于 2011-12-20 16:09
res文件,在post中将你要的参数设置成 workbench output parameter

谢谢楼主的回答,顶一个,就是临时文件夹CFX_001.dir..对吧,,谢谢
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-3-28 21:15 , Processed in 0.054596 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表