首页/文章/ 详情

触类旁通ABAQUS子程序二次开发原理和应用(6月12日)

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家/独家讲师
平台推荐
主编推荐
2年前浏览2938
图片
图片
导读:第一次接触ABAQUS软件是2014年的时候,那时候刚开始做研究生课题,在导师的指导下将研究生课题定为了一个与ABAQUS软件二次开发相关的内容。说实话,那时候完全不懂ABAQUS软件是什么,甚至之前都没听过,更别说子程序二次开发。没办法,既然课题都定了这个方向,硬着头皮也得往前去,好在当时课题组还有师兄师姐会一些,在他们的帮助下从安装软件、安装帮助文档,总算是开始了我学习ABAQUS软件的第一步。
从2014年到现在,已经7年有余,中间学习的过程中走了很多弯路,也攒下了不少经验。下面我就将简要的给出一些我个人学习的经验,希望能够对各位学习ABAQUS软件二次开发的同仁能够起到一定的帮助。

图片

一、根据帮助文档学习子程序整体
帮助文档是学习ABAQUS软件最好的资料,对于子程序二次开发也是一样。首先需要根据帮助文档了解ABAQUS软件中总共有哪些子程序,每一个子程序其功能与作用分别是什么,只有对整个子程序情况有了了解以后,在实际的工作或者科研过程中才能知道应该如何去借助于子程序实现一些复杂的加载或者作用。
图片
图1 ABAQUS软件帮助文档首页
图1中红色圈出来的便是子程序相关的内容,其中从ABAQUS user subroutines reference guide进去便能够清晰的看到各种子程序的分类,如图2所示。分别根据左侧的索引进去便能查看包括隐式、显示、CFD模块对应的子程序分布,并根据每一个子程序的介绍可以大致知道各自对应的作用与功能。
Utility Routines主要为一些工具子程序,所谓工具子程序是指在上述的大的子程序中可能可以直接调用的子程序,以扩充其功能和实用性的作用,例如在编写UMAT中经常需要写出主应力、主应变、偏应力张亮、应力不变量等,这些在工具子程序中都有涉及,可以直接使用。这里涉及的内容比较多,我将在即将开设的微课直播中做更详细的介绍。

图片

图2 子程序的分类检索示意
ABAQUS verification模块主要放了一些子程序验证、子程序实例的源文件和子程序,利用好里面的资源便可以非常便捷的创作一些类似的子程序,同时认真查阅和学习里面的内容,也可以有助于快速了解和掌握相关子程序的应用。这些内容我将在微课中向各位同学展示如何利用好ABAQUS软件已有的子程序为我所用。
二、自学FORTRAN编程的基本知识
工欲善其事,必先利其器。了解了子程序的分类及其作用,到了实际自己编写的时候,必然得掌握基本的FORTRAN编程知识才行。FORTRAN编程语言相对简单,对于我们二次开发,其实涉及的语法内容也并不高深,更多只需要掌握基本知识即可。例如定义变量、定义数组、续行符、定义子程序、定义函数、定义公共变量、运算法则、逻辑预算、循环、判断等。建议各位同学自行在市面上买一本FORTRAN基础知识的书籍即可。
我推荐的是彭国伦老师的《Fortran95程序设计》。

图片

图3 彭国伦老师的《Fortran95程序设计》
三、勤学多思考,学会融会贯通
前面介绍的更多是基础内容,要想利用好子程序,一定得多思考,多加入一些自己的理解和判断。我举一个简单例子,很多同学可能都知道UEXPAN这个子程序,它是用于模拟物体热膨胀作用的子程序,当遇到热膨胀系数比较复杂的时候便考虑使用这个子程序。但是大家如果只是把对于该子程序的理解停留在这个程度,那就着实没将它的作用发挥到极致。
UEXPAN是提供了一个弹性应变以外的额外应变接口,我们完全可以用来模拟诸如混凝土的徐变、随着时间变化的生长应变、核反应堆领域中材料的辐照肿胀与辐照生长等等。因此很多时候我们要学会去思考其原理,进而融会贯通。

图片

图4 UEXPAN子程序介绍
曾经我便利用UEXPAN子程序实现了对SiC包壳材料辐照肿胀的模拟, SiC管子在辐照后会发生肿胀(体积膨胀),其体积膨胀变形表达式为-2.4×10-5T 0.031487,子程序内容如图5所示。

图片

图5 SiC包壳辐照肿胀子程序相关内容
图片
(a) S11应力云图        

图片

(b)S22应力云图
图片
(c)S33应力云图
图6 SiC包壳辐照肿胀后的应力分布结果

四、写在最后

ABAQUS子程序二次开发涉及的内容很多,还包括诸如子程序中的语法错误应该如何快速识别、USDFLD子程序—ABAQUS子程序二次开发利刃、状态变量的美妙之处、如何实现不同子程序之间的数据传递和交互等等,在这里难以一一阐述。

图片

前不久,笔者在仿真秀官网和App发布的精品课ABAQUS子程序12讲-掌握Abaqus常用子程序的二次开发与应用订阅用户群(VIP用户群)交流过程中,发现一些同学在Python二次开发与子程序二次开发的认识上存在困惑,并希望自己能快速学会并掌握一个全新的子程序。

受仿真秀平台邀请以及订阅用户的加餐要求,笔者确定在端午节假期6月12日(周六)20时为所有的ABAQUS子程序学习用户带来一堂微小课《触类旁通ABAQUS子程序二次开发原理和应用》预计时长60分钟。

下是我的直播安排

图片

作者:唐老师ABAQUS,仿真秀专栏讲师,主要擅长仿真领域:ABAQUS软件的二次开发(主要涉及子程序,包括有UMAT、UHARD、USDFLD、CREEP、UEXPAN、DLOAD、DISP、DFLUX、UVARM、FILM、GAPCON、HEATVAL、UMATHT等);焊接模拟,如高斯移动热源的模拟(如TIG焊接、摩擦搅拌焊接、激光切割等);热力耦合模拟(包括完全热力耦合与顺序热力耦合),如考虑对流换热、辐射换热、固体热传导等的复杂热力耦合;材料的弹塑性、蠕变模拟,包括复杂蠕变本构、塑性本构通过二次开发的方式进行引入等;裂纹扩展模拟,如基于XFEM(扩展有限元法)、cohesive element(内聚力单元)、cohesive surface(内聚力面)、VCCT(虚拟裂纹闭合)等的裂纹扩展模拟;材料动态冲击、材料的失效、切削模拟。

声明:本文首发仿真秀App,部分图片和内容源自网络,如有不当请联系我们,欢迎分享,禁止私自转载,转载请联系我们。
喜欢作者,请点在看图片

附件

免费达索公司年会论文集下载.txt
二次开发通用瞬态动力学显式动力学结构基础Abaqus
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2021-06-08
最近编辑:2年前
仿真圈
技术圈粉 知识付费 学习强国
获赞 9298粉丝 20568文章 3219课程 207
点赞
收藏
未登录
4条评论
或许
签名征集中
1月前
不错
回复
蓝桉
签名征集中
10月前
老师,请问三维模型如何采用vcct的方法模拟裂纹扩展呢?
回复
Traveling light
签名征集中
11月前
这个网盘失效了,作者能再分享一下链接么
回复
李新源
签名征集中
1年前
还要下载vs
回复

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈