(3)对于不同的用户子程序ABAQUS调用的时间是不同的,有的是在每个STEP 的开始,有的是STEP的结尾,有的是在每个INCREMENT的开始等等。当ABAQUS 调用用户子程序时,都会把当前的STEP和INCREMENT利用用户子程序的两个实 参KSTEP和KINC传给用户子程序,用户可把它们输出到外部文件中,这样就可清 楚的知道ABAQUS何时调用该用户子程序。
为保证用户子程序的正确执行,子程序的书写必须遵循ABAQUS的相关规定, 下面以用户材料子程序为例详细说明。
3.3. UMAT接口的原理
用户材料子程序(User-defined Material Mechanical Behavior,简称UMAT)是 ABAQUS提供给用户定义自己的材料属性的Fortran程序接口[7][8],使用户能使用 ABAQUS材料库中没有定义的材料模型。用户材料子程序UMAT通过与ABAQUS主求解程序的接口实现与ABAQUS的资料交流。在输入文件中,使用关键词“*USER MATERIAL”表示定义用户材料属性。
UMAT子程序具有强大的功能,使用UMAT子程序:
(1)可以定义材料的本构关系,使用ABAQUS材料库中没有包含的材料进行 计算,扩充程序功能。
(2)几乎可以用于力学行为分析的任何分析过程,几乎可以把用户材料属性赋 予ABAQUS中的任何单元。
(3)必须在UMAT中提供材料本构的雅可比(Jacobian)矩阵,即应力增量对 应变增量的变化率。
由于主程序与UMAT之间存在数据传递,甚至共享一些变量,因此必须遵守有 关UMAT的书写格式,UMAT中常用的变量在文件开头予以定义,通常格式
SUBROUTINE UMAT(STRESS,S