注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

htbbzzg的博客

与朋友们分享 CAE 资料和经验

 
 
 

日志

 
 

一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答  

2011-11-13 08:50:34|  分类: 问与答 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

根据上述命令流进行建模,结果如下图:

              一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答 - htbbzzg - htbbzzg的博客

 

 

试算后第一步就不收敛,出现警告和错误信息为:

                    一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答 - htbbzzg - htbbzzg的博客

  

对该命令流仔细分析,发现两个问题:

1.  材料 2 的弹性模量设置为 2.11e30,比材料 1 的弹性模量大了 19 个量级,从而造成刚度矩阵中最大和最小主元的比值过大,材料 1 的主元被作为小主元发出警告,计算也难以收敛;

2.  求解时子步数仅设置为 50 步,太少了,因而难以找到初始接触,这也是导致不收敛的一个原因。

 

根据上述分析,对该命令流进行了第一次修改:

1.    将材料 2 的弹性模量修改为与材料 1 相同;

2.         NSUBST,50,50,10 修改为:

            NSUBST,1e5,1e8,10

    然后再次进行分析,结果可以收敛,但是变形太大,达到 1 m 多,已经大于结构的最大尺寸,整个模型完全被压扁了,明显不对。

    采用自动比例时的结构变形情况,看上去是正常的,但是变形值太大:

       该模型的总高度为 0.0863 m,最大变形已达到 1.397 m,即上部实体的变形已经超过了下部实体的底面 (坐标系所在平面),显然是不正确的。

              一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答 - htbbzzg - htbbzzg的博客

 

    采用 True Scale 显示变形,则结构已经落到坐标系底面之下,且很不规则,显然有问题:

              一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答 - htbbzzg - htbbzzg的博客

 

再次分析该命令流,发现载荷可能有问题。与载荷有关的语句如下:

asel,s,AREA,,14

NSLA,s,1 

!  SFA, all,  , pres, -1*45*1000*9.8/(sqrt(2)*(3.14*(0.5*d_2)**2))

!  sf,all,pres,-1*45*1000*9.8/(sqrt(2)*(3.14*(0.5*d_2)**2))

F, all, fy, -45*1000*9.8/(sqrt(2)*(3.14*(0.5*d_2)**2))

    对这些语句进行分析,估计开始时是想在 Area 14 上施加压力载荷,其合力 (绝对值) 应该是 45*1000 (= 4.41e4 N)。不知什么缘故,后来改为施加节点载荷,但是仍以施加面载荷 (压力) 的方式作为节点力的值。由于该模型的长度单位是 m,受力表面的边长尺寸远小于 1,因而算出的节点力的数值很大,达到 27.687e6,甚至大于合力的值,显然是不合理的。

    根据这一分析,取出 Area 14 上的节点个数,为 256,然后以合力除以节点个数,得到每个节点的受力为 45*1000*9.8 = 1722.7 N。据此修改施加节点力的语句为

F, all, fy, -1722.7 

    再次计算后,最大位移只有 0.138e-3 m = 0.138 mm。由于不知道该问题确切的载荷大小,难以判断结果是否正确,但是至少看起来是合理的。以下是采用 True Scale 显示的变形:

        一个计算不收敛的接触问题命令流 - 请大家帮助分析一下问题在哪里,参考解答 - htbbzzg - htbbzzg的博客

 

    将上述情况反馈给该网友后,他没有再提出新的问题,估计参考上述的分析,他应该已经解决了问题。

 

    归纳一下:

    前一个博文中的命令流主要有两个问题有一些共同性:

    1.  材料参数问题:

    将某种材料的弹性模量设置的远大于其它材料,多半是想要用它来模拟刚体,带来的问题是刚度矩阵中与该材料有关的部分,其主元的数值会远大于其它部分的主元,有可能造成求解失败。如果需要使用这一办法,建议作为刚体部分材料的弹性模量比其它部分大 3~6 个数量级也就够了。如果设置过大,求解时出现大量小主元的问题,则应该减小设置为刚体的材料的弹性模量。

    2.  接触分析的子步数设置

    一般来说,接触分析时应该将子步数设置的尽量多一些,比如 1e5 或更大。

    这样做的主要原因是:接触分析的一个关键问题是尽快找到初始接触,找到初始接触后,多数情况分析都能收敛,否则的话,由于找不到初始接触,就难以收敛。

    如果子步数设置太小,意味着每一步施加的载荷较大,本应接触的两个物体很容易由于相互穿透而找不到初始接触状态,导致计算不收敛;将子步数设置的尽量大一些,即每一步只施加少量载荷,则比较容易找到初始接触,有利于计算的收敛。

    另外,有的网友担心子步数设置太大,计算时间会很长,其实这种担心是没有必要的。只要在求解设置时打开自动时间步,在找到初始接触后,软件会自动 (逐步的) 增加时间步长,也就是减小时间步数,因而计算时间不会增加很多。

    当然,时间子步数的设置只是计算收敛的一个因素。在 ANSYS 中还提供了其他许多接触参数可以设置,请大家参考有关的资料。

  评论这张
 
阅读(1902)| 评论(1)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016