使用 Ansys Mechanical 和 optiSLang 进行材料模型校准
介绍
提供与实验数据匹配的准确仿真结果的材料模型是成功对实际应用进行 FEA 仿真的基础。根据实验数据校准材料模型是一个优化问题,其中仿真和真值信号之间的“距离”最小,表明模型与实验的“接近”程度。在此示例中,我们将对校准示例进行概述,在 Workbench 中使用 Ansys optiSLang 和 Mechanical 完成 Ansys 帮助中的弹簧钢模型校准示例模型。请参阅 optiSLang 文档,详细了解为简洁起见,我们跳过的流程的各个方面。
材料模型
将用于“匹配”实验数据的材料模型是一个非线性各向同性硬化模型,其 Voce 硬化定律由方程给出
其中 Unknown Material Parameters (未知材料参数)
由此产生的应力-应变曲线
在 Ansys Workbench Engineering Data 中,我们对相应的材料模型参数进行参数化,如下所示:
试样和实验数据
试样和实验力-位移曲线(真实值)如下所示:
实验数据将作为名为 force_displacement_ref.txt 的文本文件存储在 Workbench model user_files 文件夹中,optiSLang 将在整个优化过程中引用该数据。该文件的一个片段如下所示,其中指出 Reference 关键字对于区分这些数据与模拟结果非常重要:
有限元模型
有限元模型由带有实体元件的薄体拉伸试样网格组成,在另一端固定的情况下承受末端位移,从而模拟标准拉伸试验。网格和应用的边界条件如下所示:
每次运行时,测厚仪截面的力和位移都会通过 APDL 命令片段写入名为 force_displacement_sim.txt 的文件中。force_displacement_sim.txt 文件的格式与 force_displacement_ref.txt 文件相同,不同之处在于“Reference”一词替换为“Simulation”,这允许 optiSLang 区分两个数据集。 此外,塑性应变场的图像被写入文件。
Workbench 项目
我们将开发的最终 Workbench 项目示意图是
数据发送
数据发送 组件用于管理为每个设计点运行复制和保存的数据。通过仔细选择要为每次运行保存的文件,工程大小可以保持相对较小,因此不建议选择大文件,例如结果文件,否则工程大小可能会变得非常大。下面显示,我们只需要为每次运行保存以下文件:
信号处理
Signal Processing (信号处理) 组件是定义数据处理和计算的所有方面的地方。以下各节将对 Signal Processing 向导中的以下选项卡进行说明。
ETK
在这里,我们定义如何处理 force_displacement_ref.txt 和 force_displacement_sim.txt 文件。这些文件的设置如下图所示,请注意 optiSLang 帮助文档中介绍了详细信息:
force_displacement_ref.txt
force_displacement_sim.txt
文件
Files 选项卡的设置如下所示:
变量
的 Variables 选项卡是定义数据以及数据计算产生的变量的位置。此示例的 Variables 选项卡的布局如下所示,其中通过单击 Add Variable 将变量指定为响应,以黄色突出显示:
重申此示例的目标是校准从仿真响应到参考信号的信号,我们需要定义几个信号调节和信号比较作。定义了以下步骤,生成变量和/或响应 - 请注意,指定为响应的变量以绿色突出显示:
- 为参考位移创建一个变量,该变量将用于根据参考信号对仿真信号进行插值:disp_ref。
- 使用 disp_ref 对仿真信号进行插值,以便参考信号和仿真信号具有相同的长度。生成的信号将存储为 Signal_interpolate 响应变量。
- 计算Signal_interpolate的梯度 (Signal_interpolate_gradient) 及其最小值 (min_gradient_Signal),用于确保生成的信号具有正的最小梯度,即曲线末端的斜率。
- 创建一个线性间隔的位移矢量 (disp_steps),该矢量将用于在相同纵坐标处使用较少的点(位移)来对齐参考信号和仿真信号。
- 在disp_steps定义的位移处提取参考力值和模拟力值,分别产生force_steps_ref和force_steps_sim响应。
- 通过计算 force_step_refs 和 force_steps_sim 信号之间的平方根误差来定义信号之间的“距离”,从而得到RSE_signal响应,该响应将成为将最小化的优化变量。
运行选项
此示例中使用 Run options 设置默认值。但是,根据许可,可能会进行并行模拟以缩短获得结果的时间。
参数设置
最终的参数表如下所示,其中指出,从静态结构 分析中添加了两个用于塑性应变的附加参数:
最佳预后的自适应元模型 (AMOP)
元模型,也称为响应表面,是一种统计模型,它将响应与输入相关联,通过智能选择少量数据点的位置而生成。生成的表面是给定相对稀疏数据时的响应的平均值。自适应元模型通过战略性地添加输入位置来增强标准元模型,以最小化响应预测的方差。在这里,我们使用定义如下的 AMOP。
参数
输入参数值、类型和范围的定义如下所示:
开始设计
这是空白的,因为我们是从头开始的。
标准
此处,优化条件的定义如下面的 Criteria 窗格所示:
适应
我们最多允许 150 个设计点来生成 AMOP:
拖把
对于 MOP 的定义,我们使用大多数默认值,选择 Tested 元模型的类型,如下所示:
其他
我们将默认值保留在 Other (其他) 选项卡中。
结果设计
此表最初为空,显示设计点的结果。请注意,某些设计被认为是不可行的,因为这些设计违反了最小梯度约束(约束列显示在第 2 张图中)。
AMOP 结果
以下是 AMOP 运行中可用的一些结果的屏幕截图:
如果我们关注顶部中间的信号图,我们会看到“最佳设计”(红色迹线)与参考信号(绿色迹线)合理匹配。此外,残差图显示参考信号和 AMOP 预测之间的方差很小,因此表明拟合良好。
还有更多的绘图和诊断可用于确定拟合优度。有关更多详细信息,请参阅 optiSLang 手册。
进化算法
进化算法是 optiSLang 的“自然启发优化”。我们使用 AMOP 中的 10 大最佳设计作为初始设计,使优化过程更具针对性和效率。Parameter (参数) 设置与 AMOP 相同,其他设置详述如下:
开始设计
Start 设计被选为具有最低var_RSE的前 10 个可行 AMOP 设计。(部分)表如下所示:
标准
这些标准与 AMOP 的标准相同。
美国
算法和其他设置如下所示,其中我们最多允许 10,000 个设计:
结果设计
在此示例中,生成的设计数为 1,830,并非所有设计都可行。按var_RSE排序的结果表如下所示,并指出前 2 个设计不可行:
结果
这是 Evolutionary Algorithm(进化算法)的典型结果输出图。请注意,最佳设计 (#1629) 比仅从 AMOP 中找到的设计更合适:
单纯形法(优化)
单纯形法是另一种经常用于优化先验优化的优化方法。因此,我们将应用最佳进化设计 (#1629) 作为起始设计。将像以前一样应用相同的标准、参数范围等。
结果设计
单纯形优化器又运行了 183 个设计。结果如下图所示,指出 var_RSE 的值低于 Evolutionary Algorithm 的值:
结果
最后,单纯形优化的结果集中在最佳设计上 (#180)。
结论
在本文中,我们展示了如何使用 Ansys Mechanical 和 optiSLang 在 Ansys Workbench 中根据实验数据校准材料模型。在这里,我们完成了一个 Ansys 教程模型,只是触及了 optiSLang 功能的皮毛,为了简洁起见,跳过了许多细节。我们邀请您下载提供的模型,并将其用作优化您自己的设计的基础。