首页/文章/ 详情

《Mechanics of Solid Polymers》5.3.9 I₁和I₂多项式模型

3小时前浏览4

5.3.9 I₁和I₂多项式模型

        通过将Helmholtz自由能表示为I₁I₂的多项式展开,可以得到NH、Mooney-Rivlin和Yeoh模型的一般化形式。表达这种级数展开形式的一种常见方式如下[10]:
     这个Helmholtz自由能的表达式非常通用,涵盖了NH、Mooney-Rivlin和Yeoh模型,但其通用性也使得获取能够在多轴加载情况下给出准确且稳健预测的最佳材料参数变得困难。因此,这种多项式表示法不如NH、Mooney-Rivlin和Yeoh的简单模型那样常用。

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

《Mechanics of Solid Polymers》5.3.8 Yeoh超弹模型

5.3.8 Yeoh模型 Yeoh模型是基于Helmholtz自由能,这个自由能表达为关于I₁的三阶多项式,且不依赖于I₂。由于包含了更高阶的I₁项,该模型能够提供比NH模型更准确的预测,同时可能避免Mooney-Rivlin模型的一些稳定性问题。对于Yeoh模型的可压缩版本,一种便捷的方法来表示单位参考体积的Helmholtz自由能如下: 该模型需要四个材料参数:C₁₀、C₂₀、C₃₀和κ。需要注意的是,一些有限元程序还使用更高阶项来表示体积变形的能量。正如在2.2.9节中讨论的那样,这些高阶项在模型预测的精度中很少起作用。 Yeoh模型的主要动机之一是,对于大多数弹性体而言,Helmholtz自由能对第一不变量I₁的依赖性比对I₂的依赖性强得多[24-26]。此外,实验上很难确定Helmholtz自由能对I₂项的依赖关系。基于这些论点,Yeoh [24]建议可以合理地忽略对I₂的依赖。还有研究表明,通过忽略I₂的依赖性,可以更容易地确保超弹性模型是Drucker稳定的[24](参见5.8.2节)。 使用方程(5.41),可以证明可压缩Yeoh模型的Cauchy应力由下式给出: 对于不可压缩Yeoh模型版本,单轴、平面和等双轴变形的Cauchy应力由以下表达式给出: Yeoh模型预测弹性体行为的准确性如图5.17中所示。这张图表明,对于不同的加载模式,Yeoh模型能够改进NH模型的预测结果,特别是在大变形情况下。对于许多弹性体材料,已有研究[27]表明,一个选择材料参数的经验法图5.17 Treloar[16]的实验数据与不可压缩Yeoh模型预测结果的对比则是C₁₀为正值,C₂₀ ≈ -0.01C₁₀,以及C₃₀ ≈ -0.01C₂₀。 对于不可压缩单轴加载,Yeoh材料模型可以使用以下Python代码实现:Python代码:"Yeoh_incompressible_uniaxial.py"from pylab import *defYeoh(strain, params):"""Yeoh 超弹性模型。 不可压缩单轴加载。 此函数使用真实应力和应变""" C10 = params[0] C20 = params[1] C30 = params[2] lam = exp(strain) I1 = lam**2 + 2/lamreturn2 * (lam*lam - 1/lam) * (C10 + 2*C20*(I1-3) + 3*C30*(I1-3)**2)strain = linspace(0, 0.8)params = [1.0, -0.1, 0.01]stress = Yeoh(strain, params)plot(strain, stress, 'r-')show()以下代码示例展示了如何实现可压缩单轴加载的Yeoh材料模型:defYeoh_3D(stretch, param):"""Yeoh 3D加载由拉伸指定。 param: [C10, C20, C30, kappa]。返回真实应力。""" L1 = stretch[0] L2 = stretch[1] L3 = 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) devbstar = bstar - trace(bstar)/3 * eye(3) I1s = trace(bstar)return2/J*(param[0] + 2*param[1]*(I1s-3) + \3*param[2]*(I1s-3)**2)*devbstar + param[3]*(J-1) * eye(3)Python代码:"Yeoh_compressible_uniaxial.py"from pylab import *from Polymer_Mechanics_Chap05 import *trueStrain = linspace(0, 0.8, 100)trueStress = uniaxial_stress(Yeoh_3D, trueStrain, \ [1.0, -0.01, 1e-4, 100])plot(trueStrain, trueStress, 'r-')xlabel('True Strain')ylabel('True Stress (MPa)')grid('on')show()Python代码创建的图:来源:ABAQUS仿真世界

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