ANSYS利用cerig建立刚性截面报错问题解决

如何正确地给实体模型施加上轴力、剪力和弯矩呢?ANSYS并不支持直接往实体的某个截面上施加集中力,当然轴力可以用SFA命令施加一个均布荷载来“等效”,但要施加弯矩就需要上一些手段了。

目前,能实现上述目标的方法,主要有四种:

  • 方法1:建立独立节点(mass21质量单元),利用cerig命令将整个截面与该节点建立成“刚性区”,然后将弯矩、剪力、轴力均以F命令施加到这个节点上;
  • 方法2:建立独立的节点,将截面上每个节点与新建节点建立成MPC184单元,即形成许多根刚性梁,从而形成刚性截面,将弯矩、剪力、轴力均以F命令施加到新建节点上;
  • 方法3:建立独立节点(mass21质量单元),在独立节点与截面上各节点之间建立RBE3单元,实现“主从约束”;
  • 方法4:基于表面边界法,通过设置接触对来实现“主从约束”。

方法一只适用于小变形的情况(对于箱梁分析来说,小变形够用了),用起来命令最简洁。实例参考:如何在ANSYS中实体单元施加弯矩

方法二的适用性最广,可以解决大变形、非线性问题,实例参考:如何在ANSYS中实体单元施加弯矩

方法三和方法四的原理近似,方法三的原理说明请参考RBE2和RBE3单元的理论基础和ANSYS实现,方法三的实例见如何在ANSYS中实体单元施加弯矩,方法四的实例见实体单元施加弯矩的方法-基于表面边界法

好了,今天不是来总结教程的,是来解决问题的。

我在运行一段老代码(2011年完成,当时采用的方法一,即利用cerig命令建立刚性区域)的时候,意外地遇到了两处报错:

  1. 提示我mass21单元和其他单元共用了实常数,且没有指定质量;
  2. 提示类似“Constraint equation 68 has node 1 = 392 degree of freedom = UY which is also a slave in coupled set 101.”的一串错误

上述两个问题报错,导致求解无法进行。

关于错误提示1,在老版本ANSYS中,虽然设定了mass21单元,但可以与solid单元共用一个“空的实常数”,也就是说实际上并没有给mass21单元指定质量,一样可用——现在看来,这应当是ANSYS新版本修补了该命令,使其更加符合逻辑。质量单元嘛,是应该指定质量的,在实践中给个很小的数值就可以了。

关于错误提示2,分别利用celist和cplist查看约束方程与耦合对的情况,通过nplot查找原因:

左下角的365402号节点就是新建独立节点,右上方是箱梁截面的节点。把右上角的节点放大一看:

原来如此,在老版本ANSYS中,耦合是不可以一对多的(当然新版本也不可以),但是cerig建立的刚性区域可以这样操作。即上面节点392,既能与新建节点组成刚性区域,也能与预应力钢筋节点建立耦合对,这样操作程序没有报错,计算结果也正常。

现在看来,很可能是之前老版本忽略掉了这种情况,让程序继续进行了。

找到了问题所在,解决就容易了。好在建立耦合对的时候,利用了数组,于是可以把参与耦合的节点在选择集中去掉。

先选择上混凝土节点中参与耦合的节点:

nsel,s,,,cp_node(1)
*do,i,1,count1_node-1
nsel,a,,,cp_node(i+1)
*enddo
cm,conccp,node

就是图中这些“绿色”的节点,nsel,u,,,conccp ,从选择集中取消掉这些节点

变成这样的就行了,程序报错消失,问题完美解决。

一点体会,很多年前,提到ANSYS APDL的优势,其中之一便是“可以在不同版本之间无缝切换”。然而事实并非完全如此,很多时候程序会默默修补bug,重点往往由于是太细节的更新,不会和用户说明。所以,对于老代码也不能太放心啦。

长河

在曾经的博客时代,是“首个桥隧工程领域独立博主”,目前是一名默默耕耘的普通高校教师。一家之言,仅供参考,未必成熟、绝不权威。

相关推荐

ANSYS无法选中实体怎么办

问题描述 在前后处理中,利用Vsel、Lsel、Esel等命令进行图形元素选择是高频操作,但当根据坐标进行选择的时候,会出现 ...

1 条评论

  1. wzt

    非常感谢!

发表评论

您的电子邮件地址不会被公开,必填项已用*标注。