线弹性、非线性弹性和塑性材料有何区别?
线弹性:加载时的应力-应变关系是线性的,卸载时沿原路径返回,不会留下永久变形(如图a所示)。
非线性弹性:加载时的应力-应变关系是非线性的,卸载时不会留下永久变形(如图b所示)。
弹塑性:在加载的开始阶段是弹性材料,当应力达到一定程度后(例如达到屈服点)应力-应变关系变为非线性,卸载后会留下永久的塑性变形(如图c所示)。
简而言之,线性和非线性的区别是指加载时的应力-应变关系是否保持线性比例关系,弹性和塑性的区别指的是在卸载后是否会留下永久变形。
理想弹塑性模型:达到屈服强度后,应力不再增大,而应变则继续增大,即变形处于不确定的流动状态,在屈服点之后应力-应变关系变为一条水平直线(如图a所示)。
弹塑性硬化模型:达到屈服强度后,应力和应变都可以继续增大,此时应力是塑性应变的函数。如果卸载后再次健在,材料的屈服强度会会提高,此即所谓的材料加工硬化。
注意:(1)上图中的应变指的是总应变=弹性应变+塑性应变,而在WB中只能输入塑性应变的值(屈服强度时应变为0),不需要输入弹性阶段的数据。
(2)在弹塑性分析的时候理论上采用理想弹塑性模型和弹塑性硬化模型计算结果应是一致的,但采用理想弹塑性模型特别容易出现难以收敛的问题,所以要采用弹塑性硬化模型。
做弹塑性分析时,网格密度和质量固然重要,需要保证网格质量同时尽量细化网格,但需注意的是并非是网格越细越好,如果网格过于细化,则也很有可能会导致难以收敛的问题。例如:如果六面体单元的边长为1mm,当其中某个节点出现0.2mm的位移时,此单元仍可保持比较规则的形状,不会造成收敛问题,但如果网格细化10倍,则六面体单元的变成变为0.1mm,如果此时再出现某个点发生0.2mm的位移,那么此单元就可能会变得严重扭曲,导致分析难以收敛。所以在分析之前,要根据模型实际情况及有可能发生的位移大小进行网格的适当细化,切勿进入网格划分越细越好的误区,究竟什么样的网格密度是适当的,无法一概而论,需要在实践中积累经验。
在弹塑性分析中尽量不要使用二阶单元,二阶单元容易产生体积自锁,如果使用二阶完全积分单元则很容易产生体积自锁现象,如果使用二阶减速积分单元,当听辨大于20%~40%时,需要划分足够密的网格才不会产生体积自锁现象,此时又回到上一个问题,足够密究竟多少足够呢,太细了又会不收敛,很难把握合适的网格密度。因此建议选择的单元类型为一次减缩积分单元,在模拟非线性变形方面较合适的一种单元,不会出现体积自锁,但是一阶减缩积分单元容易出现零能量模式的沙漏现象,因而也需要控制网格密度,厚度方向至少划分3或4层,以避免沙漏现象。
当弹塑性分析无法收敛时,首先应该想到的是,去除材料中的塑性材料参数,先做最简单的线弹性分析,如果这时分析同样无法收敛,则说明并非塑性材料方面的问题,而是模型中存在其他方面的错误,有可能是模型本身的错误,有可能是约束不够,有可能是载荷施加不对,有可能是定义的接触不对等等原因。不收敛的原因很多,在很多情况下真正的错误原因并不是我们能想到的,这时候就需要我们一步步简化模型,去掉所有复杂的、自己不熟悉的模型参数采用排除法一步步进行排除,一直简化模型,直到模型能够收敛为止,然后再逐步把简化掉的模型参数一步步恢复,如果发现在恢复某种参数时模型变得无法收敛,就很可能是这个参数存在问题。其实上述是很笨的一种方法,但恰恰又是最有逻辑性的一种方法,如果在没有更好的方法时,也只能一步步进行排除。另外,如果自己觉得哪地方很有把握,而哪些地方没有把握,则优先去检查没有把握地方的问题,或在有些地方很有把握绝对不会出现问题,均可减少排除错误的时间。
建模时,应尽量避免过大的钝角或过小的尖角部分,一句话简言而之,凡是会出现应力奇异的结构都应当尽量避免,这些区域的存在会极大的影响网格单元形状和质量,很容易造成计算不收敛问题。应尽量利用对称性,只取1/2、1/4或1/8模型建模,减小模型规模,减少载荷和约束的数量,缩短计算时间,提高网格质量,降低收敛难度,提高计算精度。
各个物理量的单位要保持一致,不管何种分析类型,这都是最基本且必须的,但在弹塑性分析中单位不一致的后果会直接导致计算不收敛,试想如果单位不一致,造成模型中的载荷远远大于其所能承受的载荷,则模型会产生过大的变形,分析计算自然会无法收敛。即使模型中各个量的单位是正确的,同样应该注意施加的载荷大小要符合工程实际,避免模型出现过大的不符合实际的变形。另外,尽量不要对塑性材料施加点载荷,点载荷会造成局部变形或应变过大同样也会造成无法收敛的问题,可根据实际情况使用面载荷或线载荷,或将点载荷通过耦合约束耦合到一个切出来的小面上,让面上的节点共同承担载荷,避免直接在某个模型角点或单元节点上施加载荷。
在加载过程中设置足够多的子步数,等比例逐渐施加载荷,并保证在一个时间步内,最大的塑性应变增量小于5%;载荷步的设置不仅影响到计算结果,甚至会计算是否会收敛,因而载荷步的设置是一个需要摸索和经验的活,如载荷步设置的较少,则计算可能发散,若载荷步设置的过多,则计算时间有可能会大大增加。可通过力的收敛曲线初步判断计算的收敛性。但请记住一句话,如果在载荷步的第一步就计算就不收敛那么这个模型必定是不收敛的,一定要保证在第一步时收敛曲线在收敛准则以下,否则可直接停下计算,查询模型可能存在的问题,不必继续浪费几小时的时间之后才发现不收敛。
云图上显示的结果是网格节点的应力值,是高斯积分点处的值通过插值外推得到的,因而网格节点上的应力值与积分点上的应力值并不一致,如果节点上的结果与积分点上的应力值相差很大,则间接说明相邻单元之间的应力、应变变化非常剧烈,网格划分过于粗糙。可细化网格降低单元节点与高斯积分点上的应力差值。
输入塑性材料数据时,不需要输入过多的数据点,以避免应力-应变曲线出现轻微的锯齿形,进而导致分析计算不收敛,只需在数据中选取适当数量的有代表性的数据点,构造成一条平滑的应力-应变曲线即可,且不可出现颈缩现象后的数据点,即应力-应变曲线应该改是单调向上的,如果出现颈缩后下降段的真是应力,则有可能会出现收敛问题,要让塑性数据最后一行中的塑性应变大于模型中可能出现的最大塑性应变值,始终保证应力-应变曲线式单调向上的。