fluent GAMBIT软件批处理脚本
2016-08-07 by:CAE仿真在线 来源:互联网
GAMBIT软件批处理脚本
在使用Gambit画网格的时候,经常会碰到这种情况:针对某一个固定的流场结构,需要单独更改某一个局部细节的尺寸来画多个不同的网格文件,在画网格的具体过程中,也许只是更改了几个点的坐标,其他的操作流程完全一样。如果对于每一个网格文件都要我们重复一遍点-线-面-节点-网格-边界条件-输出网格的过程,费事费力不说,心理上也会感觉花了大量的时间在做无用功。其实,Gambit本身提供了类似word中宏文件的功能,来让Gambit自动完成上述机械重复式的操作过程,提高工作效率。
如图所示的喷射器二维模型图,要获得红圈所示的管道长度分别为50mm,100mm,150mm,200mm,250mm时喷射器的网格文件。
在利用gambit的类似“宏”功能之前,需要做两步准备工作:
1.已经完成了一个结构尺寸的网格的绘制过程,比如我已经完成了100mm长度时喷射器网格的绘制和输出。
2.保存目前为止的文件,比如我这里将文件命名为“1”。
来到文件保存的文件夹,会看到三个文件:1.dbs,1.jou,1.trn。dbs文件,就是Gambit默认储存几何体和网格数据的文件;jou则是记录gambit每一步操作对应的运行命令的文件;trn则记录了gambit界面最下面命令显示窗(transcript)的显示历史。我们要用到的就是jou文件。
文件中,“/”开头的为注释文件,如果觉得影响浏览可以删掉。其他一行行的就是自己在画网格的过程中每一步操作对应的命令行。比如“vertex create coordinates 0 0 0”就是在(0,0,0)坐标处画一个点;“edge create straight "vertex.xx"... ”是把多个点连线;“face mesh "face.1" map size 1”就是在面1上用节点间距为1画面网格;“physics create "axis" btype "AXIS" edge "edge.3" "edge.2" "edge.1"”就是将边1,2,3的边界条件定为“AXIS”,名字为“axis”;等等。针对每个人不同画网格的方法和习惯,命令会有所不同,不过都很简单,一看就明白。
对于我本身而言,我需要变动的是(100,0,0)和(100,30.5,0)两个点的坐标,于是我把他们改成(150,0,0)和(150,30.5,0)。如果需要gambit自动输出网格,就把最后一行的网格输出命令中网格文件的名字也改掉。比如我100mm时网格文件命名为“100.msh”,那么150mm时网格文件命名为“150.msh”。对应的网格输出命令行如下:
100:export fluent5 "100.msh" nozval
150:export fluent5 "150.msh" nozval
FLUENT,对应gambit界面solver选项下的选择,比如你要把网格文件用在ANSYS下,就改成ANSYS。后面的nozval则是网格维度。这些东西不清楚也无所谓,只要你在画网格的时候操作完了后保存dbs,那么对应的jou里都会有,一看就懂了。将更改完毕的jou文件保存,比如这里我命名为2.jou。然后打开gambit,选择File-Run Journal ...,在弹出的菜单里像平常读取dbs一样选择刚才改好的2.jou,然后apply。
备注:
1.上述jou只能一次输出一个网格文件,如果希望一次输出多个网格文件的话,可以在输出网格命令
export fluent5 "150.msh" nozval
后插入命令
identifier name "2" new saveprevious
这个命令的作用等同于在Gambit下点击File-new-输入ID和Tile后Accept,就是新建一个新工程。这个“2”是新建工程的名字,可以随便输,只要保证不和之前的名字重复就行。之后将之前的所有命令复制一遍,该改的改好,比如点的坐标和网格文件的名字等。可以一直这么下去直到你累了为止。
2.对于某些情况,并不需要通过jou文件来做全部的工作,比如只需要用jou文件自动生成点和连线,而后续的画网格和定边界条件工作人工来做,也是同样的道理,只需要在对应的jou文件内把连线之后的命令全部删掉即可。
3.如果想要使用第2条里的部分功能,那么建议把人工操作的过程放在jou文件自动操作流程之后。比如你可以用jou自动生成点和连线,然后人工画网格定边界条件;而不建议人工生成点和连线,用jou画网格和定边界条件。原因很简单,Gambit的命令行不够智能。它后续的每一个命令里,指定操作对象的方法是指定点,线,面的名称。如果人工画点的时候,与生成jou文件时画点的顺序不一样,会导致一些错误。比如在jou里,(0,0,0)和(1,1,0)分别是vertex.1和vertex.2,那么连接这两个点的命令是create straight "vertex.1" "vertex.2"。如果你把jou画线放在人工定点之后,他同样执行的还是连接vertex.1和vertex.2,可是由于之前人工画点的顺序改变,此时(0,0,0)和(1,1,0)变成了vertex.3和vertex.4,就会出现问题。
由于在这个例子里,变动的内容非常简单,所以这个问题并不突出。如果是一个复杂结构的几何体网格,即使把jou放在之前也会有类似的问题,所以在用jou的时候,一定要记得把所有更改对应的东西全部改过来,比如面,线,点的顺序等等。
相关标签搜索:fluent GAMBIT软件批处理脚本 GAMBIT批处理 fluent Fluent培训 Fluent流体培训 Fluent软件培训 fluent技术教程 fluent在线视频教程 fluent资料下载 fluent分析理论 fluent化学反应 fluent软件下载 UDF编程代做