|
以前后处理的时候看应力不连续就设置avg为100%,但不能真正理解其含义,现在我们可以通过下面的解释,明白这是怎么回事了,希望对这个有疑惑的朋友们,赶紧学习吧!
一. 应力解的性质
应用位移元进行有限元分析时,未知的场函数是位移,即求解的未知量是节点位移。我们知道
应变 strain = B * u, 应力 stress = D * strain = D*B*u
其中u是节点位移向量,B是应变矩阵,D是弹性矩阵
而B是通过单元的插值函数(形函数)N对坐标求导得到的,每求导一次,插值多项式的次数就降低一次,而求导运算使得应变和应力的精度较位移解的精度降低。
因此求解得到的应力与真实解可能有较大误差,其近似性表现在:
1. 单元内部一般不满足平衡方程;
2. 单元之间的界面上应力一般不连续 ;
3. 在力的边界上一般不满足边界条件.
近似应力解的性质是:在精确解上下振荡,并在某些点上近似解等于精确解,即在单元内存在最佳应力点。可以利用近似应力解的这个性质来提高其精度。
最佳应力点的位置:位移近似解是p次多项式,求导的微分算子是m阶,那么应力近似解显然n=p-m次多项式。若应力精确解是n+1次多项式,那么在n+1阶的高斯积分点上应力近似解的精度高于其他位置(有些情况下与精确解相等)。因此单元的最佳应力点就是高斯积分点,这也是为什么应力结果存储于高斯积分点上的原因。
由位移元得到的位移解是在全域连续,应变和应力解在单元内部连续而在单元间一般不连续,即前面所说的应力解第2条近似性:在单元边界上发生突跳。因此会出现的一个现象是:同一个节点由于围绕它的不同单元计算得到的应变和应力通常是不同的。此外,在力的边界条件上也不完全符合。由于工程中我们关心单元边缘和节点上的应力,所以需要对计算得到的应力进行处理。
二. 处理方法
最简单的处理方法就是进行单元平均或节点平均,一般采用算术平均或加权平均的方法。
此外一般采用的方法是应力磨平,包括总体应力磨平、单元应力磨平以及分片应力磨平。
以总体应力磨平为例来介绍应力磨平的基本思路:
构造一个改进的应力解S*,它是在全域连续的。它与有限元求解的近似应力解之间满足加权最小二乘原则(其数学形式是使一个泛函取驻值),通过这个原则进行计算可以解出改进的应力解S*.
这个方法的缺点是计算量太大,以至于比有限元求解位移解的计算量还要大。因此又分别提出了计算量较小的单元应力磨平和分片应力磨平方法。
具体到abaqus的实现,对于存储于积分点的结果(Element-Based Filed Output Results, such as stress, strain,etc.)它默认所采用的是一种条件平均方法(conditional averaging method):
1. 首先将应力张量的分量从高斯积分点上外插到单元的节点上;
2. 默认条件下将在节点上计算不变量(标量),最后再对外插结果进行平均。
‘75%’就是进行平均时的一个参数(叫averaging threshold),理解它需要先介绍另一个节点量即 relative nodal variation 节点相对变化量,在指定区域内进行平均时其定义为
relative nodal variation = (max@node - min@node) / (max over active regions - min over active regions)
当 relative nodal variation < averaging threshold 时,由单元贡献的这个值将参与平均,否则不参与平均。
引用一个例子
"首先某节点是n个单元的公共节点,每个单元在该节点都有一个应力值,比如节点1为周围四个四边形单元的公共节点,那么每个四边形单元在节点1都有一个应力的外推值,假定为(1e6,1.5e6,1.7e6,2e6),最大与最小应力差值为1e6;假定在整个模型显示区域的最大应力与最小应力差值为4e6,那么节点应力相对变化率为1e6/4e6=0.25。在节点1的4个应力值是否会进行平均计算呢?由设定的avg值决定,节点应力相对变化率低于设定avg值的将会被平均。对于节点1,如果设定avg=0.3,那么节点1 输出值为平均应力(1e6+1.5e6+1.7e6+2e6)/4=1.55e6,如果设定avg=0.2,那么节点1处的应力值将不参与平均运算。avg设定为1 ,则意味着所有显示区域所有节点的应力计算都参与平均,所得云图越光滑"
|
|