2024年3月21日发(作者:)

25.1.1 User subroutines: overview

Reference

“Execution procedure for ABAQUS/Standard and ABAQUS/Explicit,” Section 3.2.2

Overview

User subroutines: 用户子程序:

are provided to increase the functionality of several ABAQUS capabilities for

which the usual data input methods alone may be too restrictive;

当常用数据输入方法受到限制时,可以用来增强ABAQUS在这些方面的功能;

provide an extremely powerful and flexible tool for analysis;

提供一个完备且灵活的分析工具;

are typically written as FORTRAN code and must be included in a model when you

execute the analysis, as discussed below;

用FORTRAN代码编写,并且当执行分析时必须包含在模型中,下面将详细介绍;

must be included and, if desired, can be revised in a restarted run, since they

are not saved to the restart files (see “Restarting an analysis,” Section

7.1.1);

由于用户子程序不存储在重启动文件中,因此用户子程序必须包含在重启动文件中,

如果需要可以在重启动运行时进行修改;

cannot be called one from another; and

不能够在用户子程序中调用另外一个用户子程序;

can in some cases call utility routines that are also available in ABAQUS (see

“Utility routines: overview,” Section 26.1.1).

在某些情况下可以调用ABAQUS中可以利用的程序

Including user subroutines in a model

在一个模型中包含用户子程序

You can include one or more user subroutines in a model by specifying the name of

a FORTRAN source or object file that contains the subroutines. Details are provided

in “Execution procedure for ABAQUS/Standard and ABAQUS/Explicit,” Section 3.2.2.

用户可以在一个模型中包含一个或几个用户子程序,具体方法是通过指定FORTRAN程序的文

件或者保护用户子程序的目标文件的文件名来实现。

Input File Usage: Enter the following input on the command line:

abaqus job=

job-name

user={

source-file

|

object-file

}

ABAQUS/CAE Usage: Job module: job editor: General: User subroutine file

Managing external databases in ABAQUS/Standard and exchanging information

with other software 在ABAQUS/Standard中管理外部数据库及其与其它软件竞

选信息传递

In ABAQUS/Standard it is sometimes desirable to set up the FORTRAN environment and

manage interactions with external data files that are used in conjunction with user

subroutines. For example, there may be history-dependent quantities to be computed

externally, once per increment, for use during the analysis; or output quantities

that are accumulated over multiple elements in COMMON block variables within user

subroutines may need to be written to external files at the end of a converged

increment for postprocessing. Such operations can be performed with user subroutine

UEXTERNALDB (“UEXTERNALDB,” Section 25.2.21). This user interface can potentially be

used to exchange data with another code, allowing for “stagger” between

ABAQUS/Standard and another code.

在ABAQUS/Standard中有时候需要建立FORTRAN环境来管理用户子程序中使用的外部数据文

件的交换。例如,也许会用到外部计算的随时间变化的量;或者输出量为在用户子程序中

COMMON块变量的多个单元的累积需要在收敛增量结束时输出到外部文件,以便后处理时使用。

这些操作可以通过用户子程序UEXTERNALDB来实现。

Writing a user subroutine 书写一个用户子程序

User subroutines should be written with great care. To ensure their successful

implementation, the rules and guidelines below should be followed.

编写用户子程序要非常小心。为保证它们的成功运行,应该遵守下面的惯例和指导原则:

Required INCLUDE statement

必要的 INCLUDE 声名

Every ABAQUS/Standard user subroutine must include the statement

每一个ABAQUS/Standard用户子程序必须保护声名

include 'aba_'

as the first statement after the argument list.

作为argument列表后的第一个声名。

Every ABAQUS/Explicit user subroutine must include the statement

每个ABAQUS/Explicit用户子程序必须包含声名

include 'vaba_'

as the first statement after the argument list.

作为argument列表后的第一个声名。

If variables are exchanged between the main user subroutine and subsequent

subroutines, the user should specify the above include statement in all the

subroutines to preserve precision.

如果主用户子程序和次用户子程序之间有变量交换,用户应该在所有的用户子程序中指定上

面的include声名以保证计算精度。

The files aba_ and vaba_ are installed on the system by the ABAQUS

installation procedure and contain important installation parameters. These

statements tell the ABAQUS execution procedure, which compiles and links the user

subroutine with the rest of ABAQUS, to include the aba_ or vaba_

file automatically. It is not necessary to find the file and copy it to any particular

directory; ABAQUS will know where to find it.

aba_和vaba_文件被ABAQUS安装程序安装在系统中,其中包含重要的

安装参数。这些声名通知ABAQUS用于在用户子程序和ABAQUS起编译和连接作用的外部程序。

不需要查找和复制这些文件到任何指定目录,ABAQUS会自动查找它。