首页/文章/ 详情

这个Pinball乒乓球有点拽,一言不合就给报Error!

1年前浏览263

最近一个朋友在用一个很简单的模型验证接触设置的时候遇到一个小问题在计算的时候出现如下Error,于是跟笔者一起探讨了下笔者看到这个Error的第一眼就是似曾相识的感觉熟悉的对话框熟悉的提示信息因为笔者在之前学习摸索的过程中不止一次遇到这个Error通过Error中的提示信息可以了解到

1. 求解结果超过最大限制

2. 施加了不正确的载荷或缺少约束

3. 实体单元中至少在两个方向上存在不止一个单元

 

可见出现求解错误的总体原因是上述三个但是还是无法精确判断原因到底是哪一个那么打开flie.err文件之后如下图可进一步确认UX方向计算位移值远远超过了最大限制1000000,并提示出现这种错误的通常原因是欠约束导致刚体 位移

通过上述分析我们可进一步确认出现求解错误的最大原因极有可能是约束不足导致的刚体 位移值极大所以笔者便询问了朋友的模型情况载荷和位移施加情况接触定义情况针对朋友的这个模型其实很简单仅是两段Φ10×1mm的接管连接不同的是一段接管采用实体单元一端接管采用梁单元并在实体单元和梁单元连接位置定义了绑定接触一段接管施加固定位移约束一段施加轴向力约束至此便可清晰的分析出导致约束不足的原因只可能出现在接触位置但是朋友明明已经设置接触了为什么还会出现刚体 位移呢

这也是我们在用wb的时候很容易出现的一个问题就是一切都采用wb软件内部程序的默认设置Program Controlled,不可否认的是在前任经典界面基础和多年实践经验上发展而来的wb在一些计算类型计算模型等方面会默认选择比较合适的一些设置省去了很多操作的麻烦但这恰恰也是隐患所在比如上述绑定接触在程序默认的设置下是求解错误的因而我们需要去了解每个设置中的含义做到知己知彼方能百战不殆后来笔者将接触算法改为MPC算法同时将Pinball半径进行了修改计算便可求解了

 

接触算法选择不当导致错误分析如下

1. 接触分析中接触算法有罚函数法拉格朗日法增广拉格朗日法和MPCwb中如果由Program Controlled默认选择的话对于两个实体接触-体接触则默认的是罚函数法而对于其他任何接触如点-线接触-面接触-面接触等则默认的是增广拉格朗日法本模型中是点-面接触因而程序默认的是采用增广拉格朗日算法

2. 算法是有适用的接触类型的比如对于Bonded接触类型增广拉格朗日算法是不适用的而只有MPC法才适用于Bonded接触类型所以本模型采用默认的增广拉格朗日算法是错误的需记住,MPC法只适用于BondedNo Separation两种接触类型其他接触类型均不适用因而本模型中需要将接触算法改成MPC。关于接触类型可点击链接文章:这些接触类型的定义搞明白了,方能根据工程实际和模型进行正确选择!

未定义Pinball半径导致错误分析原因如下

1. 本模型将算法改成适用的MPC法后仍然无法求解原因在于Pinball RegionPinball Radius也是由Program Controlled默认的默认的含义是通过程序内置的一种算法计算接触尺寸的大小来检查接触状态是否是闭合的但前提是真正建立的模型中存在实际的接触或间隙极小的时候程序默认计算的尺寸才能搜索和探测到接触的存在

2. 本模型中是点-面接触一个是点一个是圆环面而点与圆环面之间有4mm的间隙程序默认根本探测不到接触区域闭合所以就没有建立接触因而这个接触的定义是无意义的相当于没有定义),所以才会出现约束不足导致刚体 位移的错误

3. 需手动将Pinball Region修改为Pinball Radius并定义合适Radius半径来进行接触的探测,“合适两字很重要定义的半径不同会导致不同的结果因而需对半径的含义认识清楚wb中定义了Pinball Radius之后会在模型中显示出一个球体球的半径即为定义的Pinball半径其含义如下图所示凡是被球面所包裹的contact(如上图的目标点target(如上图的接触面单元内的高斯积分点或节点便被探测到处于接触状态并将它们绑定耦合在一起一般默认情况下是高斯积分点的耦合但是对于采用拉格朗日算法和MPC算法的则是节点耦合如下图所示

 

4. 要根据实际模型来定义Pinball半径的大小半径的不同影响到接触范围并最终影响计算结果比如上图定义的半径大小不足以将接触面内所有单元都包裹因而只绑定了内圈和中间圈的节点而外圈节点则未绑定当增大半径到能包裹整个接触面时如本模型外径10mm,则将Pinball半径定义为5mm则能将整个接触面节点全部包覆住并将目标点与接触面上所有网格节点进行了绑定但继续增大半径则没有意义了比如将半径定义为5000mm时与定义5mm的效果是相同的如下图所示包裹的含义是并不一定要将单元内的网格节点都完全包裹住定义的半径大小其实并不是识别网格节点的而是识别单元的只要半径能够识别到包裹范围内的单元则这个单元接触面上的网格节点都被识别了比如半径为4.8mm时并未包裹到外圈节点但其能够识别外面的单元进而将单元上的外圈节点也识别到了效果与5mm时也是相同的”。

5. 选择定义接触要慎重:如上述绑定范围不同的时候最终计算结果肯定也是不同的下图分别是只绑定接触面内圈和中间圈节点接触一)、绑定接触面所有节点时接触二的计算结果可清楚的看出接触一情况下最大应力出现在约束位置的接管内表面处而接触二情况下最大应力位置已经完全变了绑定接触的含义是类似于在这个位置直接施加了刚性位移约束因而计算出来的应力全是失真的应力而非正确的应力所以在我们重点关注的区域最好不要用绑定接触因为你会发现在整个模型中往往有绑定接触的地方应力会很大而这个应力却是错误的如果用这地方的应力来进行评定的话那就是一错再错大错特错了

上述通过一个简单模型对接触设置中的接触算法和Pinball半径进行了简单的摸索和验证,当然这仅仅是接触分析中的一小部分问题,接触设置中的一个小小的选择不当不仅会影响到计算结果甚至会直接导致无法计算。关于接触分析中需要学习的概念、知识点和每个功能选项的深层含义,都需要我们去不断学习和摸索验证,希望更多的朋友能够将您遇到的问题分享出来与大家一起学习和探讨。

遇到错误会让我们烦恼和困扰,但换个角度来想,如果我们遇不到这些错误,可能永远不会去摸索和学习到这地方的知识点和经验,所以相反的我们应该感谢曾经出现的错误和困难,让我们在未知的学习道路上又掌握了一个新的知识点。人生何尝不是如此,永远不要害怕犯错误和失败,犯了错误敢于承认和承担,并从中吸取教训和得到进步,失败是成功他老妈,老祖宗留下的经验之谈不是毫无道理的。心灵鸡汤一则,我先干为敬!

来源:ANSYS分析设计人
ANSYS
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-08-26
最近编辑:1年前
ANSYS分析设计人
硕士 学贵得师,更贵得友!共同学习!
获赞 36粉丝 149文章 152课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈