首页/文章/ 详情

CAE仿真软件的批处理计算

2月前浏览1512

现代CAE软件不仅分析功能强大,而且人机可视化界面优异。但有时候仍需对某类模型进行大量的重复计算,即无需人工干预的批处理计算。这种类型的计算往往是对某个参数稍作改变,计算相应结果,以此获得最优的参数,如模型的几何尺寸,材料参数,或边界条件值等。通过批处理计算,可以快速的得到比较好的结论,提高CAE软件使用者的工作效率。

批处理运算对CAE软件功能提出了更高的要求。目前,大型通用仿真软件WELSIM提供了两种批处理方式。方式1,通过XML脚本文件自动运算。方式2,可视化建立多个分析工程,并执行批处理计算。本文分别介绍两种批处理计算CAE模型的流程。

方法1. 脚本批处理计算

主流的CAE软件都已经支持脚本批处理能力,由于自动化测试和脚本批处理的本质是一样的,都是一种数据持久化的宏命令。因此,已经支持自动化测试的CAE软件,肯定也具有批处理脚本计算的能力。

首先,在XML脚本中,建立一个WELSIM的计算流程。

清空目标文件夹

    <wsevent object="wsApp"command="cleanFolder" arguments="$WELSIM_DATA_ROOT/97_Exported/11018" />

    设置项目的单位制,这里使用的是mm-kg-s单位制。

      <wsevent object="mainWindow/Std_DlgUserPref/Std_DlgUserPref"command="activate" arguments="" /><wsevent object="mainWindow/PrefDlg/pagesWidget/general/scrollArea/qt_scrollarea_viewport/contents/tabWidget/qt_tabwidget_tabbar"command="set_tab_with_text" arguments="Units" /><wsevent object="mainWindow/PrefDlg/pagesWidget/general/scrollArea/qt_scrollarea_viewport/contents/tabWidget/qt_tabwidget_stackedwidget/tabUnits/groupBoxUnits/radioUnitsMMKS"command="set_boolean" arguments="true" /><wsevent object="mainWindow/PrefDlg/btnOK"command="activate" arguments="" />

      添加新FEM项目,使用默认的结构静力分析。

        <wsevent object="mainWindow/menuBar"command="activate" arguments="&amp;File" /><wsevent object="mainWindow/menuBar/&amp;File"command="activate" arguments="Fem_NewDoc" />

        从测试文件夹中导入一个几何体,文件名为 box_x20_y1_z2.step,并设置材料为钢。

          <wsevent object="mainWindow/menuBar"command="activate" arguments="&amp;Geometry" /><wsevent object="mainWindow/menuBar/&amp;Geometry"command="activate" arguments="Fem_ImportPart" /><wsevent object="mainWindow/OpenDialog"command="filesSelected" arguments="$WELSIM_DATA_ROOT/01_ShapeData/box_goup/box_x20_y1_z2.step" /><wsevent object="mainWindow/DockTreeDocking/TreeDocking/treeWidget"command="setCurrent" arguments="0.0.1.0.0.0.0.0" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData"command="setCurrent" arguments="8.1" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData/qt_scrollarea_viewport/11Material"command="activated" arguments="Structural Steel (ID:2)" />

          设置网格密度,执行网格划分。

            <wsevent object="mainWindow/DockTreeDocking/TreeDocking/treeWidget" command="setCurrent" arguments="0.0.1.0.1.0.0.0" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData"command="setCurrent" arguments="4.1" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData/qt_scrollarea_viewport/7MaximumSize"command="set_double" arguments="0.3" /><wsevent object="mainWindow/Fem_MeshAll/Fem_MeshAll"command="activate" arguments="" />

            设置固定边界条件,所选的边界实体是 Obj11_Face1。

              <wsevent object="mainWindow/Fem_BCFixed/Fem_BCFixed"command="activate" arguments="" /><wsevent object="mainWindow/DockTreeDocking/TreeDocking/treeWidget"command="setCurrent" arguments="0.0.1.0.2.0.1.0" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData"command="setCurrent" arguments="5.1" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData/qt_scrollarea_viewport/12Geometry/12SelBtnOK"command="set_selection" arguments="Obj11_Face1" />

              设置力边界条件,方向是Z,大小为1000,所选的边界是表面Obj11_Face2。

                <wsevent object="mainWindow/Fem_BCForce/Fem_BCForce"command="activate" arguments="" /><wsevent object="mainWindow/DockTreeDocking/TreeDocking/treeWidget"command="setCurrent" arguments="0.0.1.0.2.0.2.0" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData"command="setCurrent" arguments="5.1" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData/qt_scrollarea_viewport/13Geometry/13SelBtnOK"command="set_selection" arguments="Obj11_Face2" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData"command="setCurrent" arguments="9.1" /><wsevent object="mainWindow/DockPropDockingView/PropDockingView/PropView/tabWidget/qt_tabwidget_stackedwidget/propertyData/qt_scrollarea_viewport/13ForceZConstant/quantitySpinBox"command="set_double" arguments="1000" />

                求解,并添加一个应力结果节点,类型为默认的Von Mises应力,评价显示应力结果。

                  <wsevent object="mainWindow/Fem_Solve/Fem_Solve"command="activate" arguments="" /><wsevent object="mainWindow/Fem_ResultStress/Fem_ResultStress"command="activate" arguments="" /><wsevent object="mainWindow/DockTreeDocking/TreeDocking/treeWidget"command="setCurrent" arguments="0.0.1.0.3.0.0.0" /><wsevent object="mainWindow/Fem_EvaluateResult/Fem_EvaluateResult"command="activate" arguments="" />

                  将项目保存为p1.wsdb。同时,关闭当前的项目。

                    <wsevent object="mainWindow/menuBar"command="activate" arguments="&amp;File" /><wsevent object="mainWindow/menuBar/&amp;File"command="activate" arguments="Std_SaveAs" /><wsevent object="mainWindow/QFileDialog/fileNameEdit"command="set_string" arguments="$WELSIM_DATA_ROOT/97_Exported/11018/p1.wsdb" /><wsevent object="mainWindow/QFileDialog/buttonBox/1QPushButton0"command="activate" arguments="" /><wsevent object="mainWindow/menuBar/&amp;File"command="activate" arguments="Fem_CloseAllDocs" />

                    此时,一轮计算设置完成。需要新的一轮计算时,只需复 制粘贴以上代码,修改导入的模型和导出的项目文件名称,执行即可实现批处理。本算例的几何体相对统一,只是在长度上略有不同,因此不用修改边界条件的面名称,如果几何体差异较大,需要确认边界条件设置的面名称是正确的。

                    测试文本命名为11018_save_multi_structural_projects.xml,已经开源,并作为WELSIM测试算例之一保存在GitHub上。

                    方法2. 图形化项目文件批处理计算

                    WELSIM支持在项目树中同时建立多个项目。如图下图所示,建立了三个FEM项目。

                    设置好所有的材料,接触,边界等条件后,可以从菜单栏中点击Mesh & Solve All按钮,实现对所有项目的批处理计算。此功能可以在一个项目计算完成后,自动计算下个项目,中间无需人工干预。对于计算费时的大模型,以此方法,可以有效节约分析人员的时间。

                    总结

                    本文介绍了CAE软件的常用的两种批处理功能。两种方式各有特点,通常脚本批处理的脚本文件结构清楚易于理解、保存和修改。脚本文件通常较小,不占用硬盘空间。而项目文件批处理可以保存计算结果,评价结果时无需再次计算,但文件较大。两种批处理方式可以结合使用,使用脚本批处理进行初步筛选参数,缩小范围后,使用文件批处理计算并保存结果。

                    来源:WELSIM
                    ACT通用WELSIMUM材料
                    著作权归作者所有,欢迎分享,未经许可,不得转载
                    首次发布时间:2024-03-03
                    最近编辑:2月前
                    WELSIM
                    一枚搞仿真的老员工
                    获赞 17粉丝 41文章 250课程 0
                    点赞
                    收藏
                    未登录
                    还没有评论

                    课程
                    培训
                    服务
                    行家

                    VIP会员 学习 福利任务 兑换礼品
                    下载APP
                    联系我们
                    帮助与反馈