首页/文章/ 详情

《Mechanics of Solid Polymers》5.3.7Mooney-Rivlin模型

17小时前浏览8

5.3.7 Mooney-Rivlin模型

    
        Mooney-Rivlin (MR) 模型是NH模型的扩展,通过在单位参考体积的亥姆霍兹自由能中加入对I2*的线性依赖,试图提高预测精度:
如方程所示,MR模型的可压缩版本需要三个材料参数:C10、C01和κ。使用方程(5.41)可以证明,Mooney-Rivlin模型的柯西应力表达式为:
对于MR模型的不可压缩版本(κ → ∞),单轴、平面和等双轴变形的柯西应力由以下表达式给出:
Mooney-Rivlin模型预测弹性体行为的准确性在图5.15中通过与Treloar[16]的硫化天然橡胶数据对比得到了展示。
图5.15 Treloar[16]的实验数据与不可压缩Mooney-Rivlin材料模型预测的对比


        这个图表明,Mooney-Rivlin模型能够改善NH模型的预测。然而,这种改进可能会付出代价——具有负C01项虽然通常能改善一种加载模式下的预测,但同时可能使模型在另一种有限变形下变得不稳定。这种情况的一个例子如图5.16所示。



对于不可压缩单轴加载,Mooney-Rivlin材料模型可以用以下Python代码实现:

Python代码:"MR_incompressible_uniaxial.py"

from pylab import *

defMR(strain, params):
"""Mooney-Rivlin超弹性模型。
    不可压缩单轴加载。
    此函数使用真实应力和应变"""
    C10 = params[0]
    C01 = params[1]
    lam = exp(strain)
return2 * (lam*lam - 1/lam) * (C10 + C01/lam)

strain = linspace(00.8)
params = [1.00.1]
stress = MR(strain, params)
plot(strain, stress, 'r-')
show()


以下代码示例展示了一种实现可压缩单轴加载的Mooney-Rivlin材料模型的方法。

这段代码展示了Mooney-Rivlin模型的3D实现和可压缩单轴加载的应用。让我解释一下这两部分代码:

  1. "Polymer_Mechanics_Chap05.py"中的附加Python代码:

这个函数MR_3D实现了3D Mooney-Rivlin模型:


defMR_3D(stretch, param):
"""Mooney-Rivlin。3D加载由拉伸指定。
    param: [C10, C01, kappa]"""
    L1, L2, L3 = stretch[0], stretch[1], stretch[2]
    F = array([[L1,0,0], [0,L2,0], [0,0,L3]])
    J = det(F)
    bstar = J**(-2.0/3.0) * dot(F, F.T)
    bstar2 = dot(bstar, bstar)
    I1s = trace(bstar)
    I2s = 0.5 * (I1s**2 - trace(bstar2))
    C10, C01, kappa = param[0], param[1], param[2]
return2/J*(C10+C01*I1s)*bstar - 2*C01/J*bstar2 + \
           (kappa*(J-1) - 2*I1s*C10/(3*J) - 4*I2s*C01/(3*J))*eye(3)
  1. "MR_compressible_uniaxial.py":

这个脚本使用上面定义的MR_3D函数来计算可压缩单轴加载下的应力-应变关系:


from pylab import *
from Polymer_Mechanics_Chap05 import *

trueStrain = linspace(00.8100)
trueStress = uniaxial_stress(MR_3D, trueStrain, [1.00.1100])

plot(trueStrain, trueStress, 'r-')
xlabel('真实应变')
ylabel('真实应力 (MPa)')
grid('on')
show()


这段代码计算了一系列真实应变对应的真实应力,并绘制了应力-应变曲线。它使用了之前定义的uniaxial_stress函数(在前面的代码中定义)来计算单轴应力。

这个实现展示了Mooney-Rivlin模型如何处理可压缩材料的单轴加载情况。它考虑了体积变化(通过参数kappa),这使得模型更加通用,可以应用于更广泛的材料和加载情况。

来源:ABAQUS仿真世界
通用python材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-15
最近编辑:17小时前
yunduan082
硕士 | 仿真主任工程... Abaqus仿真世界
获赞 163粉丝 287文章 363课程 0
点赞
收藏
作者推荐

各向同性强化、随动OR混合强化?Abaqus有限元分析中硬化模型该如何选择?

在进行应力分析时,假设材料为线弹性行为可能已经足够。这意味着所有由载荷引起的变形都是完全可恢复的,材料不会产生永久损伤或"形变"。但这种情况仅适用于结构中任何位置的应力均未超过材料屈服点的分析。 然而,如果载荷预计或已知会导致应力超过屈服点,因而需要考虑塑性效应时,我们就需要做出选择:该使用Abaqus中的哪种硬化模型? 本文主要讨论金属材料,因为金属的静水应力引起的变形极小且完全可恢复。泡沫和土壤等其他材料可能在很小的静水压力下就会发生永久变形,这些材料将留待其他专题讨论。金属塑性当引入足够的应变能使晶格中的位错开始移动时,金属就会发生塑性变形,此时材料将永久变形。我们都熟悉如下的应力-应变曲线:这张图代表了一个典型的拉伸试验:加载至屈服应力σy,然后继续加载至任意应力水平σ1,产生塑性应变εp。看起来很简单,对吧?但如果我们考虑卸载后重新加载(无论是拉伸还是压缩)会发生什么?我们知道材料已经永久变形,但这会如何影响第二次加载时的应力-应变行为?各向同性硬化"应变硬化"现象可能也很熟悉:在重新拉伸加载时,表观屈服强度相当于前一次加载序列中看到的最大应力。为了从本构上捕捉这一点,我们必须回到屈服面,思考在满足屈服准则后发生了什么。从概念上讲,各向同性模型认为屈服面会随着材料流动而简单地扩大。这给出了在完全反向循环加载下的应力-应变响应:随动硬化从上面的图像可以看出,如果我们遇到一个完全反向的拉伸-压缩加载循环,在第一个循环后就会产生完全线弹性的响应。因此,各向同性模型适用于仅加载一次或仅在同一方向循环加载(即拉伸-零-拉伸)的材料,但当加载本质上是拉伸-压缩-拉伸时,屈服面的扩大并不能充分捕捉行为。"包辛格效应"这个术语可能不太熟悉,它用于描述材料流动时获得的永久应变硬化和背应力的组合。随动硬化模型更合适地捕捉了这一点,因为屈服面不是扩大,而是移动或平移,如下图所示:由此产生的应力-应变行为更接近现实:混合或组合硬化 实际上,我们总是试图用数学模型来模拟微观材料变形现象,因此总是需要权衡。有些材料在循环后会软化,而另一些则会硬化。这意味着,拉伸-压缩应力-应变曲线不仅仅是围绕相同的路径循环,曲线的路径会随着循环次数而变化。为了捕捉这一点,我们可以采用一种模型,使屈服面同时移动和改变大小。这被称为混合或组合硬化模型,通常被认为是预测材料行为最准确的方法。下面的应力-应变行为代表了循环硬化材料在前四个循环中可能看到的响应,这需要混合硬化模型在有限元分析中准确表示:如何选择?希望您现在已经理解了Abaqus和其他有限元工具中可用硬化模型之间的区别。总结来说:各向同性硬化:适用于一次性或脉动加载情况,也通常最容易在模型中实现。随动硬化:允许完全循环行为,但忽略了循环硬化和软化的影响。混合/组合模型:如果这些因素很重要,混合模型允许将它们包含在本构材料行为中,通常被认为提供了最"完整"的物理表示。最后思考 当需要模拟超过屈服且具有循环性质的加载时,选择最适合用例的材料模型非常重要。本文从概念上介绍了三种主要选项,希望能帮助您做出选择。来源:ABAQUS仿真世界

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