18620856065
索 取 报 价
资   讯   中   心

Abaqus从入门到精通(58)用户子程序VUMAT接口及调试

来源: | 作者:thinks | 发布时间: 2024-09-20 | 625 次浏览 | 分享到:

11.2 用户子程序VUMAT接口及调试

ABAQUS有限元分析软件允许用户通过编写子程序的形式来扩展主程序的功能,给用户提供了强大而又灵活的用户子程序接口。ABAQUS的用户子程序是一个独立的程序单元,能独立地存储和编译,也能被其他程序单元引用。因此,子程序可带回大量数据供引用程序使用,亦可以用来完成各种特殊的功能。

 

11.2.1 用户子程序VUMAT接口界面

ABAQUS/Explicit中提供了开放型接口VUMAT供用户来定义所需的材料本构模型。其接口界面如下所示。

 

11.2.2 用户子程序VUMAT的主要参数

1)主程序向子程序传递数据的一维变量。

lnblock:调用VUMAT的材料点个数。

lndir:对称张量如应力、应变张量中直接分量的个数。

lnshr:对称张量如应力、应变张量中剪切分量的个数。

lnstatev:用户定义的状态变量的个数。

lnprops:用户定义的材料常数的个数。

lcmname:存储关键字*MATERIAL中定义的材料名(需大写)。

lRstepTime:单个分析步所用的时间。

ltotalTime:所有分析步总共用的时间。

ldt:时间增量步长。

 

2)主程序向子程序传递数据的变量数组。

lprops:用于存放用户定义的材料属性的数组,数组的长度为nprops。

ldensity:用于存放关键字*DENSITY中定义的材料点当前密度,数组的长度为nblock。

lstrainInc:用于存放材料点处单个增量步的应变增量张量,其中元素的存放顺序为Δε11,Δε22,Δε33,Δε12,Δε23,Δε31。

ldefgradOld/defgradNew:用于存放增量步开始/结束时材料点处的变形梯度,其中元素的存放顺序为F11,F22,F33,F12,F23,F31,F21,F32,F13。

lstretchNew/stretchOld:用于存放增量步开始/结束时材料点处的拉伸张量,其中元素的存放顺序为U11,U22,U33,U12,U23,U31。

lstressOld:用于存放增量步开始时材料点处的应力值,其中元素的存放顺序为σ11,σ22,σ33,σ12,σ23,σ31。

lstateOld:用于存放用户定义的状态变量在增量步开始时的初始值。

 

3)子程序计算向主程序传递数据的变量数组。

lstressNew:用于存放增量步结束时材料点处的应力值,传给主程序中并将其赋给stressOld作为下一个增量步开始时的初始值。

lstateNew:用于存放用户定义的状态变量在增量步结束时的更新值,传给主程序并将其赋给stateOld作为下一个增量步开始时的初始值。

 

11.2.3 用户子程序VUMAT的调试与提交方法

在子程序的调试过程中,通常利用单个单元模型来进行检验,因为它计算量小,输出信息少,便于检查和发现问题,节省调试计算时间。为了提高子程序调试的效率,可以人为给定子程序中需要主程序传递的数据,屏蔽掉“include'vaba.param.inc'”语句,直接在Fortran软件中调试,可以方便地找出明显的语法和计算错误。调试完成后将子程序嵌入ABAQUS单个单元模型进行测试计算,为了发现计算过程中子程序的错误,可以用简单的打开文件和写入语句来输出分析过程中的一些变量的值,如下所示。

 

这样就可以将变量bbb的值输出到文件D0.dat中,注意打开的设备号(unit值)最好大于100,因为前100个设备号往往被ABAQUS占用。另外,unit=6指向ABAQUS输出的STA文件,所以,也可以不打开新的文件直接将变量值输出到STA文件中。

 

子程序的调用方法有以下几种,但必须在ABAQUS的输入文件(INP文件)中的

**MATERIAL模块中使用*USER MATERIAL选项。

 

ABAQUS/Command中提交任务。若用户子程序以文件subroutine.for存放,模型输入文件为model.inp,则可在ABAQUS/Command中使用user选项,如下所示。

 

 abaqus job=model user=subroutine

 

在使用此方法时,subroutine.for与model.inp必须存放在同一目录下,在ABAQUS/Command进入该目录后使用上述命令。

lABAQUS/CAE中Job→Job Manager→Edit job→General→Select下选择子程序提交任务。

l直接在model.inp文件中写入子程序。

 

(内容、图片来源:《ABAQUS 2020有限元分析从入门到精通》,侵删)

 

版权与免责声明:

凡未注明作者、来源的内容均为转载稿,如出现版权问题,请及时联系我们处理。我们对页面中展示内容的真实性、准确性和合法性均不承担任何法律责任。如内容信息对您产生影响,请及时联系我们修改或删除。

 主 营 产 品
cst
Abaqus
Powerflow
Xflow
simpack
CATIA
最 新 内 容
热 门 文 章
知 识 科 普
方 案 解 析
  • 汽车交通
  • 风能电源
  • 船舶机械
  • 生物医疗
  • 土木建筑
  • 新能源
  • 高科技