1、几何模型参数化建模部分:DdsignModeler和SCDM
DdsignModeler和SCDM均可参数化,但SCDM貌似不能基于草绘尺寸进行驱动,草绘图形在生成平面或几何体后自动删除(不确定是否可以关闭此功能)。总的来说,SCDM几何处理功能强大,但是参数化功能弱于DM。
2、网格剖分参数化:meshing和fluentmeshing,ICEM(我一般不用,不了解)
fluentmeshing目前不提供网格参数化操作界面,这一点很不友好啊。fluentmeshing网格处理功能强大,但是没有提供参数化的接口,如果模型需要对网格进行参数化操作,需要采用meshing进行设置。如果网格剖分部分不需要暴露相关操作,直接一次设置好,也是不错的选择,因为它的网格划分功能太强了。
3、求解设置:fluent、CFX(我没用过,不了解)
乏善可陈,按部就班操作即可,需要参数化定义的部分可以通过parameter来设置,但是fluent提供的参数化接口并不多,只有出入口边界条件,材料参数等数据可以参数化,如果是创建了监测点,监测点坐标是不能够采用这种方法进行参数化的。打个比方说,我需要根据几何模型的尺寸来创建监测点的位置,一旦几何模型尺寸变了,按道理来说我设置的监测点位置也要随之改变,但是fluent并没有提供该功能,希望之后的版本有所改善。
总之,通过NSYS workbench平台框架进行参数化,操作比较简单,感觉它是为了ACT功能开发的,参数化功能不够完善,不能暴露很多参数。
参数化方法二:fluent TUI参数化
fluent TUI脱离了常规的图形界面控制(GUI),将所有的操作通过fluent指令读入或输入console界面,实现模型读取、设置、求解、及后处理全流程操作。当然,几何模型的参数化不在fluent TUI操作范围内,可参照上述“参数化方法一”中的几何建模部分,或通过其他软件的几何建模脚本文件进行参数化(如solidworks,UG,croe等等)。
下面将我近期在fluent参数化建模过程中遇到的若干TUI编制难点问题作出如下几点解析:
1、如何在fluent中设置工作路径,或者如何使用TUI进入当前工作路径的次级文件夹或退至上一级文件夹?
如果要设置fluent工作路径,可参考链接https://wap.sciencenet.cn/blog-531760-1291010.html,(这个链接我没看懂,但是觉着很厉害)
如果要在fluentmeshing中获取相对路径下的某文件夹内的几何文件,使用“./文件夹1/文件夹2/文件名.后缀”。注意,用“./”开头,代表以当前所在问价夹(软件启动目录)开始,访问其子文件夹内容。如果文件夹1、文件夹2不存在,对于写出文件,会自动创建文件夹,对于读入文件,则直接报错,因为访问不到所要的文件。这是访问子文件夹的方法。
如果要使用TUI访问上一级文件夹(或者说退出当前文件夹)需要Scheme extension function编写一条指令ti-menu-load-string "sync-chdir .."
举例说明:
;几何文件导入
/file/import/cad yes "./1fastcase_files/dp0/Geom/DM/Geom.agdb" yes 40 yes mm
;在上一步进入了4级子文件夹,在此需要退出到原工作路径
(define i0 1)
(define in 4)
(do ((i i0 (+ i 1))) ((> i in))
(ti-menu-load-string "sync-chdir ..")
)
2、如何编译udf,TUI编译UDF没有太大问题,但是编译UDF需要相应的VS运行环境,按照我的理解,在一台装有VS并设置好fluent环境变量的电脑上先把udf编译好,生成文件libudf或者其他文件,然后再TUI中直接load编译好的udf更好一些。这样,参数化之后,用户可能就不需要再安装VS了,这个方法不一定对。未验证。
编译udf举例:
/define/user-defined/compiled-functions compile "test1" yes "a.c" "" ""
/define/user-defined/compiled-functions load "test1"
3、稳态及非稳态迭代计算
稳态问题很多都是默认设置run calculation的指令是:
/solve/diterate 100
非稳态问题需要先开启非稳态计算,设置时间步长,迭代步数,每步迭代次数等等
/define/models/unsteady-1st-order? yes
/solve/set/transient-controls/time-step-size 0.001
这步其实没什么用;/solve/set/transient-controls/number-of-time-steps 1000
这步其实没什么用;/solve/set/transient-controls/max-iterations-per-time-step 5
/solve/dual-time-iterate 1000 5
4、后处理视图设置
后处理视图如果不用GUI很难调整到好的位置和观察角度,camera,zoom,light等等都需要一点点去摸索。首先需要给定一个正视图,不管是front,top,right等等,让界面先找到自己的定位,然后再通过position、target、up-vector、field和zoom-camera去调整它(这两个的空间意义参考链接:https://www.cnblogs.com/Xiwang-Sun/p/16268135.html)
举例说明:
; 视图设置adjust camera,zoom,light,save view to view-0
/display/views/restore-view left
/display/views/camera/position -2 -10 5
/display/views/camera/target 2 0 1
/display/views/camera/up-vector -1 0 0
/display/views/camera/field 9 16
/display/views/camera/zoom-camera 1
5、后处理动画保存不在当前工作路径下
在后处理制作动画之后,输出动画视频mp4文件,但是默认设置一直把视频存储至c盘临时工作路径下,这时候需要把文件保存路径改为绝对路径(试了相对路径,不好使,如果有高手有解决办法,欢迎评论区附上代码)。即使设置了绝对路径,保存的每一帧文件也会存在c盘临时工作路径下,这个问题我解决的不是特别好,也可能是2022R2版本的bug。希望后续完善。
举例说明
/solve/animate/objects/create "animation-1" frequency-of time-step frequency 10 animate-on scene-1 storage-type hsf storage-dir "E:\workDir" view view-0 quit
/solve/animate/playback/read no yes animation-1
/solve/animate/playback/video/format mp4
/solve/animate/playback/video/name "scene-1"
/solve/animate/playback/write video
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删