ABAQUS用户子程序二次开发——UMAT介绍(一)

2024-03-07 12:12

本文主要是介绍ABAQUS用户子程序二次开发——UMAT介绍(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

个人专栏—ABAQUS专栏

  1. Abaqus2023的用法教程——与VS2022、oneAPI 2024子程序的关联方法 Abaqus2023的用法教程——与VS2022、oneAPI 2024子程序的关联方法
  2. Abaqus有限元分析——有限元网格划分基本原则 Abaqus有限元分析——有限元网格划分基本原则
  3. 各向同性线弹性材料本构模型umat的应用 各向同性线弹性材料本构模型umat的应用
  4. ABAQUS用户子程序二次开发——UMAT介绍(一) ABAQUS用户子程序二次开发——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介绍(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783469

相关文章

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方

HTML img标签和超链接标签详细介绍

《HTMLimg标签和超链接标签详细介绍》:本文主要介绍了HTML中img标签的使用,包括src属性(指定图片路径)、相对/绝对路径区别、alt替代文本、title提示、宽高控制及边框设置等,详细内容请阅读本文,希望能对你有所帮助... 目录img 标签src 属性alt 属性title 属性width/h

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各