本文主要是介绍ABAQUS用户子程序二次开发——UMAT介绍(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
个人专栏—ABAQUS专栏
- Abaqus2023的用法教程——与VS2022、oneAPI 2024子程序的关联方法 Abaqus2023的用法教程——与VS2022、oneAPI 2024子程序的关联方法
- Abaqus有限元分析——有限元网格划分基本原则 Abaqus有限元分析——有限元网格划分基本原则
- 各向同性线弹性材料本构模型umat的应用 各向同性线弹性材料本构模型umat的应用
- ABAQUS用户子程序二次开发——UMAT介绍(一) ABAQUS用户子程序二次开发——UMAT介绍(一)
文章目录
- 个人专栏—ABAQUS专栏
- UMAT Fortran固定格式程序代码基本架构如下:
- UMAT程序参数分为三类:需定义参数、可更新参数和不可更新参数
UMAT Fortran固定格式程序代码基本架构如下:
C *** SUBROUTINE UMAT(
C *** 子程序参数列 *********************C 1 STRESS, STATEV, DDSDDE, SSE, SPD, SCD,2 RPL, DDSDDT, DRPLDE, DRPLDT,3 STRAN, DSTRAN, TIME, DTIME, TEMP, DTEMP, PREDEF, DPRED, CMNAME,4 NDI, NSHR, NTENS, NSTATV, PROPS, NPROPS, COORDS, DROT, PNEWDT,5 CELENT, DFGRD0, DFGRD1, NOEL, NPT, LAYER, KSPT, JSTEP, KINC)
C *** 声明参数(预设)类型 *******************CINCLUDE 'ABA_PARAM.INC'
C *** **************************CCHARACTER*80 CMNAMEDIMENSION STRESS(NTENS), STATEV(NSTATV), 1 DDSDDE(NTENS,NTENS), DDSDDT(NTENS), DRPLDE(NTENS), 2 STRAN(NTENS), DSTRAN(NTENS), TIME(2), PREDEF(1), DPRED(1),3 PROPS(NPROPS), COORDS(3), DROT(3,3), DFGRD0(3,3), DFGRD1(3,3), 4 JSTEP(4)
C *** 材料模型主程序************C
C 在这里书写高端、大气、上档次的模型代码
C ****************************CRETURNEND SUBROUTINE UMAT
UMAT程序参数分为三类:需定义参数、可更新参数和不可更新参数
需定义参数 \color{blue}需定义参数 需定义参数
- DDSDDE(NTENS,NTENS):DDSDDE为雅可比矩阵,NTENS为材料元素对应的应力/应变的元素个数(如实体单元NTENS=6,壳体单元NTENS=3。
- Abaqus/Standard内定假设并强制DDSDDE为对称矩阵,若想使用非对称材料刚度矩阵,须启用非对称矩阵求解器。
- 在定义频率域黏弹性(viscoelastic)材料行为时,DDSDDE维度为(NTENS,NTENS,2), 其中DDSDDE(NTENS,NTENS,1)存放储存模量,DDSDDE(NTENS,NTENS,2)存放损失模量。
- STRESS(NTENS):STRESS为柯西应力
- STATEV(NSTATV):STATEV为因应计算需求所增加的材料状态变量,可用于储存应力与应变外所有材料状态变量(如塑性应变和应变硬化参数等)
- RPL
- 在热应力分析或热电结构耦合分析时,RPL代表材料运动做功所产生的热功率。
- 静土应力场程序或搭配胶结元素的多孔介质中流体扩散与应力耦合分析时,RPL用于代表材料点所处胶结元素是否允许空隙流体的切线流通过。RPL为0代表没有切线流,反之RPL不为0。
- DDSDDT(NTENS):应力增量对温度增量的变化率
- DRPLDE(NTENS):RPL增量对应变增量的变化率矩阵
- DRPLDT:RPL增量对温度增量的变化率(仅用于热固耦合分析或热电结构耦合分析)
可更新参数 \color{blue}可更新参数 可更新参数
- SSE, SPD, SCD:分别为比弹性应变能、比塑性消散能和比蠕变消散能,此三者只作输出项,不影响分析结果
- PNEWDT:分析步时间增量(DTIME)调整系数,其所相对应的新时间增量值为PNEWDT*DTIME
不可更新参数 \color{blue}不可更新参数 不可更新参数
- STRAN(NTENS):应变
- DSTRAN(NTENS):应变增量(不包含温度应变增量)
- TIME(2):分析步开始时,单一分析流程中经历时间和各分析流程累积经历时间
- DTIME:时间增量
- TEMP:增量步开始时的温度
- DTEMP:温度增量
- PREDEF:增量步开始时,使用者定义的场域变量值
- DPRED:场域变量增量
- CMNAME:材料名称
- NDI:表示应力张量中,主对角线上独立的应力个数。一般实体单元有3个独立分量,平面应力单元为2
- NSHR:用来表示应力张量中,剪切应力部分的独立张量个数,一般实体单元有3个独立分量,平面应力单元有1个独立的剪切分量
- NTENS:为NDI与NSHR之和
- PROPS(NPROSP):用来储存用户定义的材料参数
- NPROPS:用户自定义材料参数个数
- COORDS:材料点坐标,若分析考虑几何非线性,其代表变形后的坐标
- DROT(3,3):刚性和坐标轴的旋转量增量
- CELENT:单元特征长度,使用一阶线性的形状函数时,在一维单元中特征长度为单元长度,在二维单元中为面积平方根,在三维单元中为体积立方根;当使用二阶形状函数时,单元特征长度为一阶时长度的一半
- DFGRD0(3,3):增量步开始时变形梯度矩阵F
- DFGRD1(3,3):增量步结束时变形梯度矩阵F
- NOEL:单元编号
- NPT:材料点编号
- LAYER:复合壳体单元和层状实体单元的夹层编号
- KSPT:材料点对应的断面编号
- JSTEP:分析流程信息,包含四个整数值
- 第一个为分析流程编号
- 第二个为分析流程工作代码
- 第三个指出此分析是否考虑几何非线性,1代表考虑,0代表没考虑
- 第四个指出此分析流程是否为线性扰动相关分析,1代表是,0代表不是
- KINC:增量步数,(不含ABAQUS求解的迭代步数)。
欢迎对Abaqus感兴趣的朋友们查看:Abaqus-UMAT开发精品书籍及umat子程序学习
Abaqus非线性粘弹性模型子程序umat——广义MAXWELL粘弹性模型umat解析(朱-王-唐本构模型)
如果你喜欢以上内容,或者对Abaqus学习有兴趣,欢迎收藏关注,博主将持续更新。你的关注、收藏是我持续创作的动力!
这篇关于ABAQUS用户子程序二次开发——UMAT介绍(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!