热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c++多项式曲线拟合求极大值点_超弹材料模型及其曲线拟合

当有限元分析中需要使用超弹性材料模型时,工程师通常很少有实质性的数据来帮助他们进行超弹有关的非线性分析。有时幸运的工程师会有一些拉伸或压缩应力-应变实验数据ÿ

当有限元分析中需要使用超弹性材料模型时,工程师通常很少有实质性的数据来帮助他们进行超弹有关的非线性分析。有时幸运的工程师会有一些拉伸或压缩应力-应变实验数据,或者还会有一个简单的剪应力-应变实验数据。正确地处理这些数据是分析非线性超弹模型的关键一步,而对这些数据进行曲线拟合而得出对应超弹模型的材料参数就显得尤为重要。今天我们就来了解一下超弹模型相关的实验数据及其曲线拟合,最后也会在MatEditor软件中给出曲线拟合的实例。

288ad580912582211c59a63af60ecdda.png

超弹材料的力学实验数据

应变能密度函数中的材料常数确定了超弹性模型的力学响应。为了在超弹性分析中获得正确的结果,需要评估被测材料的模型常数。这些常数通常是根据实验应变-应力数据通过曲线拟合得出的。测试数据通常取较大范围内的几种变形模式。使用至少与有限元分析中所要经历的变形状态一样多的测试数据,拟合出的材料常数才能准确体现材料的力学响应。

对于超弹性材料,可以使用简单的变形测试来拟合材料常数。下图表现了6个不同的变形模式。来自多种变形状态下的数据组合要比单一类型的变形数据更好,更可以得到准确的超弹材料参数。

f8adf9c60d28affbaf627db54bade422.png

尽管存在6种不同的变形状态,但是我们发现在施加静水压力后,以下变形模式会变得相同:单轴拉伸和等双轴压缩,单轴压缩和等双轴拉伸,平面张力和平面压缩。通过这些等效的测试模式,我们只需要这三种独立的变形模式的实验数据。

单轴拉伸

一种简单拉伸测试的应力-应变数据。必须提供这类测试数据,才能模拟计算拉伸应变状态。测试数据中不存在侧向约束。单轴压缩数据可以从等双轴数据中得出。

单轴拉伸下的第一和第二应变不变量为:

1a71866d175f7ee51bb49636d442df9e.png

所对应的工程应力与主拉伸率的关系为:

23058b4023887e033f688033986a6d08.png

等双轴拉伸

等双轴拉伸测试中的应力-应变数据。通过在两个方向上均匀拉伸,体现出相当于纯压缩的应变状态。单轴压缩数据可以从等双轴数据中得出。

等双轴拉伸下的第一和第二应变不变量为:

2def9478e579db87e72cef963c1fbc9f.png

所对应的工程应力与主拉伸率的关系为:

a74f863cf881811b5fd441d5f0f4caf2.png

纯剪切变形

对于超弹性材料,这通常是指大幅拉伸的样品,但由于该材料几乎不可压缩,因此存在纯剪切状态。

第一和第二应变不变量为:

ac30d724b6233a4ec9d28ed3e2916e19.png

所对应的工程应力与主拉伸率的关系为:

dc05df3656fe29482c08c3395d817deb.png

体积变形

此数据用于确定体积模量。对于超弹材料,如果材料可稍加压缩或部件整体受约束,则此数据较为重要。体积模量通常比剪切模量大2-3个数值阶次。对于泡沫材料,体积数据对计算材料的可压缩性十分重要。

超弹模型与曲线拟合

由于每一种超弹模型对应的材料常数数量和物理意义都不一样,需要在这里给出每种超弹模型的应变能。目前,MatEditor已经支持下列常见超弹模型:

Arruda-Boyce模型

705eb10eede69326ec24c6f213dda3e3.png

其中u是初始剪切模量,lambda是有限网格拉伸,D1是不可压缩参数。

Blatz-Ko模型

7e907925c071dbdc9f6e1d9101897941.png

其中u是初始剪切模量。

Gent模型

f9238e03cc958565e545004f62e534e8.png

其中u是初始剪切模量,Jm是I1-3项的限定值,D1是材料不可压缩参数。

Mooney-Rivlin 2参数模型

a1c40e47b9586f62578cdee774269d30.png

其中,C10,C01,和D1是材料参数。

Mooney-Rivlin 3参数模型

27bca64ab38f1bc846dba107f0be1a7b.png

其中,C10,C01,C11,和D1是材料参数。

Mooney-Rivlin 5参数模型

84ff97dfd8a72ff80fa9cc7f44c6c0a2.png

其中,C10,C01,C20,C11,C02,和D1是材料参数。

Mooney-Rivlin 9参数模型

b531959fbb19359d2bd80339be524654.png

其中,C10,C01,C20,C11,C02,C30,C21,C12,C03 和D1是材料参数。

Neo-Hookean模型

a833e727772c3852076de79ee3eb917d.png

其中,u是初始剪切模量,D1是材料不可压缩参数。

Ogden模型

cb113297af3d10aca5e59c7d7f8eecfc.png

其中,N确定多项式阶数,u和a是材料参数,D是不可压缩参数。

多项式模型

c1d309a0e9fe449977c0ef760149b1de.png

其中,N确定多项式阶数,c_ij和D是材料参数。

Yeoh模型

3d75e9ce20f8fe9f8576878c2cad2a01.png

其中,N确定多项式阶数,c_i0和D是材料参数。

根据具体条件,使用者可以通过结合测量得到的单轴拉伸、压缩、双轴拉伸和体积测试数据来更好地估算材料参数。这些测试数据随后可以对每个超弹模型进行曲线拟合。

给定测试数据和具体超弹模型后,材料常数可以通过最小二乘法计算残差得到最优的参数结果,常用Levenberg-Marquardt 求解器来实现最小化算法。拟合曲线是目前找出超弹性材料模型中材料参数最主要的方法之一;但还应考虑给定超弹性材料模型的稳定性。通常采用Drucker稳定性准则来确定材料的稳定性。根据Drucker准则,与增量应力相关的应变能应大于零。如果违反了该准则,材料模型将会不稳定。在实际数值计算中,常用的方法是检查材料刚度矩阵的正定性,以此来确定给出的材料常数是否稳定。

使用MatEditor进行超弹材料曲线拟合

工程材料编辑软件MatEditor已经支持了多种超弹模型材料及其参数拟合。通过输入应力-应变试验数据,就可以得到用于有限元分析的超弹材料常数。MatEditor不仅能够使用试验数据拟合出所选本构函数(应变能函数)的参数,而且还能将本构函数曲线与试验数据(名义应力-应变曲线)绘制在同一图表中,便于对比拟合效果。这样,使用者可以利用实验应力应变数据直接让程序自己拟合出超弹材料模型的参数。

目前MatEditor和WelSim已经支持的超弹曲线拟合模型有:Arruda-Boyce, Mooney-Rivlin, Neo-Hookean,Ogden, Polynomial,和Yeoh模型。本例使用经典的Mooney-Rivlin 9 作为示例,曲线拟合基本步骤如下:

1. 选择超弹性材料

从超弹列表中选择Mooney-Rivlin 9材料属性,添加至材料属性编辑窗口。此时的参数为空白需要使用者输入或者参数拟合。

a41c301dc972740632f32bc17ce72fb5.png

2. 从测试数据列表中选择添加单轴、双轴、和剪切三种试验数据,并在表格中输入测试数值,如下图所示单轴拉伸试验数据。MatEditor也支持多个温度下的测试数据。测试数据需要覆盖后续仿真的应变范围。如果数据较多,使用者可以通过文件导入的方式输入应力-应变数据。

9dbbbda9e11217db5ba74e7de8b37c34.png

3. 确认测试数据输入正确后。右键点击Mooney-Rivlin 9属性,添加曲线拟合属性。

09dfdf219a5afcbd9836d35121052504.png

4. 右键点击刚添加的曲线拟合属性,计算,并拷贝计算值至材料属性中。

c3c5bff286b11d15f1604b2cd1a49a12.png

5. 如果计算并赋值成功,可以查看拟合后的材料参数和曲线状况。

0bde5fde7f1144890da99dbb2817e176.png

6. 对比曲线和测试数据的差异。并决定是否采用这些参数进行后续的分析工作。本例中,已经计算出了Mooney-Rivlin的9个参数。而体积数据用来计算最后一个数据d(不可压缩性因子,与泊松比有关),可以通过体积实验曲线拟合得到。如果没有体积试验曲线,则d=0,这种情况下可能需要手工修改d值,如果知道泊松比u,则可用如下公式计算:d=(1-2u)/(c1+c2)。注意此式是建立在几乎不可压缩(u接近于或等于0.5)的前提下的。

现给出同一组数据下,不同模型曲线拟合的结果。可以直观地理解不同超弹模型曲线拟合的特点。

536f5e31cf552fc2bb0e5f60b18bb419.pngdbebd3c50d5a354bbd0cae3f81a8ea7f.png
31e9675e033e84a635733f2cf6b5df59.png4542c5aa7ad0eeeb03869dd20e1399b9.png
cd083a61a9829499e4ead5875850cbda.png

3f6050e268fb91c7ff387c779560fc29.png

2f26c3f466c21091ca537e078d6f9dd5.pngf902526ffe0c1a88f5e94ef35bbde9a7.png
cef86029bb57e79cd06ecfd04c2f3bc5.png7aad9f1699434f4e81270fa8f87d4e50.png
ec2ff6ab6a2c11caf263708a37df6a99.png39867db4507982fb1685558afcc7d24e.png

超弹模型曲线拟合中的注意事项

1. 若要得到精确的材料常数,曲线拟合中输入的应力-应变数据必须涵盖分析中将遇到的完整载荷范围。例如,如果部件除了拉伸和压缩以外,还会遇到剪切应力,则必须输入纯剪切应力-应变数据。简单拉伸本身不足以对这些情况下的材料行为进行建模。如果只拟合单轴数据,并使用计算的参数用于实际双轴变形分析,可能会得到错误的有限元分析结果。在材料参数估计中,最好能结合不同的大变形模式执行曲线拟合,而非只使用一种变形模式。

2. 在大多数情况下,曲线拟合例程无法达到完美的精度。曲线拟合的结果很大程度上取决于所需范围内给定的测试数据。

3. 大多数的超弹模型是基于完全不可压缩理论的(除了Blatz-Ko和Ogden Foam等),所以对于这些模型而言,输入参数时,要注意其破松比应该接近0.5,一般大于0.49。这样才能在有限元计算中得到合理的结果。

本文中,我们讨论了各种用于橡胶材料的常用非线性超弹模型及其曲线拟合。为了将材料参数拟合到材料模型中,我们需要正确的测量数据。我们还分析了一些典型的实验测试、材料模型选择。通过在MatEditor软件示例,演示了如何在非线性超弹模型中直接使用测量数据,并拟合到不同超弹性材料模型的参数。

最后,给出相关软件操作视频,供大家参考。


官网:https://welsim.com

QQ群:428410872

328fc3bece33191cd7f718eae288aaa8.png

欢迎订阅、转发、评论




推荐阅读
  • kafkamanager(cmak)安装及使用
    1.软件下载kafka-manager工具目前改名为cmak,下载地址为:https:github.comyahooCMAKreleasestag3.0.0.5现在 ... [详细]
  • python基础(二、pycharm安装、卸载)
    3.在Ubuntu中安装PyCharmPyCharm的官方网站地址是:https:www.jetbrains.compycharm注意:安装时不要使用root用户安装,否则后期使用 ... [详细]
  • mongodb复制集部署文档 ... [详细]
  • Linux负载均衡LVS(IPVS)
    一、LVS简介LVS是LinuxVirtualServer的简称,也就是Linux虚拟服务器,是一个由章文嵩博士发起的自由软件项目,现在已经是Linux ... [详细]
  • 是不是zlib是这些库的压缩算法的实现库,而这么多库它们只是在打包的时候使用了zlib进行压缩而已.而具体的打包格式就有ZIP,BZIP2,GZ之分?但是在我们在用gz压缩时候通常之前 ... [详细]
  • nvmw安装,用于控制node版本;
    之前一直使用的是nodev2.2.0版本,挺说新版本的node解决了npm安装插件产生文件夹结构过深的问题,所以就想更新试试;上网一看才发现,尼玛的node已经到了6.+版本了,好 ... [详细]
  • 下载安装并配置flutter
    1.去github上下载flutter安装包https:github.comflutterflutterreleasestag2.0.42.将安装包zip解压到你想安装Flut ... [详细]
  • apk简单介绍APK的组成apk安装流程app的启动过程apk打包流程AIDLAIDL介绍为什么要设计这门语言它有哪些语法?默认支持的数据类型包括什么是apk打包流程 ... [详细]
  • MQ的使用
    安装环境:linuxredhatactivemq版本:5.8.01.从http:activemq.apache.orgdownload.html地址下载 ... [详细]
  • 简单理解rsa的加密和签名PHP实现
    我们先动手在linux上生成一下rsaPs:openssl是一堆加密算法和安全协议的开源集合,像RSA,DES,MD5,RC4等等,都能在openssl里面找到源代码 ... [详细]
  • 最近我亲手采集了2020年7月前和2019年全年的最新一批行业研究报告,一共汇总了接近1000份行业研究报告,大小为5G多一点。这也是我做行业研究报告采集分享的第三年,感谢 ... [详细]
  • Linuxchmod目录权限命令图文详解在Linux文件系统模型中,每个文件都有一组9个权限位用来控制谁能够读写和执行该文件的内容。对于目录来说,执行位的作用是控制能否进入或者通过 ... [详细]
  • 泛圈企业云盘:打造高效灵活的协同平台提高企业办公效率
    云计算作为一种新的模式,给企业信息化的发展带来了巨大的变化。其中,企业云盘是一种可以快速被接受的企业云应用,因为在企业云盘存储中,所有云服务带来的风险都会大大降低。将文档管理系统本 ... [详细]
  • WebShell代码分析溯源(二)
    WebShell代码分析溯源(二)一、一句话变形马样本 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
author-avatar
johnylulu2502904467
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有