首页 理论教育ABAQUS有限元子程序USDFLD接口实例

ABAQUS有限元子程序USDFLD接口实例

【摘要】:用户子程序USDFLD是用于Abaqus/Standard中的场变量定义子程序,其具有以下特性:允许将材料点处的场变量定义为时间函数或输出变量标识符表中列出的任何可用的材料点处的量的函数,但用户定义的输出变量UVARM和UVARMn除外。将在材料定义中包含了用户子定义场变量的单元的所有材料点上被调用。可以与用户子程序UFIELD一起使用,以指定预定义的场变量。用户子程序USDFLD的Fortran程序接口如下:下面分别解释子程序的输入输出参数及其意义,这些参数主要分为以下三类。

用户子程序USDFLD是用于Abaqus/Standard中的场变量定义子程序,其具有以下特性:

(1)允许将材料点处的场变量定义为时间函数或输出变量标识符表中列出的任何可用的材料点处的量的函数,但用户定义的输出变量UVARM和UVARMn除外。

(2)可用于引入解相关的材料特性,因为此类特性可以很容易地定义为场变量的函数。

(3)将在材料定义中包含了用户子定义场变量的单元的所有材料点上被调用。

(4)可以调用实用子程序GETVRM访问材料点的数据。

(5)可以使用和更新解依赖的状态变量(SDV)。

(6)可以与用户子程序UFIELD一起使用,以指定预定义的场变量。

用户子程序USDFLD的Fortran程序接口如下:

下面分别解释子程序的输入输出参数及其意义,这些参数主要分为以下三类。(www.chuimin.cn)

1)必须定义和更新的变量

field(nfield):场变量数组,包含了当前积分点上的所有场变量,它们传进来时是有值的,其值是当前增量步开始时节点上值的插值。更新后的场变量的值会传入以下子程序:CREEP,HETVAL,UEXPAN,UHYPEL,UMAT,UMATHT和UTRS。

2)可以定义和更新的变量

statev(nstatv):状态变量数组,包含了所有解依赖的状态变量(SDV),它们传进来时是有值的,其值是当前增量步开始时的状态变量的值。状态变量数组的长度(nstatv)通过关键字*DEPVAR进行设置。

pnewdt:时间比,建议的时间增量与当前使用的时间增量(dtime)的比值,如果该比值为1,则表明建议的时间增量与当前使用的时间增量一致。注意,这个变量的更新可以和ABAQUS输入文件中设置的自动更新时间增量一起使用,并不冲突。

3)只能使用的变量

除了上面提到的三个变量外,其他变量可被使用,但不能被定义和更新,否则会出现错误。