一线工程师总结Ansys Workbench之Mechanical应用——分析设置
liuian 2025-03-07 20:50 19 浏览
Ansys Workbench之Mechanical应用(中)——分析求解设置
对于结构静力学中的简单线性问题,不需要对其进行设置,但是对于复杂的分析需要设置一些控制选项。分析设置是在Mechanical分析树的Static Structural下的Anslysis Settings细节设置中。
本文主要对载荷步控制、求解器控制、重启控制、非线性控制、输出控制、分析数据管理进行介绍。
1 载荷步控制
载荷步控制用于指定求解步数和时间。在非线性分析时,用于控制时间步长。载荷步控制也用于创建多载荷步,如螺栓预紧载荷。
1.1 载荷步与子步
载荷步、子步和平衡迭代是控制加载求解过程的三个载荷时间历程节点。
1.1.1 载荷步
在线性静力学分析或稳态分析中,可以使用不同的载荷步施加不同的载荷组合。
在瞬态分析中,可以将多个载荷步加载到同一加载历程曲线的不同时间点。
注意:载荷可以分步,约束不能分步。
实例1,固定矩形条一端,在另一端分3步加载载荷,第一步只加载100N的力,第二步只加载10000Nm的逆时针扭矩,第三步推力与扭矩共同作用,求每一步的变形。
Step1,设置零件材料,接触关系,网格划分,过程略。
Step2,分析设置,将载荷步设置为3,其余默认。
Step3,设置边界条件,如下图。
载荷默认都是渐增(斜坡)加载的,用一个载荷步将载荷从0增加到设定值。
选中分析树中的Force,在信息窗口中出现了Tabular Data表格和Graph图表,代表了Force的加载历程,在第一步中,力从0渐变到100,并在第二三步中保持。
对于静力学分析,渐增加载与恒定加载计算无区别,本例将力与扭矩都改为恒定加载,在表格第一行将数字改为设定值。
要想Force在第二步不起作用,只需要点击图表的第二步区域或表格对应行,右击选择Activate/Deactive at this step!(在此步激活/取消),此载荷便在第二步中消失。
同样设置Moment载荷,使它在第一步中不起作用。
Step3,添加结果,点击分析树的Solution(A6),在工具栏出现Solution工具条,点击Deformation-Total(合位移),在分析树中便出现了Total Deformation项目,默认是最后结果,但是现在我们需要查看第一步结果。
在Total Deformation的细节设置中,By改为Result Set(结果位置),Set Number改为1,即表示第一步的结果。当然,也可以设置为Time(时间),然后在下一行Display Time改为1s。同样设置第二三步的结果。
Step4,计算,结果如下
实例2,螺栓预紧问题:螺栓预紧时,我们可以分两步加载预紧力,第一步坡度加载预紧力,第二步锁定。
在分析设置中将载荷步设置为2。
选择Loads下的Bolt Pretension(螺栓预紧力),点击Graph图表的第一步,螺钉预紧力中Define By设置为Load,输入预紧力大小。再点击Graph图表的第二步,Define By设置为Lock锁定。
1.1.2 子步
子步Substep是一个载荷步中插入若干的点。通常一个子步求解需要若干次迭代,每次迭代都被称为一次平衡迭代。子步对于求解过程的控制非常重要,很多时候需要使用不同的子步数来满足不同的加载和求解需要。子步的主要作用如下:
1,在非线性静态和稳态分析中,使用子步逐渐施加载荷以提高求解精度,甚至可以使求解结果从不收敛变为收敛。在以后的文章将讲到子步在非线性屈曲中的应用。
2,在线性或非线性瞬态分析中,使用子步满足时间步长的需要,得到较为精确的解,即满足瞬态时间累计法则。在以后的文章将讲到子步在瞬态分析中的应用。
3,在谐波响应分析中,使用子步获得响应频率范围内多个频率处的解。在以后的文章将讲到子步在瞬态分析中的应用。
以下以矩形条一端固定一端加载力为例说明子步的设置方法
在分析设置中,将自动时间步Auto Time Stepping设置为On,Define By设置为Substep。然后需要设置三个参数
初始子步Initial substeps :用于计算初始加载量(即确定初始子步位置)。 最小子步Minimum Substeps,最大子步 Maximum Substeps用于计算子步之间的增量。三者关系数值关系必须满足:最小子步≤初始子步≤最大子步。大多数情况下,为了方便控制与计算,设置:最小子步=初始子步=最大子步。
比如给矩形条加载100N的力,载荷步为1,初始子步8,最小子步4,最大子步10。
则力的初始加载值为 100N/8=25N,子步的数量为4~10(由程序选择),子步之间的增量范围为100N/10~100N/4,即10N~25N。其中最小子步不得大于最大子步,初始子步必须在最小子步和最大子步的数值之间)
计算后可以在图表中看到共生成了5个子步。
1.2 时间
载荷步和子步中经常会见到时间相关的选项,但是此处的1s不一定表示1s时间。无论载荷类型是否依赖于时间,Workbench都使用时间作为跟踪参数,这样,计算的结果将是与时间相关的函数。
1,在静态线性分析中,时间取值为常数0,即计算与时间无关,所以在案例1中,我们可以将渐增加载改为恒定加载,而不影响计算结果。
2,在瞬态分析中,时间作为表示真实时间历程的变量在变化。
3,在其他分析中,时间仅作为一个计算器,识别求解时所采用的不同载荷步。
4,时间也可以作为识别载荷步与载荷子步的跟踪器,载荷步是作用在指定的时间间隔内的一系列载荷,载荷子步是载荷步中的时间节点,平衡迭代求取的是子步时间节点上的中间解。
2 求解器控制
2.1 求解器类型
求解器类型有直接求解器Direct和迭代求解器Iterative。我们一般使用程序控制就可以。
直接求解器可以处理任何情况,主要用于薄面和细长体的模型。
迭代求解器在处理体积大的模型时很有效。
2.2 弱弹簧
弱弹簧Weak Springs:在某些时候,希望模型在平衡状态下计算,而不是约束所有方向,此时就会用到弱弹簧。比如如下一个几何体,在左右方向受到方向相反大小相等的力,理论上几何体处于平衡状态,不会发生刚体平移,但是在有限元软件中,经过网格离散化后,几何体可能处于微小的不平衡中,而弱弹簧就是用来平衡这种微小不平衡力。
但是,用户约束所有可能的刚体平移方向才是最好的习惯,比如上图模型,可以采用1/2或1/4的模型,施加对称约束。
2.3 大变形
大变形Large Deflection用于几何非线性计算中,关于非线性的概念将在非线性分析一文中详解。大变形关闭时,计算器使用模型的初始刚度矩阵;大变形打开后,计算器将在每次迭代后重新生成刚度矩阵。
当变形超过5%或转角超过10°时,必须打开大变形开关。
2.4 惯性释放
通常在做静力学分析时,需要保证结构无刚体平移,否则求解器不能计算。但是在飞机飞行,轮船航行时要计算机构,需要采用惯性释放在结构上施加一个虚拟的约束反力,来保证合力平衡。惯性释放允许对完全无约束的结构进行静力分析。
3 其他控制
3.1 重启控制
重启控制设置静力分析和瞬态分析中的多个重启点,来获得从某时刻重新启动分析所需的数据库。
3.2 非线性控制
非线性控制可以修改收敛准则和其他一些求解控制选项,增加了稳定控制和稳定能量结果。
3.3 输出控制
输出控制允许在结果后处理中得到需要的时间点结果,尤其在非线性分析中,中间载荷的结果也很重要。
3.3 分析数据管理
分析数据管理用于管理分析数据的储存结果文件,以用于其他的分析系统。
写在最后,除了在需要时设置载荷步与子步外,其余选项使用默认设置已经足以解决我们工作中的绝大部分需求。本文对不常用的设置只做了简单介绍,在以后的详细实例中还会根据具体需求讲解。
相关推荐
- 总结下SpringData JPA 的常用语法
-
SpringDataJPA常用有两种写法,一个是用Jpa自带方法进行CRUD,适合简单查询场景、例如查询全部数据、根据某个字段查询,根据某字段排序等等。另一种是使用注解方式,@Query、@Modi...
- 解决JPA在多线程中事务无法生效的问题
-
在使用SpringBoot2.x和JPA的过程中,如果在多线程环境下发现查询方法(如@Query或findAll)以及事务(如@Transactional)无法生效,通常是由于S...
- PostgreSQL系列(一):数据类型和基本类型转换
-
自从厂子里出来后,数据库的主力就从Oracle变成MySQL了。有一说一哈,贵确实是有贵的道理,不是开源能比的。后面的工作里面基本上就是主MySQL,辅MongoDB、ES等NoSQL。最近想写一点跟...
- 基于MCP实现text2sql
-
目的:基于MCP实现text2sql能力参考:https://blog.csdn.net/hacker_Lees/article/details/146426392服务端#选用开源的MySQLMCP...
- ORACLE 错误代码及解决办法
-
ORA-00001:违反唯一约束条件(.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。ORA-00017:请求会话以设置跟踪事件ORA-00018:超出最大会话数ORA-00...
- 从 SQLite 到 DuckDB:查询快 5 倍,存储减少 80%
-
作者丨Trace译者丨明知山策划丨李冬梅Trace从一开始就使用SQLite将所有数据存储在用户设备上。这是一个非常不错的选择——SQLite高度可靠,并且多种编程语言都提供了广泛支持...
- 010:通过 MCP PostgreSQL 安全访问数据
-
项目简介提供对PostgreSQL数据库的只读访问功能。该服务器允许大型语言模型(LLMs)检查数据库的模式结构,并执行只读查询操作。核心功能提供对PostgreSQL数据库的只读访问允许L...
- 发现了一个好用且免费的SQL数据库工具(DBeaver)
-
缘起最近Ai不是大火么,想着自己也弄一些开源的框架来捣腾一下。手上用着Mac,但Mac都没有显卡的,对于学习Ai训练模型不方便,所以最近新购入了一台4090的拯救者,打算用来好好学习一下Ai(呸,以上...
- 微软发布.NET 10首个预览版:JIT编译器再进化、跨平台开发更流畅
-
IT之家2月26日消息,微软.NET团队昨日(2月25日)发布博文,宣布推出.NET10首个预览版更新,重点改进.NETRuntime、SDK、libraries、C#、AS...
- 数据库管理工具Navicat Premium最新版发布啦
-
管理多个数据库要么需要使用多个客户端应用程序,要么找到一个可以容纳你使用的所有数据库的应用程序。其中一个工具是NavicatPremium。它不仅支持大多数主要的数据库管理系统(DBMS),而且它...
- 50+AI新品齐发,微软Build放大招:拥抱Agent胜算几何?
-
北京时间5月20日凌晨,如果你打开微软Build2025开发者大会的直播,最先吸引你的可能不是一场原本属于AI和开发者的技术盛会,而是开场不久后的尴尬一幕:一边是几位微软员工在台下大...
- 揭秘:一条SQL语句的执行过程是怎么样的?
-
数据库系统能够接受SQL语句,并返回数据查询的结果,或者对数据库中的数据进行修改,可以说几乎每个程序员都使用过它。而MySQL又是目前使用最广泛的数据库。所以,解析一下MySQL编译并执行...
- 各家sql工具,都闹过哪些乐子?
-
相信这些sql工具,大家都不陌生吧,它们在业内绝对算得上第一梯队的产品了,但是你知道,他们都闹过什么乐子吗?首先登场的是Navicat,这款强大的数据库管理工具,曾经让一位程序员朋友“火”了一把。Na...
- 详解PG数据库管理工具--pgadmin工具、安装部署及相关功能
-
概述今天主要介绍一下PG数据库管理工具--pgadmin,一起来看看吧~一、介绍pgAdmin4是一款为PostgreSQL设计的可靠和全面的数据库设计和管理软件,它允许连接到特定的数据库,创建表和...
- Enpass for Mac(跨平台密码管理软件)
-
还在寻找密码管理软件吗?密码管理软件有很多,但是综合素质相当优秀且完全免费的密码管理软件却并不常见,EnpassMac版是一款免费跨平台密码管理软件,可以通过这款软件高效安全的保护密码文件,而且可以...
- 一周热门
-
-
Python实现人事自动打卡,再也不会被批评
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)