首页/文章/ 详情

浅析Newton - Raphson算法,理解ANSYS中非线性求解相关术语及设置!

7月前浏览1181

学习有限元过程中,肯定有小伙伴觉得软件中的算法很神秘,但软件中的相关参数确是与算法息息相关,从算法原理上理解软件设置和选项有助于更好地使用计算工具。


本文内容为笔者学习过程中的总结,相关内容引用了ansys官方讲解,并相关文字经过笔者整理,如有不当还请指正~



--01--

Newton-Raphson算法原理浅析


一、算法原理

在非线性分析中,由于物理行为的复杂性,描述其物理行为的非线性方程的数学结构更为复杂,可能存在多解性、无解或解对初始条件的极端敏感性(如混沌现象),导致我们无法直接应用线性方程组的求解方法直接求得响应。


非线性方程求解的一种方法是将载荷分解成一系列增量(子步)求解,每一增量确定一平衡条件。在每增量步求解结束后,调节刚度矩阵以适应非线性响应。

对于非线性问题,其静力平衡方程为:

其中:

  [K]     -为刚度矩阵,其为位移{u}的函数;

{u}  -为未知的位移;

{Fᵃ}-为施加的载荷矢量。


ANSYS软件采用Newton-Raphson来求解上述方程,其迭代过程可写作如下方程:

其中:  

   [Kᵢᵀ]   -为雅克比矩阵,即切线刚度矩阵;

       i     -表示当前的平衡迭代;

{Fᵢⁿʳ}-为存储于单元内部载荷相关的矢量。


上述非线性方程中,只要有任何非线性(几何非线性、材料非线性、接触非线性)存在,刚度矩阵将不再是常量,而是与节点位移相关的矩阵,计算时就需要迭代更新。


为了获得收敛的解答,需要多次使用Newton-Raphson方法进行迭代求解。其一般过程可描述如下:

① 假设一个{u₀}值,{u₀}通常来自于前一步迭代的收敛位移解答,对于第一次迭代{u₀}=0;

② 计算更新切线刚度矩阵[Kᵢᵀ],并存储通过{uᵢ}计算得到的{Fᵢⁿʳ};

③ 使用迭代过程方程(1)计算得到{Δuᵢ};

④ 使用迭代过程方程(2)计算得到下次一迭代估算值{uᵢ₊₁};

⑤ 重复②~④,直到获得收敛解答。


上述过程可通过图形形式展示如下:

ANSYS 使用Newton-Raphson平衡迭代法进行增量求解。在每个载荷增量步结束时,平衡迭代驱使解回到平衡状态。


一个载荷增量步中,采用完全Newton-Raphson 迭代求解,即如迭代方程(2)和(3)可知,在每次迭代过程中刚度矩阵都会被更新。(一个载荷步中的四个迭代步切线斜率(切线刚度)不一样,如图所示):

 


除此之外,在ANSYS中还可以采用修整的Newton-Raphson迭代求解方法,来减少刚度矩阵的更新次数,加快求解,如下图所示。


对于静态或瞬态分析,修正的Newton-Raphson迭代法仅仅在每一个子步的第一次或第二次迭代更新刚度矩阵,如下图所示(一个载荷步中,迭代步的切线斜率相同)。


二、收敛准则

Newton-Raphson迭代法需要一个收敛的度量以决定何时结束迭代。给定外部载荷Fa,内部载荷Fnr(由单元应力产生并作用于节点),在一个体中,外部载荷必须与内力相平衡,即收敛是内外力的平衡,其度量准则如下:

实际中 Newton-Raphson 迭代过程如下所示,基于u₀时的结构构形计算出切向刚度Kᵀ,基于△F计算出的位移增量是Δu,结构构形更新为u₁.
   
 
此时,在更新的构形中计算出单元内力,迭代中的不平衡量为:

从上述过程可以看出,Newton-Raphson 迭代只能无限逼近真实解,作为数值计算不平衡量实际从未真正为零。


在数学上,当不平衡量R的范数∥{Fᵃ}-{Fⁿʳ}∥小于指定容差乘以参考力会位移值时,就认为迭代收敛了。


在ANSYS中有如下收敛准则:

① 力收敛准则

 
其中:  
{R}={Fᵃ}-{Fⁿʳ}为残差矢量;  
  εʀ为力收敛容差;  
  Rᵣₑf为参考力值。  

 
② 位移收敛准则  
 
其中:  
{Δuᵢ}为位移增量矢量;  
  εᵤ为位移收敛容差;  
   uᵣₑf为位移参考值。  

 
这里需要解释的是,∥●∥矢量的范数是衡量矢量幅度的一个标量。因此,当不平衡力或位移小于指定容差限值乘以参考值时,计算认为是收敛的。  

 
ANSYS中默认使用力收敛准则,在计算和收敛的判断上,ANSYS还提供了三种范数的计算方法,如下所示:  
   
   
对于位移收敛准则所用范数,上式中将R替换为Δu即可。    

   
无穷范数就是取矢量的最大值(最大残差或最大位移增量),L1范数是对所有矢量项绝对值求和,L2范数就是对所有矢量项的二次方求和的平方根。ANSYS中默认使用L2范数。    

   
默认的不平衡力的参考值Rᵣₑf=∥{Fᵃ}∥,对于施加位移约束的自由度处,不平衡力参考值就是这些位移自由度处的{Fⁿʳ}。    

   
ANSYS中,缺省的收敛判据是:    
① 力或力矩;    
② 位移或旋转增量。    

   
① 对于力或力矩收敛准则(force convergence、moment convergence)的缺省的容差εʀ为0.5%,ANSYS workbench中,在Analysis Settings下可以在非线性控制选项中进行设置,如下图所示:    
   
   

   
② 对于位移或旋转增量收敛准则(displacement convergence、rotation convergence)的容差也为εᵤ为0.5%,如下图所示:    

   

   
关于收敛判定这里需要注意,力收敛判据提供了一个收敛的绝对度量,因为它可以直接度量内部力与外部力的平衡。
   

   
而基于检查的位移判据只能作为力收敛判断的辅助手段(微小位移也可能导致巨大的力不平衡力,如下图),只依据位移判断收敛,在有的时候将会导致错误的结果。    
     
   

   
在ANSYS workbench中,非线性计算的迭代过程可以方便地进行查看,如下图所示:    
     

   

   

   

--02--

ANSYS非线性求解设置中有关术语释义


   
一、荷载步、子步(时间步)、平衡迭代步的概念    
在有限元分析软件中,非线性求解一般按照如下三个层次进行组织:    
 载荷步: 为顶层求解选项,计算中的载荷或边界条件均施加于某个载荷步内;    
② 子步: 即载荷步中被划分为多段形成的载荷增量,子步用于逐步施加荷载;    
③ 平衡迭代步:即ANSYS为了得到给定子步(载荷增量)的收敛解答而采用的计算步。    
     
如上图:    
① 载荷步1中有2个子步,载荷步2中有3个子步;    
② 在每一增量载荷步(子步)中完成平衡迭代步的计算;    
③ 每个载荷步和子步都与时间相关联,因此子步也称为时间步。    

   
从上可以看到,载荷步反应加载的先后顺序,子步的引入就是为了提高计算的收敛性,因此当计算不收敛时,首先应想到提高子步数量。    

   
此外需要注意,荷载步与时间步中的时间问题。在率相关(蠕变、粘塑性)分析及瞬态分析中,上述“时间”代表真实的时间。    

   
在率无关的静力分析中,“时间”表示加载次序。因此,在静态分析中,时间可设置为任何适当的值。例如,在静态分析中将“时间”设置为给定载荷的大小,这样将会比较容易绘制载荷—位移曲线。    

   
【率无关】材料的响应与载荷或变形施加的速率无关的材料称为率无关材料,如弹塑性、超弹性(橡胶等)、混凝土等材料,大多数金属在低温(≤30%左右的熔点)和低应变速率时,为率无关材料,通常所说的塑性也就是率无关塑性。    
【率相关】 材料的响应与载荷或变形施加的速率相关的材料称为率相关材料,如蠕变、黏弹性材料等。    

   

     
在ANSYS中,关于子步(时间步)还有如下特点:    
① 子步中载荷增量大小ΔF由时间步的大小Δt决定,如上图所示;    
② 时间步大小可由用户设定或由软件预测和控制;    
③ 软件中的自动时间步算法可在载荷步内为所有子步预测和控制时间步长的大小(载荷增量)。    

   
     

在非线性求解过程中,输出窗显示了许多有用的信息,其中就包括荷载步、子步(时间步)、迭代步等信息。输出的内容包括:    
① Force Convergence Value    
     力或力矩不平衡量{R}    
② MAX DOF INC    
     最大自由度(位移)增量{Δu}    
③ CRITERION    
     力收敛判据    
④ 载荷步与子步    
     LOADSTEP            SUBSTEP    
⑤ 当前子步的迭代步数    
    EQUIL ITER  6  COMPLETED    
⑥ 累计迭代步数    
     CUM ITER    
⑦ 时间值与时间步大小    
     TIME=1.00      TIME INC=0.125    
⑧ 自动时间步信息    
     AUTO STEP TIME: .....    
   

   

   
二、预测器    
ANSYS中,预测器用于在非线性分析中启用预测算法,帮助加速收敛。预测器通过基于前一步的收敛结果,预估下一步的位移自由度或载荷增量,从而减少迭代次数。    

   
预测器使用以前的求解历史来推断自由度(位移增量)求解,以便获得更好的下一步解答。在静态分析中,预测是考虑当前时间步与前一时间步的影响,基于时间步的累积位移增量预测位移增量,即:    
     
     
   
   
上式中:    
{uₙ,₀}—为每一个时间步开始时的位移;    
{uₙ₋₁}—基于当前自由度求解的位移;    
{Δuₙ}—为累积了以前时间步的位移增量;    
     Δtₙ   —为当前时间步;    
   Δtₙ₋₁  —为前一个时间步;    
       β    —比值,不能超过5。    

   
在瞬态分析中,ANSYS基于当前速度和加速度并使用Newmark时间积分公式(求解稳定性较高)来执行预测功能:    
   
   
其中:      
     
如果不存在梁或壳单元,ANSYS的自动求解设置中预测器是打开的,即PRED,ON。如果当前子步的步长大大减小,PRED将关闭。对于瞬态分析,将关闭预测器。      

     
对于每一个子步的第一个平衡迭代,可以激活自由度(位移增量)求解的预测。这有助于加速收敛,且如果非线性响应是相对平滑的,效果显著。但在包含大转动、粘弹性的分析时,并不理想。      

     
在大转动分析时,预测可能引起发散,不推荐使用。此外,若分析中出现剧烈非线性变化(如突然接触分离、材料失效),预测器也可能导致发散,此时需关闭。对于线性分析或无收敛困难的问题,无需启用。      

     
ANSYS中,预测器可通过命令控制方式如下:      
PRED,ON,,ON   !  在所有子步打开预测      
PRED,ON       !  在第一个子步后打开预测      
PRED                !  关闭预测      
PRED,-1            !  程序控制      

     

     

     
三、自适应下降        
自适应下降技术是当求解收敛困难时,可以把刚度矩阵的刚性提高,并且返回完全切线矩阵来加快求解收敛的速度。自适应下降技术用于控制刚度,将刚度分为割线刚度和切线刚度。        

       
切线刚度矩阵可以分解为两个刚度矩阵:        
       
     
     
其中:      
[Kˢ]—为割线矩阵(表现出更好的数值稳定性);      
[Kᵀ]—为切线矩阵(表现出更好的数值精确性);      
  ξ  —为自适应下降参数。      

     
ANSYS按照下列规则在平衡迭代中自动调节自适应下降参数:
     
① 开始每一个子步时,使用切线矩阵,即  ξ =0;      
② 检测平衡迭代中的残差∥R∥₂的变化;      
③ 如果残差∥R∥₂有增加,表明计算有发散的趋势,软件会采取如下措施:      
     1)如果ξ<1,则移去当前求解,并设置ξ=1,即使用割线矩阵重新迭代求解;      
     2)如果ξ=1是完成当前求解,则继续进行迭代求解。      
④ 如果残差∥R∥₂有减小,表明计算有收敛的趋势软件会采取如下措施:      
      1)如果ξ=1,且连续三次都是迭代残差都是减小,则设置ξ=0.25,并继续求解;      
      2)如果ξ<1,重复把原来的ξ设置为0.25倍,且继续迭代,一旦ξ<0.0156,则设置ξ=0。      
⑤ 如果求解中弹出“a negative pivot”,即表明求解中存在病态矩阵,软件会采取如下措施:      
     1)如果ξ<1,则移去当前求解,并设置ξ=1,即使用割线矩阵重新迭代求解;      
     2)如果求解中激活了自动时间步长,且ξ=1,则二分时间步长(时间步长减半),否则终止求解。      

     
自适应下降求解仅仅在激活完全牛顿法后使用,完全牛顿法也是塑性、接触和大应变分析的默认求解选项。      

     
在ANSYS Workbench中,自适应下降(Adaptive Descent)功能没有直接的GUI操作入口。ANSYS中,自适应下降可通过命令控制方式如下:      
NROPT,FULL,,OFF    !关闭自适应下降        
NROPT,FULL,,ON     !打开自适应下降        

       

       
四、线性搜索        
线性搜索技术是通过一个标量参数调节Newton-Raphson迭代求解中的位于增量{Δu},如下所示:          
         

       
其中:s—为线性搜索参数,0.05<s<1。        

       
线性搜索参数s通过软件系统的最小能量法自动确定,即寻找下列非线性方程的0值:        
         
其中:gₛ—关于s的势能梯度。          

         
       
ANSYS的自动求解控制将根据需要关闭或打开线性搜索,对大多数接触问题LNSRCH打开,对于大多数非接触问题LNSRCH关闭。        

       
在workbench中,非线性控制选项下可以手动打开和关闭线性搜索功能,如下所示:          
         

         
线性搜索是用来对自适应下降功能的替代,如果线性功能是打开的,自适应下降将不会被激活,不建议同时激活线性搜索和自适应下降功能。    

   
以上就是今天分项给大家的内容。关于数值计算算法的更深入的知识和问题,建议大家看看数值计算方法相关书籍,必定有所收获。    
 

来源:薛定谔的Cube
Workbench非线性ADSCONVERGEUM理论材料控制ANSYS
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-12-31
最近编辑:7月前
巴郡撸猫人
硕士 签名征集中
获赞 15粉丝 25文章 73课程 0
点赞
收藏
作者推荐

结合ANSYS帮助文档,详解接触密封部位流体压力渗透载荷的施加方法!

在前一期的文章《O型橡胶密封圈的压力渗透有限元模拟》中,笔者讲解了一个密封圈有限元模拟的操作。文章中,并未给出流体压力渗透载荷施加部位及初始渗透点设置命令流的解释。为此,本文结合ANSYS的帮助文件,对流体压力渗透载荷施加的有关设置做一期详细的介绍。本文内容主要源于ANSYS帮助文档,并结合了笔者的一些理解,如有不当还请指正~—01—流体压力渗透概述基于接触状态的压力渗透载荷(Pressure penetration loads)可以模拟计算密封结构周围的有压液体或空气渗透到接触面的影响。在ANSYS中,我们可以把流体压力渗透载荷施加到柔-柔或刚-柔接触对上。ANSYS软件中,二维和三维的CONTA172、CONTA174等面-面接触单元都支持流体压力渗透载荷。例如CONTA172单元介绍中就已对此进行了明确,如下图所示:沿法向和切向方向的流体压力可以从一个或多个位置穿透到接触界面。流体压力渗透具有路径依赖的性质,渗透路径可以发展和变化,这取决于迭代计算。在每个迭代的开始,ANSYS首先检测开始承受流体压力的起始点。然后ANSYS在这些点中根据接触状态是打开或丢失来找出流体的渗透点,此外如果计算中存在接触压力小于用户给定的压力渗透准则中的压力,则这些点也会被软件判定为压力渗透点,并受到流体压力的作用。当ANSYS发现存在渗透接触条件的点后,这个点及最靠近这个点的节点都将被考虑为承受流体压力载荷的点,如图2-1所示。流体压力渗透载荷不能施加到接触状态为张开的面上,除非该面的终点或边缘属于承受渗透压力载荷的起始点。流体压力从渗透点开始渗透到接触表面和目标表面之间的界面中。当表面之间的接触重新建立或接触压力(仅法向)大于流体穿透标准时,可以切断流体穿透。那么为了建立流体压力渗透载荷,我们需要进行哪些设置呢?根据ANSYS帮助文档,我们需要指定以下量:① 流体压力;② 流体渗透的起始点;③ 流体渗透准则;④ 流体渗透作用时间。—02—施加流体压力渗透载荷ANSYS中,必须使用 SFE 命令将流体压力施加到接触单元和目标单元。SFE命令用于定义单元上的表面载荷,例如压力、热流、对流等。命令流如下:SFE, Elem, LKEY, Lab, KVAL, VAL1, VAL2, VAL3, VAL4 Elem 指定施加载荷的单元编号或单元集 合(如 ALL 表示所有单元)。如果为ALL,则将载荷施加到所有选定的单元(通过ESEL选择,意为element select);如果Elem=P,则启用图形拾取,所有其他命令字段将被忽略(仅在GUI中有效);可以使用组件名称代替Elem。LKEY 指定载荷或渗透点施加到单元面或边的编号,下文详述。默认为1,表示法向载荷。Lab 载荷类型,例如:PRES(压力) KVAL 用于某些载荷类型的附加参数(如 RDSF 中的辐射方向) VAL1, VAL2, VAL3, VAL4 载荷的具体数值,用于定义载荷的大小和分布 根据上表,SFE命令中LKEY、Lab、KVAL各部分的填写,可在结合ANSYS中帮助文档内容填入。一、LKEY的释义LKEY参数通常代表的是一个关于流体渗透压力方向的参数,可参见CONTA174和 TARGE170 上的流体渗透压力方向和CONTA172 和 TARGE169 上的流体渗透压力方向,如下图所示。对于3D接触(接触单元CONTA174和目标单元TARGE170),可使用以下SFE命令设置流体压力荷载的方向(如上图3.41):① 设置 LKEY=1 以指定法向压力值:SFE,ELEM,1,PRES,,VAL1,VAL2,VAL3,VAL4② 设置 LKEY=3 以指定沿x方向的单元坐标系ESYS的切向压力值:SFE,ELEM,3,PRES,,VAL1,VAL2,VAL3,VAL4③ 设置 LKEY=4 以指定沿y方向的单元坐标系 ESYS 的切向压力值:SFE,ELEM,4,PRES,,VAL1,VAL2,VAL3,VAL4对于2D接触(接触元件CONTA172和目标元件TARGE169),可使用以下SFE命令设置流体压力荷载的方向(如上图3.42):① 设置 LKEY=1 以指定法向的压力值:SFE,ELEM,1,PRES,,VAL1,VAL2② 设置 LKEY=3 以指定沿切向的压力值:SFE,ELEM,3,PRES,,VAL1,VAL2二、 Lab的释义Lab是单元表面荷载的类型标签,可以在ANSYS帮助文档中进行查询,如下图CONTA172下帮助文档所示:三、KVAL的释义KVAL是某些荷载类型的附加参数。同样可以在ANSYS帮助文档中进行查询,如下图CONTA172下帮助文档所示:四、VAL1,VAL2,VAL3,VAL4释义需要注意,流体压力渗透荷载仅施加在接触单元和目标单元的角节点上,即压力施加到VALi上。对于CONTA172、CONTA174、TARGE169和TARGE170单元的中间节点,压力通过两个相邻角节点的压力进行平均。VAL3和VAL4不用于二维接触和目标单元(因为二维单元只有两个边节点)。施加到接触或目标单元节点(其中,i=1、2、3、4分别表示单元节点I、J、K、L)上的压力值VALi可以是常数也可以是表格名。① 如果它是常数,则压力的大小将根据KBC命令设置以步进或斜坡方式施加。② 如果是表格名,为了定义表格载荷,表格名要放在百分号内,例如%tabname%,使用*DIM命令定义表。只能指定一个表,且必须在VAL1位置指定。在VAL2、VAL3和VAL4位置指定的表将被忽略。SEF命令相关参数的详细解释详见ANSYS帮助文档下,S开头的命令:—03—施加流体压力渗透载荷的关键字设置与注意事项基于接触单元的接触状态和KEYOPT(14)的值,流体压力渗透载荷会自动施加到接触和目标表面的穿透点上。如下图所示:当KEYOPT(14)=0(默认)或2时,流体压力渗透载荷在迭代过程中会根据当前接触状态而变化。在某些情况下,这可能会导致不稳定的收敛模式,因为接触状态和由此产生的施加流体渗透载荷在迭代过程中不断变化。当KEYOPT(14)=1或3时,基于每个子步最后收敛时的接触状态,流体压力渗透载荷被施加到接触和目标元素上,并在该子步期间保持恒定,即使接触状态在迭代过程中不断变化。通常需要小的增量来获得准确的结果。当KEYOPT(14)等于0或1时,任何先前暴露于流体压力的接触检测点将保持“渗透”状态,除非重新建立闭合的接触条件。这是一种依赖于历史载荷的类型。渗透载荷可能在路径中间被切断。当KEYOPT(14)等于2或3时,无论“渗透”条件的历史如何,流体压力穿透载荷总是从初始起点重新施加。因此,穿透路径必须在任何起点之后是连续的。当流体压力施加到目标单元时,我们还必须为目标单元类型设置KEYOPT(10)=1。即在载荷步之间对接触状态发生改变的接触单元的接触刚度进行修正。因为流体一旦施加到目标单元,其接触状态是发生了了变化的,上述设置是为了更好模拟接触压力的变化。此外,在定义流体压力渗透载荷时,还需记住以下几点:① 对于具有对称接触对定义(包括自接触对)的柔-柔接触,只需将流体压力施加到接触元件上,且还应设置接触单元KEYOPT(8)=1(防止并忽略伪接触)。特别是在基于用户定义的压入标准的流体压力压入时,为对称接触对定义设置KEYOPT(8)=1可确保两个接触对使用相同的接触特性,并导致更准确的接触压力分布。② 对于具有非对称接触对定义的柔-柔接触,通常应在当前或将要暴露于周围流体的接触单元和目标单元上施加流体压力。如果接触对内的相关接触表面上没有施加流体渗透载荷,则程序将忽略施加到目标表面的流体渗透载荷。当流体压力施加到接触单元和目标单元时,程序必须确定接触表面和目标表面的渗透路径。确定目标表面上的渗透路径的迭代过程非常耗时,特别是对于3D接触模型。因此,建议使用对称接触对定义(KEYOPT(8)=1),因为它不需要指定目标表面上的流体穿透压力。③ 对于刚-柔接触,应仅将流体压力施加到接触元件上。程序会自动将等效力施加到刚体目标表面上,以平衡施加在接触表面上的压力。施加到刚体目标表面的流体压力将被忽略。④ 对于在相同表面上定义多个接触对的情况,接触单元可能会在这种情况下相互重叠,请小心仅在接触单元重叠的区域中应用一次流体穿透压力。⑤ 程序忽略对基于MPC的接触对施加的任何流体渗透压力。—04—流体渗透起始点当施加流体压力渗透载荷时,流体压力从定义的起始点渗透到表面,可以有单个或多个起始点。程序通过选择二维接触目标表面的自由端点或三维接触/目标表面的自由开放边缘的节点(“自由”表示单元没有被相邻单元完全包围,如下图所示)自动找到默认起始点(即默认自由开放边缘的点为默认起始点)。起始点最初暴露在流体中,并可能受到渗透压力的影响。如果接触或目标表面与闭合回路连续(如环形),则没有默认起始点。可以使用SFE命令覆盖默认起始点。我们可以使用SFE命令和STAi值指定起始点、指定渗透点,并删除默认起始点,如下所述。为了确保指定起始点STAi设置,需在SFE命令中设置LKEY=2。命令格式如下:SFE,ELEM,2,PRES,,STA1,STA2,STA3,STA4STAi = 0 (default) 程序根据接触状态确定第i个节点是否为起点。如果节点是二维自由点或位于三维自由边缘上,则第i个节点可以是默认的起点。 STAi = 1 第i个节点是最初暴露于流体的起点。如果初始接触状态为“打开”,则它可以是渗透点。在变形过程中,当接触状态发生变化时,该节点可能不再是起点。 STAi = 2 第i个节点是一个渗透点。无论接触状态如何变化,该节点始终承受流体压力。 STAi = -1 即使i节点属于2D自由点或3D自由边节点,它也不是默认的起点。 STAi = -2 第i个节点是一个非渗透点。无论接触状态如何,该节点都不会承受流体压力。 注:如果仅指定 STA1 且其他 STAi值为空白,则 STA2、STA3 和STA4 将默认为 STA1。如果我们打算定义自己的起点,需首先通过发出以下命令来抑制所有接触单元和目标单元的所有默认起点:SFE,ALL,2,PRES,,-1—05—指定压力渗透准则ANSYS软件中,可以使用接触单元实常数PPCN指定压力穿透准则,如下表。 当接触压力小于该准则的数值时,起点变为渗透点,即流体压为开始渗透。因此,较高的准则值允许流体更容易地渗透。当接触压力大于准则时,渗透点返回起点,即流体渗透被切断。默认情况下,渗透准则(PPCN)为0。在这种情况下,只有当接触断开时才会发生流体渗透,只有当接触重新建立时才会发生流体渗透的切断。 我们可以将PPCN输入为常数值或表值。表格式输入可以是初始接触检测点位置(在溶液开始时)、接触压力(PRESSURE的正指数值)、几何穿透(GAP的正指数值)时间或温度的函数。要输入表名,必须将表名用%符号(%tabname%)括起来。使用*DIM命令定义表。有关详细信息,请参阅在表格式中定义实际常数。—06— 指定流体渗透作用时间 当发生流体压力渗透时,流体压力被施加到接触/目标表面的法向和/或切向。与传统的压力加载一样,在给定的子步中,当前的流体压力取决于压力是输入为常数还是输入为表值,以及流体压力是斜坡加载还是阶跃加载。如果立即施加了总流体压力,由于接触界面附近应力的剧烈变化,可能会导致收敛困难。当流体渗透压力被瞬间移除时,例如当流体渗透被切断时,情况也是如此。为了帮助稳定流体,ANSYS提供了一个选项,可以在一个或几个子步期间线性地增加流体压力。要实现此线性加载选项,需使用接触单元实常数FPAT指定流体渗透作用时间。输入一个正数来定义加载步骤的时间增量的分数。输入一个负数来定义绝对作用时间。默认的渗透作用时间是当前负载步骤时间增量的0.01倍。如下表: 在每一个渗透点处,如果当前子步的时间增量小于流体穿透作用时间FPAT>(tn-tn-1)),则流体压力在穿透作用时间期间从上一个子步的实际施加压力线性地增加到全流量的流体压力。否则(FPAT<(tn-tn-1)),则施加全流量的流体压力,(见下图):在压力-渗透截止点处,如果当前子步的增量小于流体穿透作用时间,则流体压力在穿透作用时间期间从上一个子步的施加压力线性地减小到零。否则,流体压力会立即被移除。—07—示例命令流释义在《O型橡胶密封圈的压力渗透有限元模拟》一文中,我们在workbench中设置了流体压力施加部位(pressure)和起始渗透点(start)的命名选择,如下图: 然后,对需要施加流体压力部位的接触单元(注意是接触单元,配合对称接触,可节约计算时间,也更准确)进行了标记,如下图: 最后,在分析设置下插入命令流,选中了接触对下的接触单元,并在其上定义了流体压力渗透载荷和渗透起始点,如下图: 上图中,CMSEL命令用于选择组件和装配的子集。其基本格式为: CMSEL,TYPE,NAME,ENTITY解释如下:TYPE: 选择类型,常见的有s表示选择一个新的集 合,u表示从当前选择集中除去组件内的实体等。NAME:组件的名称,如命名选择名。ENTITY:实体类型,如elem表示单元,node表示节点等。CMSEL,s,pressure ! 表示选用命名选择pressure 线体上的节点上图中,ESLN命令的含义是选择附加到选定节点的那些元素。如命令流中,如果先选定了某些节点,然后执行ESLN命令,就可以选择与这些节点相关联的单元。ELSN,s,1!表示选择与这些节点相关联的单元上图中,ESEL命令用于选择一组单元(elements)。因为前面的选择的与节点相关联的单元包括了面体单元与接触单元此处:ESEL,r,type,,cid_1! 表示选择到指定的接触单元通过以上命令,我们选择到了需要施加流体压力渗透载荷的接触单元,然后通过SFE命令进行流体压力的施加。命令详细解释如第二节所示。来源:薛定谔的Cube

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈