如何处理接触收敛数列的保号性性问题

改善ANSYS中接触分析收敛性的几项设置
改善ANSYS中接触分析收敛性的几项设置
1、过粗的网格尺寸可能导致收敛困难。
2、过大的接触刚度可能引起总刚度矩阵的病态
3、拉格朗日法相对于罚函数法而言,不易引起病态条件。
4、接触刚度的更新方式可能有影响
& 接触法向和切向刚度有5种更新方式,如下:
KEYOPT(10) = 0, the contact stiffness will be updated at each
load step if FKN or FKT is redefined by the user. Stiffness and
other settings (ICONT, FTOLN, SLTO, PINB, PMAX, and PMIN) are
averaged across contact elements in a contact pair. The default
contact stiffness is determined by underlying element depth and
material properties.
FKN or FKT 在每个荷载步内更新,刚度值和其他数值均为平均值。
KEYOPT(10) = 1 (covers KEYOPT(10) = 0), the normal contact
stiffness will be updated at every substep based on the mean stress
of the underlying elements from the previous substep and the
allowable penetration, FTOLN, except in the first substep of the
first load step. The default normal contact stiffness for the first
substep of the first load step is the same as described for
KEYOPT(10) = 0. If bisections occur in the beginning of the
analysis, the normal contact stiffness will be reduced by a factor
of 0.2 for each bisection. The tangential contact stiffness will be
updated at each iteration based on the current contact pressure,
MU, and allowable slip (SLTO).
&FKN 在每个子步内更新, FKT 在每次迭代内更新,刚度值和其他数值均为平均值。
KEYOPT(10) = 2 (covers KEYOPT(10) = 1), the normal contact
stiffness will be updated at each iteration based on the current
mean stress of the underlying elements and the allowable
penetration, FTOLN, except in the very first iteration. The default
normal contact stiffness for the first iteration is the same as
described for KEYOPT(10) = 0. If bisections occur in the beginning
of the analysis, the normal contact stiffness will be reduced by a
factor of 0.2 for each bisection. The tangential contact stiffness
will be updated at each iteration based on the current contact
pressure, MU, and allowable slip (SLTO).
在每次迭代内更新, FKT 在每次迭代内更新,刚度值和其他数值均为平均值。
KEYOPT(10) = 3, same as KEYOPT(10) = 0, except stiffness and
settings are not averaged across the contact elements in a contact
pair. If bisections occur in the beginning of the analysis, the
normal contact stiffness will be reduced by a factor of 0.2 for
each bisection.
同KEYOPT(10) = 0,只是刚度值和其他数值不为平均值。
KEYOPT(10) = 4, same as KEYOPT(10) = 1, except stiffness and
settings are not averaged across the contact elements in a contact
&&&&&同KEYOPT(10)
= 1,只是刚度值和其他数值不为平均值。
KEYOPT(10) = 5, same as KEYOPT(10) = 2, except stiffness and
settings are not averaged across the contact elements in a contact
同KEYOPT(10) =2,只是刚度值和其他数值不为平均值。
&&& In most
cases we recommend that you use KEYOPT(10) = 2 to allow the program
to update contact stiffnesses automatically.
一般情况下,建议使用KEYOPT(10) = 2 ,允许程序自动更新接触刚度。
5、某些时候使用不对称求解可改善收敛性
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。ANSYS接触分析&2
不同的接触分析类型有不同的过程,下面分别讨论
在涉及到两个边界的接触问题中,很自然把一个边界作为“目标”面而把另一个作为“接触”面,对刚体─柔体的接触,“目标”面总是刚性的,“接触”面总是柔性面,这两个面合起来叫作“接触对”使用Targe169和Conta171或Conta172来定义2-D接触对,使用Targe170和Conta173或Conta174来定义3-D接触对,程序通过相同的实常收号来识别“接触对”。
  执行一个典型的面─面接触分析的基本步骤列示如下:
1. 建立模型,并划分网格
2. 识别接触对
3. 定义刚性目标面
4. 定义柔性接触面
5. 设置单元关键字和实常的
6. 定义/控制刚性目标面的运动
7. 给定必须的边界条件
8. 定义求解选项和载荷步
9. 求解接触问题
10.查看结果
:建立模型,并划分网格
  在这一步中,你需要建立代表接触体几何形状的实体模型。与其它分析过程一样,设置单元类型,实常的,材料特性。用恰当的单元类型给接触体划分网格。
  命令:AMESH
     VMESH
  GUI:Main
Menu&Preprocessor&mesh&Mapped&3
Menu&Pneprocessor&mesh&mapped&4
or 6 sided
  你必须认识到,模型在变形期间哪些地方可能发生接触,一是你已经识别出潜在的接触面,你应该通过目标单元和接触单元来定义它们,目标和接触单元跟踪变形阶段的运动,构成一个接触对的目标单元和接触单元通过共享的实常号联系起来。
接触环(区域)可以任意定义,然而为了更有效的进行计算(主要指CPU时间)你可能想定义更小的局部化的接触环,但能保证它足以描述所需要的接触行为,不同的接触对必须通过不同的实常数号来定义(即使实常数号没有变化)。
由于几何模型和潜在变形的多样形,有时候一个接触面的同一区域可能和多个目标面产生接触关系。在这种情况下,应该定义多个接触对(使用多组覆盖层接触单元)。每个接触对有不同的实常数号。
刚性目标面可能是2—D的或3─D的。在2—D情况下,刚性目标面的形状可以通过一系列直线、圆弧和抛物线来描述,所有这些都可以用TAPGE169来表示。另外,可以使用它们的任意组合来描述复杂的目标面。
在3—D情况下,目标面的形状可以通过三角面,圆柱面,圆锥面和球面来推述,所有这些都可以用TAPGE170来表示,对于一个复杂的,任意形状的目标面,应该使用三角面来给它建模。
控制结点(Pilot)
刚性目标面可能会和“pilot结点“联系起来,它实际上是一个只有一个结点的单元,通过这个结点的运动可以控制整个目标面的运动,因此可以把pilot结点作为刚性目标的控制器。整个目标面的受力和转动情况可以通过pilot结点表示出来,“pilot结点”可能是目标单元中的一个结点,也可能是一个任意位置的结点,只有当需要转动或力矩载荷时,“pilot结点”的位置才是重要的,如果你定义了“pilot结点”ANSYS程序只在“pilot结点”上检查边界条件,而忽略其它结点上的任何约束。
对于圆、圆柱、圆锥、和球的基本图段,ANSYS总是使用条一个结点作为“pilot结点”
你能够使用基本几形状来模拟目标面,例如:“圆、圆柱、圆锥、球。直线、抛物线、弧线、和三角形不被允许、虽然你不能把这些基本原型彼此合在一起,或者是把它们和其它的目标形状合在一起以便形成一个同一实常数号的复杂目标面。但你可以给每个基本原型指定它自己的实常的号。
单元类型和实常数
在生成目标单元之前,首先必须定义单元类型(TARG169或TARG170)。
GUI:main menu&preprocessor&Element
Type& Add/Edit/Delete
随后必须设置目标单元的实常数。
GUI:main menn&preprocessor&real
对TARGE169和TARGE170仅需设置实常数R1和R2,而只有在使用直接生成法建立目标单元时,才需要从为指定实常数R1、R2,另外除了直接生成法,你也可以使用ANSYS网格划分工具生成目标单元,下面解释这两种方法。
使用直接生成法建立刚性目标单元
为了直接生成目标单元,使用下面的命令和菜单路径。
命令:TSHAP
menu&preprocessor&modeling-create&Elements&Elem
Attributes
随后指定单元形状,可能的形状有:
· straight line
· parabola (2-D)
· clockwise
· counterclokwise arc
· circle(2-D)
· Triangle (3-D)
· Cylinder (3-D)
· Cone (3-D)
· Sphere (3-D)
· Pilot node
(2-D和3-D)
一旦你指定目标单元形状,所有以后生成的单元都将保持这个形状,除非你指定另外一种形状。
然后你就可以使用标准的ANSYS直接生成技术生成结点和单元。
menu&pnoprocessor& modeling-
create& nodes
main menu&pnoprocessor& modeling-
create&Elements
在建立单元之后,你可以通过列示单元来验证单元形状
命令:ELIST
GUI:utility
menu&list&Elements&Nodes+Attributes
使用ANSYS网格划分工具生成刚性目标单元
你也可以使用标准的ANSYS网格划分功能让程序自动地生成目标单元,ANSYS程序将会以实体模型为基础生成合适的目标单元形状而忽略TSHAP命令的选项。
为了生成一个“PILOT结点”使用下面的命令或GUI路径:
命令:Kmesh
menu&proprocessor&meshing-mesh&keypoints
KMESH总是生成“PILOT结点”
为了生成一个2─D目标单元,使用下面的命令和GUI路径:
ANSYS在每条直线上生成一条单一的线,在样条曲线上生成抛物线部分,在每条圆弧和倒角上生成圆弧部分,如果所有的圆弧形成一个封闭的圆,ANSYS生成一个单一的圆段。
命令:LMESH
menu&pneprocessor&mesling-mesh&lines
为了生成3─D的目标单元,使用下面的命令或GUI路径。
如果实体模型的表面部分形成了一个完整的球,圆柱或圆锥,那么ANSYS程序自动生成一个基本的3─D目标单元,因为生成较少的单元,从而使你分析计算更有效率,对任意形状的表面,应该使用Amesh命令来生成目标单元,在这种情况下,网格形状的质量不是重要的,而目标单元的形状是否能完成好的模拟刚性面的表面几何形状显得更重要。
命令:AMESH
menu&preprocessor&-meshing-mesh&Area
ANSYS在所有可能的面上推荐使用三角形的映射网格划分,如果在表面的边界上没有曲率,则在网格划分时,指定那条边界分为一分,下面的命令或GUI路径将尽可能的生成一个映射网格(如果不能进行映射,它将生成自由网格)
命令:MSHKFY,2
menu&preprocessor&-meshling-mesh&-Ares-Target
建模和网格划分的注意点:
一个目标面可能由两个或多个面断的区域组成,你应该尽可能地通过定义多个目标面来使接触区域局部比(每个目标面有一个不同的实常数号)刚性目标面上由的离散能足够指述出目标面的形状,过粗的网格离散可能导致收敛问题。如果刚性面有一个实的凸角,求解大的滑动问题时很难获得收敛结果,为了避免这些建模问题,在实体模型上,使用线或面的倒角来使尖角光滑比,或者在曲率突然变化的区域使用更细的网格。
注意:不能使用镜面对称技术(ARSYSM,LSYMM)来映射圆、圆柱、圆锥或球面到对称平面的另一边,因为每个实常数的设置不能同时赋给多个基本原型段。
检验目标面的接触方向。
目标面的结点号顺序是重要的,因为它定义了接触主向,对2─D接触问题,当沿着目标线从第一个结点移向第二个结点时,变形体的接触单元必须位于
目标面的右边。
对3─D接触问题,目标三角形单元号应该使刚性面的外法线方向指向接触面,外法线通过右手原则来定义
为了检查法线方向,显示单元坐标系
命令:/PSYMS,ESYS,1
GUI:Utility
menu&plotctrls&symbols
如果单元法向不指向接触面,选择单元反转表面的法向的方向。
命令:ESURF,,REVE
menu&preprocossor&create&Element&on
:定义柔性体的接触面
为了定义柔性体的接触面,必须使用接触单元CONFA171或CONFA172(对2─D)或CONTA173或CONTA174(对3─D)来定义表面
程序通过组成变形体表面的接触单元来定义接触表面,接触单元与下面覆盖的变形体单元有同样的几何特性,接触单元与下面覆盖的变形体单元必须处于同一阶次(低阶或高阶)下面的变形体单元可能是实体单元、壳单元、梁单元或超单元,接触面可能壳或梁单元任何一边。
与目标面单元一样,你必须定义接触面的单元类型,然后选择正确的实常数号(实常数号必须与它对应目标的实常数号相同)最后生成接触单元。
单元类型:
下面简单描述四种类型的接触单元
CONTA171:这是一种2─D,2个结点的低附线单元,可能位于2─D实体,壳或梁单元的表面
CONTA172:这是一个2─D的,3结点的高阶抛物线形单元,可能位于有中结点的2─D实体或梁单元的表面
CONTA173:这是一个3─D的,4结点的低阶四边形单元可能位于3─D实体或壳单元的表面,它可能褪化成一个结点的三角形单元。
CONTA174:这是一个3─D,8结点的高阶四边形单元,可能位于有中结点的3─D实体或壳单元的表面,它可能褪化成6结点的三角形单元。
不能在高阶柔性体单元的表面上分成低阶接触单元,反之也不行,不能在高阶接触单元上消去中结点。
menu&preprocessor&Element
type&Add/Edit/Delete
实常数和材料特性
在定义了单元类型之后,需要选择正确的实常数的设置,每个接触对的接触面和目标面必须有相同的实常数号,而每个接触对必须有它自己不同的实常数号。
ANSYS使用下面柔性体单元的材料特性来计算一个合适的接触(或罚)刚度,如果下面的单元是一个超单元。接触单元的材料的设置必须与超单元形成时的原始结构单元相同,生成接触单元。
我们既可以通过直接生成法生成接触单元,也可以在柔性体单元的外表面上自动生成接触单元,我们推荐采用自动生成法,这种方法更为简单和可靠。
可以通过下面三个步骤来自动生成接触单元
1、选择结点
选择已划分网格的柔性体表面的结点,如果你确定某一部分结点永远不会接触到目标面,你可以忽略它以便减少计算时间,然而,你必须保证设有漏掉可能会接触到目标面的结点。
命令:NSEL
menu&preprocessor&create&Element&on&free
2、 生成接触单元
命令:ESURF
menu&preprocessor&create&Element&on
如果接触单元是附在已用实体单元划分网格的面或体上,程序会自动决定接触计算所需的外 法向,如果下面的单元是梁或壳单元,则必须指明哪个表面(上表面或下表面)是接触面
命令:ESURF,TOP OR BOTIOM
menu&preprocessor&create&Element&on
使用上表面生成接触单元,则它们的外法向与梁或壳单元的法向相同,使用下表面生成接触单元,则它们的外法向与梁或壳单元的法向相反,如果下面的单元是实体单元,则TOP或BOTTOM选项不起作用
3、检查接触单元外法线的方向,当程序进行是否接触的检查时,接触面的外法线方向是重要的,对3─D单元,按结点程序号以右手定则来决定单元的外法向,接触面的外法向应该指向目标面,否则,在开始分析计算时,程序可能会认为有面的过度渗透而很难找到初始解。在此情况下,程序一般会立即停止执行,你可以检查单元外法线方向是否正确。
命令:/PSYMB
GUI:Utility
menu&plotctrls&symbols
当发现单元的外法线方向不正确时,必须通过倒不正确单元的结点号来改变它们。
命令:ESURF,REVE
menu&preprocossor&Create&Elements
on free surf
:设置实常数和单元关键字
程序使用九个实常数和好几个单元关键字来控制面─面接触单元的接触行为。
9个实常数中,两个(R1和R2)用采定义目标面单元的几何形状,乘下的7个用来控制接触行为。
R1和R2定义目标单元几何形状
FKN 定义法向接触刚度因子
FTOLN 定义最大的渗透范围
ICONT 定义初始靠近因子
PINB 定义“Pinball"区域
PMIN和PMAX 定义初始渗透的容许范围
TAUMAR 指定最大的接触摩擦
GUI:main menu&
preprocessor&real constant
对实常数FKN,FTOLN,ICONT,PINB,PMAX,和PMIN,你既可以定义一个正值也可以定义一个负值,程序将正值作为比例因子,将负值作为真实值,程序将下面覆盖原单元的厚度作为ICON,FTOLN,PINB,PMAX和PMIN的参考值,例如对ICON,0.1表明初始间隙因子是0.1*下面覆盖层单元的厚度。然而,-0.1表明真实缝隙是0.1,如果下面覆盖层单元是超单元,则将接触单元的最小长度作为厚度。
单元关键字
每种接触单元都有好几个关键字,对大多的接触问题缺省的关键字是合适的,而在某些情况下,可能需要改变缺省值,来控制接触行为。
接触算法(罚函数+拉格郎日或罚函数)(KEYOPT(2))
出现超单元时的应力状态(DEYOPT(3))
接触方位点的位置 (KEYOPI(4))
刚度矩阵的选择 (KEYOPT(6))
时间步长控制 (KEYOPT(7))
初始渗透影响 (KEYOPT(9))
接触表面情况 (KEYOPT(12))
命令:KEYOPT
menu&preprocessor&Elemant
Type&Add/Edit/Delete
选择接触算法:
对面─面的接触单元,程序可以使用扩增的拉格朗日算法或罚函数方法,通过使用单元关键字KETOPT(2)来指定。
扩张的拉格朗日算法是为了找到精确的拉格朗日乘子而对罚函数修正项进行反复迭代,与罚函数的方法相比,拉格朗日方法不易引起病态条件,对接触刚度的灵敏度较小,然而,在有些分析中,扩增的拉格朗日方法可能需要更多的迭代,特别是在变形后网格变得太扭曲时。
使用拉格朗日算法的同时应使用实常数FTOLN
FTOLN为搠格朗日算法指定容许的最大渗透,如果程序发现渗透大于此值时,即使不平衡力和位移增量已经满足了收敛准则,总的求解仍被当作不收敛处理,FTLON的缺省值为0.1,你可以改变这个值,但要注意如果此值太小可能会造成太多的迭代次数或者不收敛。
决定接触刚度
所有的接触问题都需要定义接触刚度,两个表面之间渗透量的大小取决了接触刚度,过大的接触刚度可能会引起总刚矩阵的病态,而造成收敛困难,一般来谘,应该选取足够大的接触刚度以保证接触渗透小到可以接受,但同时又应该让接触刚度足够小以使不会引起总刚矩阵的病态问题而保证收敛性。
程序会根据变形体单元的材料特性来估计一个缺省的接触刚度值,你能够用实常数FKN来为接触刚度指定一个比例因子或指定一个真正的值,比例因子一般在0.01和10之间,当避免过多的迭代次数时,应该尽量使渗透到达极小值。
为了取得一个较好的接触刚度值,又可需要一些经验,你可以按下面的步骤过行。
1、 开始时取一个较低的值,低估些值要比高估些值好因为由一个较低的接触刚度导致的渗透问题要比过高的接触刚度导致的收敛性困难要容易解决。
2、 对前几个子步进行计算
3、 检查渗透量和每一子步中的平衡迭代次数,如果总体收敛困难是由过大的渗透引起的(而不是由不平衡力和位移增量引起的),那么可能低估了FKN的值或者是将FTOLN的值取得大小,如果总体的收敛困难是由于不平衡力和位移增量达到收敛值需要过多的迭代次数,而不是由于过大的渗透量,那么FKN的值可能被高估。
4、 按需要调查FKN或FTOLN的值,重新分析。
选择摩擦类型。
在基本的库仑摩擦模型中,两个接触面在开始相互滑动之前,在它们的界面上会有达到某一大小的剪应力产生,这种状态则作粘合状态(stick)库仑摩擦模型定义了一个等效剪应力。)一旦剪应力超过此值后,两个表面之间将开始相互滑动,这种状态,叫作滑动状态(Sliding)粘合\滑动计算决定什么时候一个点从粘合状态到滑动状态或从滑动状态变到粘合状态,摩擦系数可以是任一非负值。程序缺省值为表面之间无摩擦,对rough或bonded接触(KEYOPT(2)=1(或3),程序将不管给定的MV值而认为摩擦阻力无限大。
程序提供了一个不管接触压力的故而人为指定最大等效剪应力的选项,如果等效剪应力达到此值时,滑动发生。看图,4─1,为了指定接触界面上最大许可剪应力,设置常数
TAUMAX(缺省为1.0E20),这种限制剪应力的情况一般用于接触压力非常大的时候,以至于用库仑理论计算出的界面剪应力超过了材料的屈服极限。一对TAUMAX的一个合理高估为<img WIDTH="29" HEIGHT="51" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />(<img WIDTH="29" HEIGHT="51" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />是材料的mises屈服应力)。
<img WIDTH="325" HEIGHT="219" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—1 摩擦模式
对无摩擦rough和bonded接触,接触单元刚度矩阵是对称的,而涉及到摩擦的接触问题产生一个不对称的刚度,而在每次迭代使用不对称的求解器比对称的求解器需要更多的计算时间,因此ANSYS程序采用对称化算法。通过采用这种算法大多的摩擦接触问题能够使用对称系统的求解器来求解。如果摩擦应力在整个位移范围内有相当大的影响,并且摩擦应力的大小高度依赖于求解过程。对刚度阵的任何对称近似都可能导致收敛性的降低,在这种情况下,选择不对称求解选项(KEYOPT(6)=1)来改善收敛性。
选择检查接触与否的位置
接触检查点位于接触单元的积分点上,在积分点上,接触单元不渗透进入目标面,然而,目标面能渗透进入接触面,看图4—2。
<img WIDTH="553" HEIGHT="247" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—2 接触检查点位于高斯积分点上
ANSYS面─面接触单元使用GAUSS积分点作为缺省值,GAUSS积分点通常会比Newton-Cotes/robatto结点积分项产生更精确的结果,Newton-cotes/lobatto使用结点本身作为积分点,通过KEYOPT(4)来选择你想使用的方法,然而,使用结点本身作为积分点仅应该用于角接触问题(看图4─3)。
<img WIDTH="437" HEIGHT="290" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—3 接触检查点位于高斯结点上
然而,使用结点作为接触发现点,可能会导致其它的收敛性问题,例如“滑脱”(结点滑下目标面的边界)看图4─4,对大多的点─面的接触问题,我们推荐使用其它的点─面的接触单元,例如CONTA26、CONTA48和CONTA49。
<img WIDTH="453" HEIGHT="223" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—4 结点滑脱
调整初始接触条件
在动态分析中,刚体运动一般不会引起问题,然而在静力分析中,当物体没有足够的约束时会产生刚体运动,有可能引起错误而终止计算。
在仅仅通过接触的出现来约束刚体运动时,必须保证在初始几何体中,接触对是接触的,换句话说,你要建立模型以便接触对是“刚好接触”的,然而这样作可能会遇到以下问题:
·刚体外形常常是复杂的,很难决定第一个接触点发生在哪儿
·既使实体模型是在初始接触状态,在网格划分后余于数值舍入误差;两个面的单元网格之间也可能会产生小的缝隙。
·接触单元的积分点和目标单元之间可能有小的缝隙。
同理,在目标面和接触面之间可能发生过大的初始渗透,在这种情况下,接触单元可能会高估接触力,导致不收敛或接触面之间脱离开接触关系。定义初始接触也许是建立接触分析模型时最重要的方面,因此,程序提供了几种方法来调整接触对的初始接触条件。
注意:下面的技巧可以在开始分析时独立执行或几个联合起来执行,它们是为了消除由于生成网格造成的数值舍入误差而引起的小缝隙或渗透,而不是为了改正网格或几何数据的错误。
1、 使用实常数ICONT来指定一个好的初始接触环,初始接触环是指沿着目标面的“调整环”的深度,如果没有人为指定ICONT的值,程序会根据几何尺寸来给ICONT提供一个小值,同时输出一个表时什么值被指定的警告信息,对ICONT一个正值表示相对于下面变形体单元厚度的比例因子,一个负值表示接触环的真正值,任何落在“调整环”域内的接触检查点被自动移到目标面上,(看图4—5(a))建议使用一个小的ICONT值否则,可能会发生大的不连续(看图4─5(b))
<img WIDTH="553" HEIGHT="162" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
<img WIDTH="553" HEIGHT="184" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—5 用ICON进行接触面的调整
(a) 调整前
(b) 调整后
2、使用实常数PMIN和PMAX来指定初始容许的渗透范围,当指定PMAX或PMIN后,在开始分析时,程序会将目标面移到初始接触状态,如果初始渗透大于PMAX,程序会调整目标面的减少渗透,接触状态的初始调节仅仅通过平移来实现。
对给定载荷或给定位移的刚性目标面将会执行初始接触状态的初始调节。同样,对没有指定边界条件的目标面也可以进行初始接触的调整。
当目标面上的节点,有给的零位移值时,使用PMAX和PMIN的初始调节将不会被执行。
注意:ANSYS程序独立地处理目标面上节点的自由度,例如:如果你指定自中度UX值为“0”,那么,沿着X方向就没有初始调查,然而,在Y和Z方向仍然会激活PMAX和PMIN选项。
初始状态调整是一个迭代过程,程序最多进行20次迭代,如果目标面不能进入可接受的渗透范围,程序会给出一个警告信息,你可能需要调整你的初始几何模型。
图4─6给出了一个初始接触调整迭代失败的例子。目标面的UY被约束住。因此,初始接触唯一容许的调整是在X方向,然而,在这个问题中,刚性目标面在X方向的任何运动都不会引起初始接触。
<img WIDTH="515" HEIGHT="290" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—6 一个初始调整失败的例子
3、 设置KEYOPI(9)=1来消除初始渗透,看图4─7。
<img WIDTH="554" HEIGHT="160" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—7 消除初始始渗透
在某些情况下,例如过盈装配问题,期望有过度的渗透,为了缓解收敛性困难,在第一个载荷步中设置KEYOTI(9)=2来使过度渗透渐进到0,看图4─8。当使用这种方法时,在第一个载荷步中不要给定其它任何载荷,也就是说要保证载荷是渐进的(KBC,0)
<img WIDTH="553" HEIGHT="490" V:SHAPES="_x"
ALT="ANSYS接触分析&2"
TITLE="ANSYS接触分析&2" />
图4—8 渐进初始渗透
在开始分析时,程序会给出每个目标面的初始接触状态的输出信息,(在输出窗口或输出文件中),这个信息有助于决定每个目标面的最大渗透成最小间隙。
对于给定的目标面如果没有发现接触,可能是目标面离接触面太远(超出了Piaball区域或者是接触/目标单元已经被杀死。
决定接触状态和Pinball区域。
接触单元相对于目标面的运动和位置决定了接触单元的状态;程序检测每个接触单元并给出一种状态
· STAT=0 未合的远区接触
· STAT=1 未合的近区接触
· STAT=2 滑动接触
· STAT=3 粘合接触
当目标面进入pinball区域后,接触单元就被当作未合上的近区域接触,pinball区域是以接触单元的积分点为中心的。使用实常数PINB来为pinball指定一个比例因子(正值)或其实值(负值),缺省时,程序将pinball区域定义为一个以4*变形体单元厚度为半径的圆(对2-D问题)或球(对3-D问题)。
检查接触的计算时间依赖于pinball区域的大小,远区接触单元的计算是简单的且计算时间较少,近区接触计算将要接触的接触单元是较慢的,并是较复杂,当单元已经接触时,计算最为复杂。
如果刚性面有好几个凸形区域,为了克服伪接触定义,设置一个合适的pinball区域是有用的,名而对大多数问题,缺省值是合适的
选择表面作用模式
通过设置kcyopt(12)来选择下面的某种作用模式
·法问单边接触 (KEYOPT(12)=0)
·.粗糙接触,用来模拟无滑动的,表面相当粗糙的摩擦接触问题,这种设置对应于摩擦系数无限大(MU),因此用户定义的摩擦系的(MU)被忽略KEYOPT(12)=1)
·.不分开的接触,用来模拟那种一是接触就再不分开的问题,这种不分开是指对法方接触而言,允许有相对滑动。(KEYOPT(12)=2)
·.绑定接触 用来模拟那种接触一是发生表面在所省方向都被绑定的问题。一旦接触就再也不能脱开也不允许有相对滑动(KEYOPT(12)=3)
用超单元建立接触模型
面一面的接触单元能模拟刚体和另一个有 的运动的线 单性体的接触,而线 单性体又以体用超单元来建模,这大大降低了进行接触 代的自由度数,记住任荷接触结定都必须是超单元的主自由度。
既然超单元仅仅由一组保留的结点自由度组成,它没有用来定义接触的表面几何形状,因此,必须在形成超单元之前在单元表面上
成接触单元,来自超单元的信息包括结点连结和组合刚度,但是没有材料特性和应力状态,(是否轴支称,平面应力或平面应变),一个限制是接触单元的材料特性设置必须与形成超单元之前的原始单元的材料特性相同。
使用KEYOPT(3)来提供接触分析的信息,对2─D单元(CONTA171 CONTA172)关键字选项如下所示:
·.不使用超单元(KETOPT(3)=0)
·.轴对称(KEYOPT(3)=1)
·.平面应变或单位厚度的平面应力(KEYOPT(3)─2)
·.需要厚度输X的平面应力(KEYOPT(3)=3),对这种情况使用实常数的R2来指定指定厚度
对3─D单元(CONTA173,CONTA174)关键字选项如下示:
·使用H单元(KETOPI(3)=0)
·使用超单元(KEYOPI(3)=1)
考虑厚度影响
程序够用KEYOPI(11)来考虑壳(2-D和3-D)和梁(2-D)的厚度缺省时,程序不考虑单元厚度,用或中面来表示它。当设置KFTOPI(11)=1时则考虑梁或壳的厚度,从底面或顶面来计算接触距离,建模时要考虑到厚度,记住刚性目标面会向任一边移动,半个梁或壳单元的厚度,当使用壳单元181号时,在变形期间厚度的变化也将被考虑。
使用时间步长控制
时间步长控制是一个自动时间步长特征,这个特征预测什么时间接触单元的状态,将发生变化或者需要二分当前的时间步长,使用KEYOPT(7)来选择下列四种行为之一来控制时间步长。KEYOPT(7)=0时不提供控制,KEYOPT(7)=3提供最多的控制。
· KEYOPI(7)=0,设有控制,时间步
的大小不受预测影响,当自动时间步长被激活且允许一个很小的时间步长时,这个设置是合适的。
· KETOPI(7)=1如果一次迭代期间有太大的渗透发生或者接触状态突然变化,则进行时间步长二分。
· KEYOPI(7)=2对下一个子步预测一个合理的时间增量
· KETOPI(7)=3对下一个子步,预测一个最小的时间增量
使用死活单元选项
面─面的接触单元允许激活或杀死单元,能够在分析的某一阶段中杀死这个单元而在以后的阶段再重新激活它,这个特征对于模拟复杂的金属戍形过程是有用的、在此过程的不同分析阶段有多个目标需要和接触面相互作用,回弹模拟常常需要在成形过程的后期移走刚性工具。
控制刚性目标的运动。
按照物体的原始外形来建立的且整个表刚性目标面的运动是通过“pilot”结点上的给定来定义的,(如果没有定义“pilot”结点,则通过刚性目标面上的不同结点。)
为了控制整个目标面的运动,在下面的任何情况下都必须使用"pilot"结点。
·目标面上作用着给定的外力
·目标面发生旋转
·目标面和其它单元相连(例结构质量单元)
"pilot"结点的厚度代表着整个刚性面的运动,你可以在"pilot"结点上给定边界条件(位移、初速度)集中载荷、转动等等,为了考虑刚体的质量,在"pilot"结点上定义一个质量单元。
当使用"pilot"结点时,记住下面的几点局限性
·每个目标面只能有一个“Pilot"的结点
·.圆、圆锥、圆柱、球的第一个结点(结点I)是”pilot“结点,你不能另外定义或改变"pilot"结点
·.程序忽略不是"Pilot"结点的所有其它结点上的边界条件。
·.只有“pilot”结点能与其它单元相连
·.当定义了“pilot”结点后,不能使用约束方程(CF)或结点来耦合(CP)来控制目标面的自由度,如果你在刚性面上给定任意载荷或者约束,你必须定义“pilot”结点,是在"pilot"结点上加载,如果没有使用“pilot”结点,则只能有刚体运动。
在每个载荷步的开始,程序检查每个目标面的边界条件,如果下面的条件都满足,那么程序将目标面作为固定处理:
·在目标面结点上没有明确定义边界条件或给定力
·.目标面结点没有和其它单元相连
·.没有目标面结上使用约束方程或结点来耦合
在每个载体步的末尾,程序将会放松被内部设置的约束条件
:给变形体单元加必要的边界条件
现在可以按需要加上任你边界条件。加载过程与其它的分析类型相同
:定义求解和载 步选项
接触问题的收敛性随问题不同而不同,下面列式了一些典型的在大多数面—面的接触分析中推荐使用的选项
·时间步长必须足够大以描述适当的接触
。如果时间步太大,则接触力的光滑传递会被破坏,设置精确时间步长的可信赖的方法是打开自动时间步长。
命令:Autots,on
Menu&Solution&-load step
opts-Time/Frequence&Time&Time
/Time& substeps
·.如果在迭代期间接触状态变化,可能发生不连续,为了避免收敛太慢,使用修改的刚度阵,将牛顿一拉普森选项设置成FULL
命令:NROPT,FULL,,OFF
Menu&Solution&Analysis options
不要使用自下降因子,对面一面的问题,自适应下降因子通常不会提供任何帮助,因此我们建议关掉它。
·设置合理的平衡迭代次数,一个合理的平衡迭代次数通常在25和50之间
命令:NEQIT
Menu&Solution&-load step
opts-Nonlinear&Equilibriwm iter
·因为大的时间增量会使 代趋向于变得不稳定,使用线性搜索选项来使计算稳定化。
命令:LNSRCH
menu&solution&-load step
opts-Nonlinear&lins search
·除非在大转动和动态分析中,打开时间步长预测器选项
命令:PRED
mean&solarion&-load step
opis-nonlinear&predictor
·在接触分析中许多不收敛问题是由于使用了太大的接触刚度引起的,(实常数FKN)检验是否使用了合适的接触刚度。
步骤九:求解
现在可以对接触问题进行求解,求解过程与一般的非线问题求解过程相同
接触分析的结果主要包括位移、应力、应变,支 ,和接触信息(接触压力、滑动等)你可以在一般的后处理器(post1)或时间历程后处理器(post26)中查看结果。
1. 为了在post1中查看结果,数据库文件所包含的模型必须与用于求解的模型相同。
2. 必须存在结果文件
在post1中查看结果
1. 从输出文件中查看分析是否收敛。
如果不收敛,你可能不想后处理,而更在乎为什么不收敛。
如果已经收敛,继续后处理。
2. 进入post1如果你的模型不在当前的数据库中,使用恢复命令(resume)来恢复它。
命令:/post1
GUI:main menu&General postproc
3. 读入所期望的载荷步和子步的结果,这可以通过载荷步和子步数也可以通过时间来实现。
GUI:main menu&generad postproc
4. 使用下面的任何一个选项来显示结果
选项:显示变形形状态
命令:PLDISP
GUI:main menu&general
postproc&plot resnlt deformed shape
选项:等值显示
命令:PLNSOL
GUI:main menu&general
postproc&plot result&contour
plot-noded solu 或
element和solu
使用这个选项来显示应力,应变或其它项的等值图,如果相邻的单元有不同的材料行为(例如塑性或多弹性材料特性,不同的材料类型,或不同的死活属性)则在结果显示时应避免结点应力平均错误。
也可以将定的接触信息用等值图显示出来,对2─D接触分析,模型用灰色表示,所要求显示的项将沿着接触单元存在的模型的边界以梯型面积表示出来,对3─D接触分析,模型将用灰色表示,而要求的项在接触单元存在的2─D表面上等值显示。
还可以等值显示单元表的数据和线性化单元数据。
命令:PLETAB
GUI:main menu&general
postproc&Element Table&Plot Element
main menu& General Postproc&Plot
Results&-Contour plot-line Elem Res
选项:列表显示
命令:PRNSOL
GUI:Main menu&General
Postproc&List Results&Noded
Main menu&General Postproc&Lost
Results&Element Solution
Main menu&General Postproc&List
Results&Reaction Solution
在列表显示它们之前,可以用NSORT和ESORT来对它们进行排序
选项:动画
可以动画显示接触结果随时间的变化
命令:ANIME
GUI:Wility menn&Plotctrls
&Animate&Contours lner fime
post26中查看结果
你也可以使用post26来查看一个非线性结构对加载历程的响应使用post26,可以比较一个变量陡另一个变量的变化关系,例如,可以画出某个结点位移随给定载的曲线关系,某个结点的塑性应变与时间的关系,一个典型的post26后处理过程需要分以下几个步骤
1. 从输出文件中检查是否分析已经收敛
2. 求解已收敛,进入post26,如果模型不在当前数据库中恢复它
命令:/Post26
GUI:Main menu&Timehist Postpro
3. 定义变量
命令:NSOL
GUI:Main menu&Time Hist
Postpro&Define Variable
4. 画曲线或列表显示
命令:PLVAR
GUI:Main menu&Time Hist
Postproc&Graph Variable
Main menu&Time Hist Postproc&List
Main menu&Time Hist Postproc&List
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 一致收敛性 的文章

 

随机推荐