fluent批量处理——模型参数…
2018-06-17 23:27:09来源:未知 阅读 ()
对于常见的工程应用来说,计算的工况很多,尤其优化工作,少则几百,多则上千,面对如此之多的case文件要写,假如按照一个一个的读写的话,相信你一定会为这么机械的工作烦躁,甚至影响今后好几天的心情,那么有什么简便一些的方法呢?答案是肯定的。那就是采用fluent的journal文件。
首先打开fluent软件,在file/write/start journal,见下图:
选择保存文件名*.journal后(看你自己怎么设置文件名),我一般按照这一组的类型来命名;
这样, journal文件就开始记录你以后的每一步操作。
按照原先设置模型参数一样,一步步来就是了。
等你操作完成后,原先的”start journal“现在已经是”stop journal“,所以你只需要选择”stop journal“就可以了。
此时,用写字板打开看看就可以看到如下的一些记录命令。
(cx-gui-do cx-activate-item "MenuBar*ReadSubMenu*Case...")
(cx-gui-do cx-activate-item "Warning*OK")
(cx-gui-do cx-set-text-entry "Select File*Text" "fluent.msh")
(cx-gui-do cx-activate-item "Select File*OK")
(cx-gui-do cx-activate-item "MenuBar*GridMenu*Check")
(cx-gui-do cx-activate-item "MenuBar*GridMenu*Smooth/Swap...")
(cx-gui-do cx-activate-item "Smooth/Swap Grid*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "Smooth/Swap Grid*PanelButtons*PushButton1(Swap)")
(cx-gui-do cx-activate-item "Smooth/Swap Grid*PanelButtons*PushButton2(Cancel)")
(cx-gui-do cx-activate-item "MenuBar*ModelsSubMenu*Solver...")
(cx-gui-do cx-activate-item "Solver*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "MenuBar*ModelsSubMenu*Viscous...")
(cx-gui-do cx-activate-item "Viscous Model*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "MenuBar*DefineMenu*Boundary Conditions...")
(cx-gui-do cx-activate-item "Boundary Conditions*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-set-real-entry-list "velocity-inlet-10-1*Frame4*Frame3(Momentum)*Table1*Table4*RealEntry2(Velocity Magnitude)" '( 10))
(cx-gui-do cx-activate-item "velocity-inlet-10-1*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "Boundary Conditions*PanelButtons*PushButton2(Cancel)")
(cx-gui-do cx-activate-item "MenuBar*ControlsSubMenu*Solution...")
(cx-gui-do cx-set-list-selections "Solution Controls*Table1*Frame2(Pressure-Velocity Coupling)*Table2(Pressure-Velocity Coupling)*DropDownList1" '( 1))
(cx-gui-do cx-activate-item "Solution Controls*Table1*Frame2(Pressure-Velocity Coupling)*Table2(Pressure-Velocity Coupling)*DropDownList1")
(cx-gui-do cx-set-list-selections "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList1(Pressure)" '( 3))
(cx-gui-do cx-activate-item "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList1(Pressure)")
(cx-gui-do cx-set-list-selections "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList2(Momentum)" '( 1))
(cx-gui-do cx-activate-item "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList2(Momentum)")
(cx-gui-do cx-set-list-selections "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList3(Turbulent Kinetic Energy)" '( 1))
(cx-gui-do cx-activate-item "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList3(Turbulent Kinetic Energy)")
(cx-gui-do cx-set-list-selections "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList4(Turbulent Dissipation Rate)" '( 1))
(cx-gui-do cx-activate-item "Solution Controls*Table2*Frame1(Discretization)*Table1(Discretization)*DropDownList4(Turbulent Dissipation Rate)")
(cx-gui-do cx-activate-item "Solution Controls*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "MenuBar*MonitorsSubMenu*Residual...")
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry11" '( 1e-005))
(cx-gui-do cx-set-toggle-button "Residual Monitors*Table1*Frame1(Options)*ToggleBox1(Options)*CheckButton2(Plot)" #f)
(cx-gui-do cx-activate-item "Residual Monitors*Table1*Frame1(Options)*ToggleBox1(Options)*CheckButton2(Plot)")
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry17" '( 1e-005))
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry23" '( 1e-005))
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry29" '( 1e-005))
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry35" '( 1e-005))
(cx-gui-do cx-set-real-entry-list "Residual Monitors*Table2*RealEntry41" '( 1e-005))
(cx-gui-do cx-activate-item "Residual Monitors*PanelButtons*PushButton1(OK)")
(cx-gui-do cx-activate-item "MenuBar*WriteSubMenu*Case...")
(cx-gui-do cx-set-text-entry "Select File*Text" "fluent.cas")
(cx-gui-do cx-activate-item "Select File*OK")
(cx-gui-do cx-activate-item "Warning*OK")
这样一个case文件就写完了,你后面需要做的就是替换"fluent.msh"与"fluent.cas“为你自己的文件名就行。复制粘贴写好的一个case的journal文件,替换成下一个mesh文件名;值得注意的是,模型文件中的边界数量要一致,否则会出现错误,因为GUI语言是按照fluent里边界的ID号来识别的。
基本上,这样写case文件还是很省事的,你到时就可以在一边听着音乐,一边看着它自动编写!
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:灵魂宝石 BZOJ 2663
下一篇:防线修建 BZOJ 2300
- 解析一下C++的异常处理 2020-05-15
- 使用错误代码对象进行C++错误处理 2020-04-10
- 快速批量将B站 BV 号更改为 AV 号 - BTA 2020-04-08
- 异常处理、动态内存申请在不同编译器之间的表现差异 2020-03-23
- c++中的异常处理 2020-03-21
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash