使用 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 将变量指定为响应,以黄色突出显示:

 

重申此示例的目标是校准从仿真响应到参考信号的信号,我们需要定义几个信号调节和信号比较作。定义了以下步骤,生成变量和/或响应 - 请注意,指定为响应的变量以绿色突出显示:

  1. 为参考位移创建一个变量,该变量将用于根据参考信号对仿真信号进行插值:disp_ref
  2. 使用 disp_ref 对仿真信号进行插值,以便参考信号和仿真信号具有相同的长度。生成的信号将存储为 Signal_interpolate 响应变量。
  3. 计算Signal_interpolate的梯度 (Signal_interpolate_gradient) 及其最小值 (min_gradient_Signal),用于确保生成的信号具有正的最小梯度,即曲线末端的斜率。
  4. 创建一个线性间隔的位移矢量 (disp_steps),该矢量将用于在相同纵坐标处使用较少的点(位移)来对齐参考信号和仿真信号。
  5. disp_steps定义的位移处提取参考力值和模拟力值,分别产生force_steps_refforce_steps_sim响应。
  6. 通过计算 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 功能的皮毛,为了简洁起见,跳过了许多细节。我们邀请您下载提供的模型,并将其用作优化您自己的设计的基础。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/31600.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SSA-朴素贝叶斯分类预测matlab代码

麻雀搜索算法(Sparrow Search Algorithm,简称 SSA)是于 2020 年提出的一种新兴群智能优化算法,其灵感主要来源于麻雀的觅食行为以及反捕食行为。 本次使用的数据是 Excel 格式的分类数据集数据。数据集被合理划分为训练集、验证集…

Houdini SOP层 Scatter节点

SOP 代表 Surface Operator(几何体操作节点),所有几何体的建模、变形、分布等操作都在此层级完成。 Scatter节点的作用就是 以不同的密度在模型表面撒点 Scatter 节点属于 SOP(几何体)层级: 进入 Geometr…

数据结构:有序表的合并

前文介绍了《有序表的插入》,本文介绍有序表的合并。这两种对有序表的操作,是数据结构中常考的内容,特别是在 408 考卷中,在算法设计的题目中,有可能会考查对有序表的操作。那么,这两篇文章中的方法就是能够…

STM32Cubemx-H7-8-维特科技WT61C-TTL陀螺仪获取XYZ角度

前言 本人玩车的时候要用到陀螺仪 MPU6050容易卡死,然后还很漂,还是太难用了 68块钱的陀螺仪再上位机上的效果挺满意,于是打算用串口用到自己的模型上 本文教大家如何编写串口程序,通过串口获取角度 大家把本文的原理学会后&…

本地部署Navidrome个人云音乐平台随时随地畅听本地音乐文件

文章目录 前言1. 安装Docker2. 创建并启动Navidrome容器3. 公网远程访问本地Navidrome3.1 内网穿透工具安装3.2 创建远程连接公网地址3.3 使用固定公网地址远程访问 前言 今天我要给大家安利一个超酷的私有化音乐神器——Navidrome!它不仅让你随时随地畅享本地音乐…

音视频入门基础:RTP专题(15)——FFmpeg源码中,获取RTP的视频信息的实现

一、引言 通过FFmpeg命令可以获取到SDP文件描述的RTP流的视频压缩编码格式、色彩格式(像素格式)、分辨率、帧率信息: ffmpeg -protocol_whitelist "file,rtp,udp" -i XXX.sdp 本文以H.264为例讲述FFmpeg到底是从哪个地方获取到这…

配置 Thunderbird 以使用 outlook 邮箱

配置 Thunderbird 以使用 outlook 邮箱 thunder bird 作为邮件客户端非常好用,不用每次登录邮箱网页端查看邮件,直接打开配置好的 thunder bird 即可免登录查看邮件。 0. 什么是 Thunder Bird ? https://www.thunderbird.net/zh-CN/ Thunderbird 创立…

关于ModbusTCP/RTU协议转Ethernet/IP(CIP)协议的方案

IGT-DSER智能网关模块支持西门子、倍福(BECKHOFF)、罗克韦尔AB,以及三菱、欧姆龙等各种品牌的PLC之间通讯,支持Ethernet/IP(CIP)、Profinet(S7),以及FINS、MC等工业自动化常用协议,同时也支持PLC与Modbus协议的工业机器人、智能仪…

蓝桥杯省赛真题C++B组-裁纸刀2022

一、题目 问题描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 小蓝有一个裁纸刀,每次可以将一张纸沿一条直线裁成两半。 小蓝用一张纸打印出两行三列共 6 个二维码,至少使用九次裁出来&#x…

阿里云操作系统控制台实战评测:提升云资源管理与监控效率

文章目录 前言产品介绍操作系统控制台体验阿里云操作系统开通 帮助与总结建议 前言 随着云计算和虚拟化技术的发展,操作系统控制台作为运维管理的核心工具之一,在现代IT环境中发挥着越来越重要的作用。它提供了一种更加直观、高效的方式来管理操作系统&…

C++ 链表List使用与实现:拷贝交换与高效迭代器细致讲解

目录 list的使用: 构造与赋值 元素访问 修改操作 容量查询 链表特有操作 拼接(Splice) C11 新增方法 注意: stl_list的模拟实现: 一、链表节点设计的艺术 1.1 结构体 vs 类的选择 二、迭代器实现的精髓 2…

复试难度,西电卓越工程师学院(杭研院)考研录取情况

01、卓越工程师学院各个方向 02、24卓越工程师学院(杭研院)近三年复试分数线对比 PS:卓越工程师学院分为广研院、杭研院 分别有新一代电子信息技术、通信工程、集成电路工程、计算机技术、光学信息工程、网络信息安全、机械,这些…

【JavaEE】线程池

【JavaEE】线程池 一、引言1.1 什么是线程池1.2 为什么要使用线程池 二、ThreadPoolExecutor类2.1 构造方法2.1.1 corePoolSize和maximumPoolSize2.1.2 KeepAliveTime和unit2.1.3 BlockingQueue<Runnable> workQueue2.1.4 ThreadFactory threadFactory2.1.5 RejectedExec…

GaussDB安全配置指南:从认证到防御的全方面防护

一、引言 随着企业数据规模的扩大和云端化进程加速&#xff0c;数据库安全性成为运维的核心挑战之一。GaussDB作为一款高性能分布式数据库&#xff0c;提供了丰富的安全功能。本文将从 ​认证机制、权限控制、数据加密、审计日志​ 等维度&#xff0c;系统性地讲解如何加固 Ga…

Ubuntu 22.04 升级到 Ubuntu 24.04 全流程指南

&#x1f4cc; 1. 前言 Ubuntu 24.04 是最新的 LTS 版本&#xff0c;带来了内核更新、性能优化以及更强的安全性。本指南详细记录了从 Ubuntu 22.04 升级到 24.04 的完整过程&#xff0c;包括 升级前的准备、遇到的问题及如何选择最佳选项&#xff0c;避免升级失败或系统损坏。…

Git和GitHub基础教学

文章目录 1. 前言2. 历史3. 下载安装Git3.1 下载Git3.2 安装Git3.3 验证安装是否成功 4. 配置Git5. Git基础使用5.1 通过Git Bash使用5.1.1 创建一个新的仓库。5.1.1.1 克隆别人的仓库5.1.1.2 自己创建一个本地仓库 5.1.2 管理存档 5.2 通过Visual Studio Code使用 6. Git完成远…

【leetcode hot 100 234】回文链表

错误解法一&#xff1a;正序查找的过程中&#xff0c;将前面的元素倒叙插入inverse链中&#xff0c;找到偶数中点时&#xff0c;对称查找。 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* Li…

Manus:成为AI Agent领域的标杆

一、引言 官网&#xff1a;Manus 随着人工智能技术的飞速发展&#xff0c;AI Agent&#xff08;智能体&#xff09;作为人工智能领域的重要分支&#xff0c;正逐渐从概念走向现实&#xff0c;并在各行各业展现出巨大的应用潜力。在众多AI Agent产品中&#xff0c;Manus以其独…

IDEA(十一)调整新版本的工具栏显示Git操作(pull、commit、push、revert等)

目录 一、背景二、操作步骤2.1 开启新 UI 样式2.2 设置 Tool Window 工具栏 一、背景 好久没有更新 IDEA 了&#xff0c;更新之后发现 IDEA 的工具栏消失了。一番操作之后&#xff0c;终于把 IDEA 的工具栏的设置调整好了&#xff0c;在此进行记录调整步骤&#xff0c;供大家学…

Mysql快速学习——《一》: Mysql的基础架构

了解mysql的基础架构, 理解大概的实现思想, 更有利与我们知之所以然, 是我们学习mysql起来思路更清晰, 效率更高. 思维导图: mysql 基础架构 mysql基础架构.png 1. 连接器 Mysql作为服务器&#xff0c;一个客户端的Sql连接过来就需要分配一个线程进行处理&#xff0c;这个线程…