文档库 最新最全的文档下载
当前位置:文档库 › abaqus中UMAT子程序编写方法

abaqus中UMAT子程序编写方法

abaqus中UMAT子程序编写方法
abaqus中UMAT子程序编写方法

UMAT

User subroutine to define a material's mechanical behavior.

Product: Abaqus/Standard

Warning: The use of this subroutine generally requires considerable expertise. You are cautioned that the implementation of any realistic constitutive model requires extensive development and testing. Initial testing on a single-element model with prescribed traction loading is strongly recommended.

References

?“User-defined mechanical material behavior,” Section 25.7.1 of the Abaqus Analysis User's Manual

?“User-defined thermal material behavior,” Section 25.7.2 of the Abaqus Analysis User's Manual

?*USER MATERIAL

?“SDVINI,” Section 4.1.11 of the Abaqus Verification Manual

?“UMAT and UHYPER,” Section 4.1.21 of the Abaqus Verification Manual Overview

User subroutine UMAT:

?can be used to define the mechanical constitutive behavior of a material;

?will be called at all material calculation points of elements for which the material definition includes a user-defined material

behavior;

?can be used with any procedure that includes mechanical behavior;

?can use solution-dependent state variables;

?must update the stresses and solution-dependent state variables to their values at the end of the increment for which it is called;

?must provide the material Jacobian matrix, , for the mechanical constitutive model;

?can be used in conjunction with user subroutine USDFLD to redefine any field variables before they are passed in; and

is described further in “User-defined mechanical material behavior,” Section 25.7.1 of the Abaqus Analysis User's Manual. Storage of stress and strain components

In the stress and strain arrays and in the matrices DDSDDE, DDSDDT, and DRPLDE, direct components are stored first, followed by shear components. There are NDI direct and NSHR engineering shear components. The order of the components is defined in “Conventions,” Section 1.2.2 of the Abaqus Analysis User's Manual. Since the number of active stress and strain components varies between element types, the routine must be coded to provide for all element types with which it will be used.

Defining local orientations

If a local orientation (“Orientations,” Section 2.2.5 of the Abaqus Analysis User's Manual) is used at the same point as user subroutine UMAT, the stress and strain components will be in the local orientation; and, in the case of finite-strain analysis, the basis system in which stress and strain components are stored rotates with the material.

Stability

You should ensure that the integration scheme coded in this routine is stable—no direct provision is made to include a stability limit in the time stepping scheme based on the calculations in UMAT.

Convergence rate

DDSDDE and—for coupled temperature-displacement and coupled

thermal-electrical-structural analyses—DDSDDT, DRPLDE, and DRPLDT must be defined accurately if rapid convergence of the overall Newton scheme is to be achieved. In most cases the accuracy of this definition is the most important factor governing the convergence rate. Since nonsymmetric equation solution is as much as four times as expensive as the corresponding symmetric system, if the constitutive Jacobian (DDSDDE) is only slightly nonsymmetric (for example, a frictional material with a small friction

angle), it may be less expensive computationally to use a symmetric approximation and accept a slower convergence rate.

An incorrect definition of the material Jacobian affects only the convergence rate; the results (if obtained) are unaffected.

Special considerations for various element types

There are several special considerations that need to be noted. Availability of deformation gradient

The deformation gradient is available for solid (continuum) elements, membranes, and finite-strain shells (S3/S3R, S4, S4R, SAXs, and SAXAs). It is not available for beams or small-strain shells. It is stored as a

3 × 3 matrix with component equivalence DFGRD0(I,J) . For fully integrated first-order isoparametric elements (4-node quadrilaterals in two dimensions and 8-node hexahedra in three dimensions) the selectively reduced integration technique is used (also known as the technique). Thus, a modified deformation gradient

is passed into user subroutine UMAT. For more details, see “Solid isoparametric quadrilaterals and hexahedra,” Section 3.2.4 of the Abaqus Theory Manual.

Beams and shells that calculate transverse shear energy

If user subroutine UMAT is used to describe the material of beams or shells that calculate transverse shear energy, you must specify the transverse shear stiffness as part of the beam or shell section definition to define the transverse shear behavior. See “Shell section behavior,” Section 28.6.4 of the Abaqus Analysis User's Manual, and “Choosing a beam element,” Section 28.3.3 of the Abaqus Analysis User's Manual, for information on specifying this stiffness.

Open-section beam elements

When user subroutine UMAT is used to describe the material response of beams with open sections (for example, an I-section), the torsional stiffness is obtained as

where J is the torsional constant, A is the section area, k is a shear factor, and is the user-specified transverse shear stiffness (see “Transverse shear stiffness definition” in “Choosing a beam element,” Section 28.3.3 of the Abaqus Analysis User's Manual).

Elements with hourglassing modes

If this capability is used to describe the material of elements with hourglassing modes, you must define the hourglass stiffness factor for hourglass control based on the total stiffness approach as part of the element section definition. The hourglass stiffness factor is not required for enhanced hourglass control, but you can define a scaling factor for the stiffness associated with the drill degree of freedom (rotation about the surface normal). See “Section controls,” Section 26.1.4 of the Abaqus Analysis User's Manual, for information on specifying the stiffness factor.

Pipe-soil interaction elements

The constitutive behavior of the pipe-soil interaction elements (see “Pipe-soil interaction elements,” Section 31.12.1 of the Abaqus Analysis User's Manual) is defined by the force per unit length caused by relative displacement between two edges of the element. The relative-displacements are available as “strains” (STRAN and DSTRAN). The corresponding forces per unit length must be defined in the STRESS array. The Jacobian matrix defines the variation of force per unit length with respect to relative displacement.

For two-dimensional elements two in-plane components of “stress” and “strain” exist (NTENS=NDI=2, and NSHR=0). For three-dimensional elements three components of “stress” and “strain” exist (NTENS=NDI=3, and NSHR=0).

Large volume changes with geometric nonlinearity

If the material model allows large volume changes and geometric nonlinearity is considered, the exact definition of the consistent Jacobian should be used to ensure rapid convergence. These conditions are most commonly encountered when considering either large elastic strains or pressure-dependent plasticity. In the former case, total-form constitutive equations relating the Cauchy stress to the deformation gradient are commonly used; in the latter case, rate-form constitutive laws are generally used.

For total-form constitutive laws, the exact consistent Jacobian is defined through the variation in Kirchhoff stress:

Here, J is the determinant of the deformation gradient, is the Cauchy stress, is the virtual rate of deformation, and is the virtual spin tensor, defined as

and

For rate-form constitutive laws, the exact consistent Jacobian is given by

Use with incompressible elastic materials

For user-defined incompressible elastic materials, user subroutine UHYPER should be used rather than user subroutine UMAT. In UMAT incompressible materials must be modeled via a penalty method; that is, you must ensure that a finite bulk modulus is used. The bulk modulus should be large enough to model incompressibility sufficiently but small enough to avoid loss of precision. As a general guideline, the bulk modulus should be about

– times the shear modulus. The tangent bulk modulus can be calculated from

If a hybrid element is used with user subroutine UMAT, Abaqus/Standard will replace the pressure stress calculated from your definition of STRESS with that derived from the Lagrange multiplier and will modify the Jacobian appropriately.

For incompressible pressure-sensitive materials the element choice is particularly important when using user subroutine UMAT. In particular, first-order wedge elements should be avoided. For these elements the technique is not used to alter the deformation gradient that is passed into user subroutine UMAT, which increases the risk of volumetric locking.

Increments for which only the Jacobian can be defined

Abaqus/Standard passes zero strain increments into user subroutine UMAT to start the first increment of all the steps and all increments of steps for which you have suppressed extrapolation (see “Procedures: overview,” Section 6.1.1 of the Abaqus Analysis User's Manual). In this case you can define only the Jacobian (DDSDDE).

Utility routines

Several utility routines may help in coding user subroutine UMAT. Their functions include determining stress invariants for a stress tensor and calculating principal values and directions for stress or strain tensors. These utility routines are discussed in detail in “Obtaining stress invariants, principal stress/strain values and directions, and rotating tensors in an Abaqus/Standard analysis,” Section 2.1.11.

User subroutine interface

SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,

1 RPL,DDSDDT,DRPLDE,DRPLDT,

2 STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,

3 NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,

4 CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)

C

INCLUDE 'ABA_PARAM.INC'

C

CHARACTER*80 CMNAME

DIMENSION 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)

user coding to define DDSDDE, STRESS, STATEV, SSE, SPD, SCD

and, if necessary, RPL, DDSDDT, DRPLDE, DRPLDT, PNEWDT

RETURN

END

Variables to be defined

In all situations

DDSDDE(NTENS,NTENS)

Jacobian matrix of the constitutive model, , where are the

stress increments and are the strain increments. DDSDDE(I,J) defines the change in the Ith stress component at the end of the time increment caused by an infinitesimal perturbation of the Jth component of the strain increment array. Unless you invoke the unsymmetric equation solution capability for the user-defined material, Abaqus/Standard will use only the symmetric part of DDSDDE. The symmetric part of the matrix is calculated by taking one half the sum of the matrix and its transpose.

STRESS(NTENS)

This array is passed in as the stress tensor at the beginning of the increment and must be updated in this routine to be the stress tensor at the end of the increment. If you specified initial stresses (“Initial conditions in Abaqus/Standard and Abaqus/Explicit,” Section 32.2.1 of the Abaqus Analysis User's Manual), this array will contain the initial stresses at the start of the analysis. The size of this array depends on the value of NTENS as defined below. In finite-strain problems the stress tensor has already been rotated to account for rigid body motion in the

increment before UMAT is called, so that only the corotational part of the stress integration should be done in UMAT. The measure of stress used is “true” (Cauchy) stress.

STATEV(NSTATV)

An array containing the solution-dependent state variables. These are passed in as the values at the beginning of the increment unless they are updated in user subroutines USDFLD or UEXPAN, in which case the updated values are passed in. In all cases STATEV must be returned as the values at the end of the increment. The size of the array is defined as described in “Allocating space” in “User subroutines: overview,” Section 17.1.1 of the Abaqus Analysis User's Manual.

In finite-strain problems any vector-valued or tensor-valued state variables must be rotated to account for rigid body motion of the material, in addition to any update in the values associated with constitutive behavior. The rotation increment matrix, DROT, is provided for this purpose.

SSE, SPD, SCD

Specific elastic strain energy, plastic dissipation, and “creep” dissipation, respectively. These are passed in as the values at the start of the increment and should be updated to the corresponding specific energy values at the end of the increment. They have no effect on the solution, except that they are used for energy output.

Only in a fully coupled thermal-stress or a coupled

thermal-electrical-structural analysis

RPL

Volumetric heat generation per unit time at the end of the increment caused by mechanical working of the material.

DDSDDT(NTENS)

Variation of the stress increments with respect to the temperature.

DRPLDE(NTENS)

Variation of RPL with respect to the strain increments.

DRPLDT

Variation of RPL with respect to the temperature.

Only in a geostatic stress procedure or a coupled pore fluid

diffusion/stress analysis for pore pressure cohesive elements

RPL

RPL is used to indicate whether or not a cohesive element is open to the tangential flow of pore fluid. Set RPL equal to 0 if there is no tangential flow; otherwise, assign a nonzero value to RPL if an element is open. Once opened, a cohesive element will remain open to the fluid flow.

Variable that can be updated

PNEWDT

Ratio of suggested new time increment to the time increment being used (DTIME, see discussion later in this section). This variable allows you to provide input to the automatic time incrementation algorithms in Abaqus/Standard (if automatic time incrementation is chosen). For a quasi-static procedure the automatic time stepping that Abaqus/Standard uses, which is based on techniques for integrating standard creep laws (see “Quasi-static analysis,” Section 6.2.5 of the Abaqus Analysis User's Manual), cannot be controlled from within the UMAT subroutine.

PNEWDT is set to a large value before each call to UMAT.

If PNEWDT is redefined to be less than 1.0, Abaqus/Standard must abandon the time increment and attempt it again with a smaller time increment. The suggested new time increment provided to the automatic time integration algorithms is PNEWDT × DTIME, where t he PNEWDT used is the minimum value for all calls to user subroutines that allow redefinition of PNEWDT for this iteration.

If PNEWDT is given a value that is greater than 1.0 for all calls to user subroutines for this iteration and the increment converges in this iteration, Abaqus/Standard may increase the time increment. The suggested new time increment provided to the automatic time integration algorithms is PNEWDT × DTIME, where the PNEWDT used is the minimum value for all calls to user subroutines for this iteration.

If automatic time incrementation is not selected in the analysis procedure, values of PNEWDT that are greater than 1.0 will be ignored and values of PNEWDT that are less than 1.0 will cause the job to terminate.

Variables passed in for information

STRAN(NTENS)

An array containing the total strains at the beginning of the increment. If thermal expansion is included in the same material definition, the strains passed into UMAT are the mechanical strains only (that is, the thermal strains computed based upon the thermal expansion coefficient have been subtracted from the total strains). These strains are available for output as the “elastic” strains.

In finite-strain problems the strain components have been rotated to account for rigid body motion in the increment before UMAT is called and are approximations to logarithmic strain.

DSTRAN(NTENS)

Array of strain increments. If thermal expansion is included in the same material definition, these are the mechanical strain increments (the total strain increments minus the thermal strain increments).

TIME(1)

Value of step time at the beginning of the current increment.

TIME(2)

Value of total time at the beginning of the current increment.

DTIME

Time increment.

TEMP

Temperature at the start of the increment.

DTEMP

Increment of temperature.

PREDEF

Array of interpolated values of predefined field variables at this point at the start of the increment, based on the values read in at the nodes.

DPRED

Array of increments of predefined field variables.

CMNAME

User-defined material name, left justified. Some internal material models are given names starting with the “ABQ_” character string. To avoid conflict, you should not use “ABQ_” as the leading string for CMNAME.

NDI

Number of direct stress components at this point.

NSHR

Number of engineering shear stress components at this point.

NTENS

Size of the stress or strain component array (NDI + NSHR).

NSTATV

Number of solution-dependent state variables that are associated with this material type (defined as described in “Allocating space” in “User subroutines: overview,” Section 17.1.1 of the Abaqus Analysis User's Manual).

PROPS(NPROPS)

User-specified array of material constants associated with this user material.

NPROPS

User-defined number of material constants associated with this user material.

COORDS

An array containing the coordinates of this point. These are the current coordinates if geometric nonlinearity is accounted for during the step (see “Procedures: overview,” Section 6.1.1 of the Abaqus Analysis User's Manual); otherwise, the array contains the original coordinates of the point.

DROT(3,3)

Rotation increment matrix. This matrix represents the increment of rigid body rotation of the basis system in which the components of stress (STRESS) and strain (STRAN) are stored. It is provided so that vector- or

tensor-valued state variables can be rotated appropriately in this subroutine: stress and strain components are already rotated by this amount before UMAT is called. This matrix is passed in as a unit matrix for small-displacement analysis and for large-displacement analysis if the basis system for the material point rotates with the material (as in a shell element or when a local orientation is used).

CELENT

Characteristic element length, which is a typical length of a line across an element for a first-order element; it is half of the same typical length for a second-order element. For beams and trusses it is a characteristic length along the element axis. For membranes and shells it is a characteristic length in the reference surface. For axisymmetric elements

it is a characteristic length in the plane only. For cohesive elements

it is equal to the constitutive thickness.

DFGRD0(3,3)

Array containing the deformation gradient at the beginning of the increment. If a local orientation is defined at the material point, the deformation gradient components are expressed in the local coordinate system defined by the orientation at the beginning of the increment. For a discussion regarding the availability of the deformation gradient for various element types, see “Availability of deformation gradient.”

DFGRD1(3,3)

Array containing the deformation gradient at the end of the increment. If a local orientation is defined at the material point, the deformation gradient components are expressed in the local coordinate system defined by the orientation. This array is set to the identity matrix if nonlinear geometric effects are not included in the step definition associated with

this increment. For a discussion regarding the availability of the deformation gradient for various element types, see “Availability of deformation gradient.”

NOEL

Element number.

NPT

Integration point number.

LAYER

Layer number (for composite shells and layered solids).

KSPT

Section point number within the current layer.

KSTEP

Step number.

KINC

Increment number.

Example: Using more than one user-defined mechanical material model

To use more than one user-defined mechanical material model, the variable CMNAME can be tested for different material names inside user subroutine UMAT as illustrated below:

IF (CMNAME(1:4) .EQ. 'MAT1') THEN

CALL UMAT_MAT1(argument_list)

ELSE IF(CMNAME(1:4) .EQ. 'MAT2') THEN

CALL UMAT_MAT2(argument_list)

END IF

UMAT_MAT1 and UMAT_MAT2 are the actual user material subroutines containing the constitutive material models for each material MAT1 and MAT2, respectively. Subroutine UMAT merely acts as a directory here. The argument list may be the same as that used in subroutine UMAT.

Example: Simple linear viscoelastic material

As a simple example of the coding of user subroutine UMAT, consider the linear, viscoelastic model shown in Figure 1.1.40–1. Although this is not a very useful model for real materials, it serves to illustrate how to code the routine.

Figure 1.1.40–1 Simple linear viscoelastic model.

The behavior of the one-dimensional model shown in the figure is

where and are the time rates of change of stress and strain. This can be generalized for small straining of an isotropic solid as

and

where

and , , , , and are material constants ( and are the Lamé constants).

A simple, stable integration operator for this equation is the central difference operator:

where f is some function, is its value at the beginning of the increment,

is the change in the function over the increment, and is the time

increment.

Applying this to the rate constitutive equations above gives

and

so that the Jacobian matrix has the terms

and

The total change in specific energy in an increment for this material is

while the change in specific elastic strain energy is

where D is the elasticity matrix:

No state variables are needed for this material, so the allocation of space for them is not necessary. In a more realistic case a set of parallel models of this type might be used, and the stress components in each model might be stored as state variables.

For our simple case a user material definition can be used to read in the five constants in the order , , , , and so that

The routine can then be coded as follows:

SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,

1 RPL,DDSDDT,DRPLDE,DRPLDT,

2 STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,

3 NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,

4 CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)

C

INCLUDE 'ABA_PARAM.INC'

C

CHARACTER*80 CMNAME

DIMENSION STRESS(NTENS),STATEV(NSTATV),

1 DDSDDE(NTENS,NTENS),

2 DDSDDT(NTENS),DRPLDE(NTENS),

3 STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),

4 PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3) DIMENSION DSTRES(6),D(3,3)

C

C EVALUATE NEW STRESS TENSOR

C

EV = 0.

DEV = 0.

DO K1=1,NDI

EV = EV + STRAN(K1)

DEV = DEV + DSTRAN(K1)

END DO

C

TERM1 = .5*DTIME + PROPS(5)

TERM1I = 1./TERM1

TERM2 = (.5*DTIME*PROPS(1)+PROPS(3))*TERM1I*DEV

TERM3 = (DTIME*PROPS(2)+2.*PROPS(4))*TERM1I

C

DO K1=1,NDI

DSTRES(K1) = TERM2+TERM3*DSTRAN(K1)

1 +DTIME*TERM1I*(PROPS(1)*EV

2 +2.*PROPS(2)*STRAN(K1)-STRESS(K1))

STRESS(K1) = STRESS(K1) + DSTRES(K1)

END DO

C

TERM2 = (.5*DTIME*PROPS(2) + PROPS(4))*TERM1I

I1 = NDI

DO K1=1,NSHR

I1 = I1+1

DSTRES(I1) = TERM2*DSTRAN(I1)+

1 DTIME*TERM1I*(PROPS(2)*STRAN(I1)-STRESS(I1))

STRESS(I1) = STRESS(I1)+DSTRES(I1)

END DO

C

C CREATE NEW JACOBIAN

C

TERM2 = (DTIME*(.5*PROPS(1)+PROPS(2))+PROPS(3)+

1 2.*PROPS(4))*TERM1I

TERM3 = (.5*DTIME*PROPS(1)+PROPS(3))*TERM1I

DO K1=1,NTENS

DO K2=1,NTENS

DDSDDE(K2,K1) = 0.

END DO

END DO

C

DO K1=1,NDI

DDSDDE(K1,K1) = TERM2

END DO

C

DO K1=2,NDI

N2 = K1–1

DO K2=1,N2

DDSDDE(K2,K1) = TERM3

DDSDDE(K1,K2) = TERM3

END DO

END DO

TERM2 = (.5*DTIME*PROPS(2)+PROPS(4))*TERM1I

I1 = NDI

DO K1=1,NSHR

I1 = I1+1

DDSDDE(I1,I1) = TERM2

END DO

C

C TOTAL CHANGE IN SPECIFIC ENERGY

C

TDE = 0.

DO K1=1,NTENS

TDE = TDE + (STRESS(K1)-.5*DSTRES(K1))*DSTRAN(K1) END DO

C

C CHANGE IN SPECIFIC ELASTIC STRAIN ENERGY

C

TERM1 = PROPS(1) + 2.*PROPS(2)

DO K1=1,NDI

D(K1,K1) = TERM1

END DO

DO K1=2,NDI

N2 = K1-1

DO K2=1,N2

D(K1,K2) = PROPS(1)

D(K2,K1) = PROPS(1)

END DO

END DO

DEE = 0.

DO K1=1,NDI

TERM1 = 0.

TERM2 = 0.

DO K2=1,NDI

TERM1 = TERM1 + D(K1,K2)*STRAN(K2)

TERM2 = TERM2 + D(K1,K2)*DSTRAN(K2)

END DO

DEE = DEE + (TERM1+.5*TERM2)*DSTRAN(K1)

END DO

I1 = NDI

DO K1=1,NSHR

I1 = I1+1

DEE = DEE + PROPS(2)*(STRAN(I1)+.5*DSTRAN(I1))*DSTRAN(I1) END DO

SSE = SSE + DEE

SCD = SCD + TDE – DEE

RETURN

END

abaqus安装说明

闲话不说,直接上链接 https://www.wendangku.net/doc/9514366510.html,/s/122MWa abaqus 6.13对操作系统的新要求: 自abaqus 6.13版本开始,将不再支持windows 的32位操作平台; 同时,也不再支持windows xp和 windows vista操作系统; 安装: 1. Run "Install Abagus Product & Licensing" 2. In SIMULIA FLEXnet License Server window select "Just install the license utilities" NOTE: If you already have SIMULIA FLEXnet License Server for ABAQUS 6.12-3 installed and running you can use it for 6.13-1 too 3. After finishing License Utilities setup copy files "ABAQUS.lic" and "ABAQUS.log" to (by default C:\SIMULIA\License\) 4. Configure and run SIMULIA FLEXnet License Server as service 4.1. Run lmtools.exe 4.2. On "Servise/License File" tab select "Configuration using Services" 4.3. On "Config Service" tab input the new Service Name (for example: SIMULIA FLEXnet License Server) 4.4. Browse to "lmgrd.exe", "ABAQUS.lic" and "ABAQUS.log" files 4. 5. Select "Use Service" and "Start Server at Power Up", click "Save Service" 4.6. On "Start/Stop/ReRead" tab click "Start Server" 4.7. Close lmtools do not pay attention warning the license file you have selected is not valid for this machine? continue 5. For ABAQUS "Installation type" window select "SIMULIA FLEXnet License Server" 6. In "License Server" window input for "License server1 (REQUIRED)" 27011@ there mast be the name of computer with SIMULIA FLEXnet License Server server installed 7. Continue and finish setup 8. Enjoy 简单翻译一下: 1.运行setup.exe,在安装服务器窗口选择 "Just install the license utilities",安装好后先不要点”安装产品“窗口的下一步,先配置 lmtools.exe; 2.复制文件 "ABAQUS.lic" and "ABAQUS.log"到安装目录(默认是 C:\SIMULIA\License\); 3.运行 lmtools.exe,在 "Configuration using Services"页选择三个文件"lmgrd.exe", "ABAQUS.lic" 和"ABAQUS.log",勾选 "Use Service" 和 "Start Server at Power Up", 点击 "Save Service"保存,切换至 "Start/Stop/ReRead"

ABAQUS中Fortran子程序调用方法

第一种方法: / o/ J5 @6 U/ ^- o$ 1. 建立工作目录/ ]" 2. 将Abaqus安装目录\6.4-pr11\site下的aba_param_dp.inc或aba_param_sp.inc拷贝到工作目录,并改名为aba_param.inc; # ~/ |0 I0 E6 {, @4 X3 q: W3. 将编译的fortran程序拷贝到工作目录; 4. 将.obj文件拷贝到工作目录; 5. 建立好输入文件.inp; 6. 运行abaqusjob=inp_name user=fortran name即可。 第二种方法: 在Job模块里,创建工作,在EditJob对话框中选择General选项卡,在Usersubroutine file中点击Select 按钮,从弹出对话框中选择你要调用的子程序文件(后缀为.for或.f)。 , D8 i7 d/r c6 @" | 以下是网上摘录的资料,供参考:. |$ t/ }$W7 Y6 m4 h6 D6 j 用户进行二次开发时,要在命令行窗口执行下面的命令: 4 O. R+ ^,@( ? abaqus job=job_name user=sub_name ABAQUS会把用户的源程序编译成obj文件,然后临时生成一个静态库standardU.lib和动态库standardU.dll,还有其它一些临时文件,而它的主程序(如standard.exe和explicit.exe等)则没有任何改变,由此看来ABAQUS是通过加载上述2个库文件来实现对用户程序的连接,而一旦运行结束则删除所有的临时文件。这种运行机制与ANSYS、LS-DYNA、marc等都不同。 : j6 g' R-o( {0 [* N2 J3 X这些生成的临时文件要到文件夹C:\Documentsand Settings\Administrator\Local Settings\Temp\中才能找到,这也是6楼所说的藏了一些工作吧,大家不妨试一下。 1子程序格式(程序后缀是.f; .f90; .for;.obj??) 答:我试过,.for格是应该是不可以的,至少6.2和6.3版本应该是不行,其他的没用过,没有发言权。在Abaqus中,运行abaqusj=jobname user=username时,默认的用户子程序后缀名是.for(.f,.f90应该都不行的,手册上也有讲过),只有在username.for文件没有找到的情况下,才会去搜索username.obj,如果两者都没有,就会报错误信息。 如果username包括扩展名for或obj,那么就根据各自的扩展名ABAQUS会自动选择进行操作。 2CAE中如何调用?Command下如何调用? 答:CAE中在creat job的jobmanager中的general中可以指定子程序; Command下用命令:abaqus j=jobnameuser=userfilename (无后缀); 3若有多个子程序同时存在,如何处理 答:将其写在一个文件中即可,然后用一个总的子程序调用(具体参见手册) 4我对VF不是很熟,是否可以用VC,C++编写子程序? A: 若要在vf中调试,那么应该根据需要把SITE文件夹中的ABA_PARAM_DP.INC(双精度)或ABA_PARAM_SP.INC(单精度)拷到相应的位置,并改名为ABA_PARAM.INC即可。 据说6.4的将可以,6.3的你可以尝试着将VC,C++程序编译为obj文件,没试过。在你的工作目录下应该已经存在ufield.obj和uvarm.obj这两个文件(这两个文件应该是你分别单独调试ufield.FOR和uvarm.FOR时自动编译生成的,你可以将他们删掉试试看),但是由于你的FOR文件中已经有了UV ARM 和UFIELD这两个subroutine,显然会造成重复定义,请查实。 用户子程序的使用 假设你的输入文件为:a.inp b.for 那么在ABAQUS Command 中的命令应该是这样的: abaqusjob=a user=b

超详细Abaqus安装教程

超详细A b a q u s安装教 程 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

Abaqus2017 安装教程 将安装镜像加载至虚拟光驱 以管理员身份运行J:\1下的,保持默认点击下一步。 首先安装的是拓展产品文档,点击“下一步”,选择安装目标,并点击“下一步” 选择文档需要包含的部件,并点击“下一步” 提示程序安装信息足够,点击“安装” 提示SIMULIA 2017文档安装成功,点击“关闭”。 接着会自动弹出Abaqus Simulation Services,修改安装目标地址,并点击“下一步” 选择您需要的部件,并点击“下一步” 检测安装信息足够,点击“安装”, 提示安装成功够点击“关闭” 接来下会自动安装Abaqus Simulation Services CAA API,点击“下一步”, 选择您需要的安装的部件,点击下一步 安装完成后“关闭” 接下来是自动安装 Abaqus CAE 找到安装包里的_SolidSQUAD_文件夹,将里面的License文件复制到Abaqus安装目录里的SIMULIA文件夹里。然后打开License文件夹,改.lic许可证文件的计算机名,同时再新建一个.log日志文件。 粘贴到D:\SIMULIA 下 在License下新建一个文本文档,重命名为 用记事本打开 使用计算机名替换this_host 保存后退出。 以管理员方式打开,点击Config Services,按如下配置 点击Save Service。切换到Start/Stop/Reread选项卡,点击Stop Server,再点击Start Server。下面提示Server Start Successful则配置成功。关闭窗口。 回到Abaqus CAE的安装界面。 在License Server 1 中输入27011@DESKTOP-Q8CNNLR 注:DESKTOP- Q8CNNLR 是计算机的用户名。点击下一步。 点击下一步 修改目录,点击下一步 设置工作空间路径,建议选择较大的硬盘分区。点击“下一步” 信息确认无误开始安装。 点击Continue 提示Abaqus CAE安装完成,点击关闭。 下面是Tosca 2017的安装。根据需求选择安装。 根据需求选择接口 若安装按ANSA可选择路径,没有则直接下一步。 若没有安装Fluent ,取消勾选FLUENT 剩下步骤类似上面。最后点击安装。 最后是 Isight 2017的安装。步骤后之前相同,一直点下一步记忆可以了

ABAQUS子程序

Home 浅谈ABAQUS用户子程序 李青清华大学工程力学系 摘要本文首先概要介绍了ABAQUS的用户子程序和应用程序,然后从参数,功能两方面详细论述了DLOAD, UEXTERNALDB, URDFIL三个用户子程序和GETENVVAR,POSFIL,DBFILE三个应用程序,并详细介绍了ABAQUS的结果文件(.FIL)存储格式。 关键字ABAQUS,用户子程序,应用程序,结果文件 一、前言: ABAQUS为用户提供了强大而又灵活的用户子程序接口(USER SUBROUTINE)和应用程序接口(UTILITY ROUTINE)。ABAQUS 6.2.5一共有42个用户子程序接口,13个应用程序接口,用户可以定义包括边界条件、荷载条件、接触条件、材料特性以及利用用户子程序和其它应用软件进行数据交换等等。这些用户子程序接口使用户解决一些问题时有很大的灵活性,同时大大的扩充了ABAQUS的功能。例如:如果荷载条件是时间的函数,这在ABAQUS/CAE 和INPUT 文件中是难以实现的,但在用户子程序DLOAD中就很容易实现。 二.在ABAQUS中使用用户子程序 ABAQUS的用户子程序是根据ABAQUS提供的相应接口,按照FORTRAN语法用户自己编写的代码。在一个算例中,用户可以用到多个用户子程序,但必须把它们放在一个以.FOR为扩展名的文件中。运行带有用户子程序的算例时有两种方法,一是在CAE中运行,在EDIT JOB菜单的GENERAL子菜单的USER SUBROUTINE FILE对话框中选择用户子程序所在的文件即可;另外是在ABABQUS COMMAND用运行,语法如下: ABAQUS JOB=[JOB] USER?[.FOR]?C 用户在编写用户子程序时,要注意以下几点: 1.用户子程序不能嵌套。即任何用户子程序都不能调用任何其他用户子程

ABAQUS用户子程序

当用到某个用户子程序时,用户所关心的主要有两方面:一是ABAQUS提供的用户子程序的接口参数。有些参数是ABAQUS传到用户子程序中的,例如SUBROUTINE DLOAD中的KSTEP,KINC,COORDS;有些是需要用户自己定义的,例如F。二是ABAQUS何时调用该用户子程序,对于不同的用户子程序ABAQUS调用的时间是不同的。有些是在每个STEP的开始,有的是STEP结尾,有的是在每个INCREMENT的开始等等。当ABAQUS 调用用户子程序是,都会把当前的STEP和INCREMENT利用用户子程序的两个实参KSTEP和KINC传给用户子程序,用户可编个小程序把它们输出到外部文件中,这样对ABAQUS何时调用该用户子程序就会有更深的了解。 (子程序中很重要的就是要知道由abaqus提供的那些参量的意义,如下) 首先介绍几个子程序: 一.SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS, JLTYP,SNAME) 参数: 1.F为用户定义的是每个积分点所作用的荷载的大小; 2.KSTEP,KINC为ABAQUS传到用户子程序当前的STEP和INCREMENT值;3.TIME(1),TIME(2)为当前STEP TIME和INCREMENT TIME的值;4.NOEL,NPT为积分点所在单元的编号和积分点的编号; 5.COORDS为当前积分点的坐标; 6.除F外,所有参数的值都是ABAQUS传到用户子程序中的。 功能: 1.荷载可以被定义为积分点坐标、时间、单元编号和单元节点编号的函数。 2.用户可以从其他程序的结果文件中进行相关操作来定义积分点F的大小。 例1:这个例子在每个积分点施加的荷载不仅是坐标的函数,而且是随STEP变化而变化的。SUBROUTINE DLOAD(P,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS, 1 JLTYP,SNAME) INCLUDE 'ABA_PARAM.INC' C DIMENSION TIME(2),COORDS(3) CHARACTER*80 SNAME PARAMETER (PLOAD=100.E4) IF (KSTEP.EQ.1) THEN !当STEP=1时的荷载大小 P=PLOAD ELSE IF (KSTEP.EQ.2) THEN !当STEP=2时的荷载大小 P=COORDS(1)*PLOAD !施加在积分点的荷载P是坐标的函数 ELSE IF (KSTEP.EQ.3) THEN !当STEP=3时的荷载大小 P=COORDS(1)**2*PLOAD ELSE IF (KSTEP.EQ.4) THEN !当STEP=4时的荷载大小 P=COORDS(1)**3*PLOAD ELSE IF (KSTEP.EQ.5) THEN !当STEP=5时的荷载大小 P=COORDS(1)**4*PLOAD END IF RETURN END UMAT 子程序具有强大的功能,使用UMAT 子程序: (1) 可以定义材料的本构关系,使用ABAQUS 材料库中没有包含的材料进行计算,扩

abaqus简单umat子程序

SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,RPL,DDSDDT, 1 DRPLDE,DRPLDT,STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED, 2 CMNAME,NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT, 3 PNEWDT,CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC) include 'aba_param.inc' CHARACTER*8 CMNAME DIMENSION STRESS(NTENS),STATEV(NSTATV),DDSDDE(NTENS,NTENS), 1 DDSDDT(NTENS),DRPLDE(NTENS),STRAN(NTENS),DSTRAN(NTENS), 2 TIME(2),PREDEF(1),DPRED(1),PROPS(NPROPS),COORDS(3),DROT(3,3), 3 DFGRD0(3,3),DFGRD1(3,3) C UMAT FOR ISOTROPIC ELASTICITY C CANNOT BE USE D FOR PLAN E STRESS C ---------------------------------------------------------------- C PROPS(1) - E C PROPS(2) - NU C ---------------------------------------------------------------- C IF (NDI.NE.3) THEN WRITE (*,*) 'THIS UMAT MAY ONLY BE USED FOR ELEMENTS 1 WITH THREE DIRECT STRESS COMPONENTS' CALL XIT ENDIF open(400,file='D:\test.txt') C ELASTIC PROPERTIES EMOD=PROPS(1) ENU=PROPS(2) EBULK3=EMOD/(1-2*ENU) EG2=EMOD/(1+ENU) EG=EG2/2 EG3=3*EG ELAM=(EBULK3-EG2)/3 write(400,*) 'temp=',temp C ELASTIC STIFFNESS C DO K1=1, NDI DO K2=1, NDI DDSDDE(K2, K1)=ELAM END DO DDSDDE(K1, K1)=EG2+ELAM

abaqus安装方法详解

***防火墙英文存放位置及安装路径,系统组件…… 第一部分Abaqus的安装问题(不含子程序) 1)用虚拟光驱加载DVD2,安装Document,直接运行根目录下的setup.exe 即可,安装过程比较简单。 (完成1后不要急着安装啊!因为你需要做一些事情来使得你的电脑可以破解abaqus。做什么呢!需要做两项,分别是: 1.1.设置一个环境变量,变量名为:LM_LICENSE_FILE;变量值为:27011@127.0.0.1。 这个时候有人会问,这是咋回事啊!因该是27011@自己的电脑名称。 我要告诉你这个127.0.0.1就是指你的电脑。所以不用再写你的电脑名字了,要是万一你的电脑名字是汉语的,那么还不好使呢! 这个步骤的目的在于在你的电脑里面建立了一个解码系统,可以明目张胆地使用abaqus。 1.2.修改abaqus安装盘中SHooTERS文件夹中的abaqus69.dat,打开它,将“this_host”修改为127.0.0.1。保存。) 根据个人安装经验,上述方法有时可能会失效,自己调整如下。 因为我下载的版本的license文件第一行为:SERVER THIS_host ID=20111111 27011 而不是SERVER THIS_host ID=20111111 27003 第4步:变量名LM_LICENSE_FILE,值为27011@hostname (hostname为你的计算机名字) 第8步:27003@hostname 更改为27011@hostname (hostname为你的计算机名字) 2)设置环境变量:鼠标右键点击桌面“我的电脑”图标,通过路径“属性->高级->环境变量”,然后在系统变量栏新建一个环境变量,变量名LM_LICENSE_FILE,值为27011@hostname。(以前版本的为27003等现为27011,hostname为你的计算机名) 3)用虚拟光驱加载DVD1,先安装License,运行 X:\win86_32\license\Windows\Disk1\InstData\VM\install.exe。安装过程中可能需要输入你的计算机名,一般上一步环境变量设置好了就不用输入了,安装时选择“just install the licenseing utilities”。注意:如果你的计算机上还装有abaqus 的其他版本,6.10版本的license可能会与低版本的发生冲突,导致无法安装第7步的product,所以需要把其他版本的license停掉,这样就可以了;我是讲6.8完全卸载之后再安装的6.10。 (中间选择Abaqus web server,很快安装好后,最后得画面会出现一个URL,例如http:// hostname:2080/v6.9/。需要拷贝一下,或者抄写下来。)

abaqus子程序安装方法

ABAQUS6.9 用户子程序全部通过的安装方法 ABAQUS6.9子程序全部通过的安装方法 “Abaqus6.9”+ “Microsoft Visual C++ 2005 Express” + “Intel Fortran10.1”! 参考许多前人经验和帖子,整理出本文,共分三部分介绍: 第一部分:不使用子程序的用户按此即可完成ABAQUS安装; 第二部分:需使用子程序的用户,先按第一部分安装,再按第二部分安装; 最后一部分结合自己的实践谈几点注意的事项。 第一部分Abaqus6.9的安装步骤 1、建议安装顺序为:先DVD2, 再DVD1中的lisence. (因为安装DVD1 product 时,需要一个安装好html document的地址)。 2、先安装DVD2, (要输入计算机名hostname),最后得画面会出现一个URL,需要记下来。(我的是http://xumeng861:2080/v6.9) 3、鼠标右键点击桌面“我的电脑”图标,通过路径“属性->高级->环境变量”(环境变量分为用户变量和系统变量两种),然后在系统变量栏新建一个系统变量,变量名 LM_LICENSE_FILE,值为27003@hostname (例如:27003@xumeng861)。 4、再打开DVD1,安装license,在安装DVD1的时候,会选择安装license还是product. 第一步先选择license,(对于常用的win 7系统,打开安装文件的文件夹,假设虚拟光盘为F盘,则F:\ABAQUS6.9\win86_32\license\Windows\Disk1\InstData\VM\install..exe, 应用兼容模式运行--- 即右击install.exe—属性--兼容性—勾选“以兼容模式运行这个程序”—选择windows XP (service Pack 3)。)在安装好之后,进行license设置。 5、打开DVD1,然后打开SHOOTERS文件夹,将abaqus69.dat文件用记事本打开,"this_host" 替换为计算机名,改好的文件另存为硬盘C:\SIMULIA\License\license.dat(把abaqus69.dat改为license.dat似乎也影响到子程序通过) 6、在开始-程序菜单中运行Abaqus licensing/Licensing utilities, 并设置: 进入config service选项卡- Service name 中输入Flexlm Service 1(名字可以随意输入) - Path to the lmgrd.exe file:C:\SIMULIA\License\lmgrd.exe; - Path to the license file:C:\SIMULIA\License\license.dat (注:步骤5中建立好的文件)

配置abaqus子程序的方法

安装VS+IVF+ABAQUS 第一步:::找到IVF初始化文件及其绝对路径(X:\是所在盘符,x是IVF版本相关的数字) IVF 10.x都是X:\...\Intel\Compiler\10.x\xxx\bin\ifortvars.bat IVF 11.x32位系 统是X:\...\Intel\Compiler\11.x\xxx\bin\ia32\ifortvars_ia32.bat intel64位系统 是X:\...\Intel\Compiler\11.x\xxx\bin\intel64\ifortvars_intel64.bat (注意64位是分intel64位和AMD64位,根据机器情况选择软件版本,Abaqus 也是如此,我只用过所以也只讨论intel64) 再找到已安装的Abaqus所在文件夹下的Commands文件夹中的 abq6XXX.bat文件,右键编辑打开它,在@echo off下插入下面这行命令(以32位系统IVF11.x为例) @call "X:\...\Intel\Compiler\11.x\xxx\bin\ia32\ifortvars_ia32.bat" 保存关闭abq6XXX.bat文件。 第二步::在开始菜单的Abaqus文件夹中找到Abaqus Verification快捷方式,点击它进行验证。 我的配置:VS2013+IVF2013 SP1 update3+ABAQUS 6.14.1 将aba6141.bat 文件中改为:

@echo off call "C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin\ifortvars.bat" intel64 vs2013 "G:\SIMULIA\Abaqus\6.14-1\code\bin\abq6141.exe" %*

ABAQUS安装及汉化方法

统:Windows 7(32位系统)ABAQUS版本:6.9.3(DVD1为安装文件2.4G,DVD2为帮助文件1.8G)准备工作:1.由于安装文件为DVD格式,可下载并安装软件daemon_tools (DTLite4356-0091),直接打开DVD1,2 2.将License.dat用记事本打开,this_host改为本机系统:Windows 7(32位系统) 准备工作: 1.由于安装文件为DVD格式,可下载并安装软件daemon_tools (DTLite4356-0091),直接打开DVD1,2 2.将License.dat用记事本打开,this_host改为本机计算名(计算机属性,在“计算机名称、域或工作组设置”一栏找到“计算机全名”),27007不用改动 3.安装Microsoft Visual C++支持: 运行DVD1\win86_32\ 注:64位的机器请运行F:\ABAQUS6.9\win86_64文件夹下相应程序。 如果Microsoft Visual C++没有提前安装的话后边License会给以提示。 安装流程: 第一步:安装License 运行DVD1\ setup.exe \ (重要步骤)【右击install.exe—属性--兼容性—勾选“以兼容模式运行这个程序”—选择windows XP (service Pack 3)】。 选择License,一路Next直到出现需要输入HOSTNAME时,输入计算机全名,若已自动输入则Next,接着选择授权文件的安装类型,此处选择Just install the licensing utilities。 然后当有选择安装路径时自己选择想要的安装路径,然后Next直至完成。 安装完后将准备工作共的License.dat文件复制到安装盘(假定为C盘)C:\SIMULIA\License 目录。运行license utilities, 在config service中,service name: abaqus flexlm license server; 在“Path to the lmgrd.exe file”一栏中,选择指向“C:\SIMULIA\License\lmgrd.exe”在“Path to the license file”一栏中,选择指向“C:\SIMULIA\License\ABAQUS68_SUMMEREDITION.DA T”(第一步更改后的dat文件)在“Path to the debug log file”一栏中,选择指向“abaqus.log”(abaqus.log文件可以自己创建)Save service, 再start license。注意左下角出现start service successful. 第二步:安装product 兼容模式运行\ABAQUS6.9\win86_32\product\Windows\Disk1\InstData\VM\install.exe也可以在第一步的基础上选择product。 在需要输入Lisence server 1(REQUIRED)时,输入(27007@hostname),Server 2和Server 3可以不输入。 Next直至安装完成。 启动Abaqus CAE,先后看到命令提示符窗口和图形界面窗口,至此安装成功。 第三步:安装帮助文档 运行DVD2\ setup.exe \根据提示操作,在提示输入hostname/IP address时输入完整的计算机名称 然后当有选择安装路径时自己选择想要的安装路径,然后Next直至完成。 安装时license是关键,计算机名也很重要。 原文作者:houniao(转帖请注明作者)

Abaqus材料用户子程序UMAT基础知识与手册例子完整解释

1、为何需要使用用户材料子程序(User-Defined Material, UMAT )? 很简单,当ABAQUS 没有提供我们需要的材料模型时。所以,在决定自己定义一种新的材料模型之前,最好对ABAQUS 已经提供的模型心中有数,并且尽量使用现有的模型,因为这些模型已经经过详细的验证,并被广泛接受。 UMAT 子程序具有强大的功能,使用UMAT 子程序: (1)可以定义材料的本构关系,使用ABAQUS 材料库中没有包含的材料进行计算,扩充程序功能。 (2) 几乎可以用于力学行为分析的任何分析过程,几乎可以把用户材料属性赋予ABAQU S 中的任何单元。 (3) 必须在UMAT 中提供材料本构模型的雅可比(Jacobian )矩阵,即应力增量对应变增量的变化率。 (4) 可以和用户子程序“USDFLD ”联合使用,通过“USDFLD ”重新定义单元每一物质点上传递到UMAT 中场变量的数值。 2、需要哪些基础知识? 先看一下ABAQUS 手册(ABAQUS Analysis User's Manual )里的一段话: Warning: The use of this option generally requires considerable expertise(一定的专业知识). The user is cautioned that the implementation (实现) of any realistic constitutive (基本) model requires extensive (广泛的) development and testing. Initial testing on a single eleme nt model with prescribed traction loading (指定拉伸载荷) is strongly recommended. 但这并不意味着非力学专业,或者力学基础知识不很丰富者就只能望洋兴叹,因为我们的任务不是开发一套完整的有限元软件,而只是提供一个描述材料力学性能的本构方程(Constitutive equation )而已。当然,最基本的一些概念和知识还是要具备的,比如: 应力(stress),应变(strain )及其分量; volumetric part 和deviatoric part ;模量(modul us )、泊松比(Poisson’s ratio)、拉梅常数(Lame constant);矩阵的加减乘除甚至求逆;还有一些高等数学知识如积分、微分等。 3、UMAT 的基本任务? 我们知道,有限元计算(增量方法)的基本问题是: 已知第n 步的结果(应力,应变等)n σ,n ε,然后给出一个应变增量1+n d ε,计算新的应力1+n σ。UMAT 要完成这一计算,并要计算Jacobian 矩阵DDSDDE(I,J) =εσΔ?Δ?/。σΔ是应力增量矩阵(张量或许更合适),εΔ是应变增量矩阵。DDSDDE(I,J) 定义了第J 个应变分量的微小变化对

ABAQUS用户子程序

ABAQUS用户子程序 转自https://www.wendangku.net/doc/9514366510.html, 当用到某个用户子程序时,用户所关心的主要有两方面:一是ABAQUS提供的用户子程序的接口参数。有些参数是ABAQUS传到用户子程序中的,例如SUBROUTINE DLOAD中的KSTEP,KINC,COORDS;有些是需要用户自己定义的,例如F。二是ABAQUS何时调用该用户子程序,对于不同的用户子程序ABAQUS调用的时间是不同的。有些是在每个STEP的开始,有的是STEP结尾,有的是在每个INCREMENT的开始等等。当ABAQUS调用用户子程序是,都会把当前的STEP和INCREMENT利用用户子程序的两个实参KSTEP和KINC传给用户子程序,用户可编个小程序把它们输出到外部文件中,这样对ABAQUS何时调用该用户子程序就会有更深的了解。 (子程序中很重要的就是要知道由abaqus提供的那些参量的意义,如下) 首先介绍几个子程序: 一.SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS, JLTYP,SNAME) 参数: 1. F为用户定义的是每个积分点所作用的荷载的大小; 2. KSTEP,KINC为ABAQUS传到用户子程序当前的STEP和INCREMENT值; 3. TIME(1),TIME(2)为当前STEP TIME和INCREMENT TIME的值; 4. NOEL,NPT为积分点所在单元的编号和积分点的编号; 5. COORDS为当前积分点的坐标; 6.除F外,所有参数的值都是ABAQUS传到用户子程序中的。 功能: 1.荷载可以被定义为积分点坐标、时间、单元编号和单元节点编号的函数。 2.用户可以从其他程序的结果文件中进行相关操作来定义积分点F的大小。 例1:这个例子在每个积分点施加的荷载不仅是坐标的函数,而且是随STEP变化而变化的。SUBROUTINE DLOAD(P,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS, 1 JLTYP,SNAME) INCLUDE 'ABA_PARAM.INC' C DIMENSION TIME(2),COORDS(3) CHARACTER80 SNAME PARAMETER (PLOAD=100.E4) IF (KSTEP.EQ.1) THEN !当STEP=1时的荷载大小 P=PLOAD ELSE IF (KSTEP.EQ.2) THEN !当STEP=2时的荷载大小 P=COORDS(1)PLOAD !施加在积分点的荷载P是坐标的函数 ELSE IF (KSTEP.EQ.3) THEN !当STEP=3时的荷载大小 P=COORDS(1)2PLOAD ELSE IF (KSTEP.EQ.4) THEN !当STEP=4时的荷载大小 P=COORDS(1)3PLOAD ELSE IF (KSTEP.EQ.5) THEN !当STEP=5时的荷载大小 P=COORDS(1)4PLOAD

abaqus6.13安装方法

abaqus 6.13对操作系统的新要求: 自abaqus 6.13版本开始,将不再支持windows 的32位操作平台; 同时,也不再支持windows xp和windows vista操作系统; 安装: 1. Run "Install Abagus Product & Licensing" 2. In SIMULIA FLEXnet License Server window select "Just install the license utilities" NOTE: If you already have SIMULIA FLEXnet License Server for ABAQUS 6.12-3 installed and running you can use it for 6.13-1 too 3. After finishing License Utilities setup copy files "ABAQUS.lic" and "ABAQUS.log" to (by default C:\SIMULIA\License\) 4. Configure and run SIMULIA FLEXnet License Server as service 4.1. Run lmtools.exe 4.2. On "Servise/License File" tab select "Configuration using Services" 4.3. On "Config Service" tab input the new Service Name (for example: SIMULIA FLEXnet License Server) 4.4. Browse to "lmgrd.exe", "ABAQUS.lic" and "ABAQUS.log" files 4.5. Select "Use Service" and "Start Server at Power Up", click "Save Service" 4.6. On "Start/Stop/ReRead" tab click "Start Server" 4.7. Close lmtools do not pay attention warning the license file you have selected is not valid for this machine? continue 5. For ABAQUS "Installation type" window select "SIMULIA FLEXnet License Server" 6. In "License Server" window input for "License server1 (REQUIRED)" 27011@ there mast be the name of computer with SIMULIA FLEXnet License Server server installed 7. Continue and finish setup 8. Enjoy 简单翻译一下: 1.运行setup.exe,在安装服务器窗口选择"Just install the license utilities",安装好后先不要点”安装产品“窗口的下一步,先配置lmtools.exe; 2.复制文件"ABAQUS.lic" and "ABAQUS.log"到安装目录(默认是C:\SIMULIA\License\); 3.运行lmtools.exe,在"Configuration using Services"页选择三个文件"lmgrd.exe", "ABAQUS.lic" 和"ABAQUS.log",勾选"Use Service" 和"Start Server at Power Up", 点击"Save Service"保存,切换至"Start/Stop/ReRead"页点击"Start Server",可以看到成功运行,可以关闭本窗口了; 4.返回第一步窗口继续安装产品,在"License Server" 窗口填写27011@<计算机名>,例如我的就是27011@Gao-PC,(6.12版本的用27000@127.0.0.1) 5.成功,很简单吧 注意:网上很多教程说要修改ABAQUS.lic文件第一行并且添加环境变量,完全没有必要,从abaqus6.10到6.13都可以按照本文步骤安装(只有License Server不同),其他版本未测试过

abaqus子程序通过验证方法小结

abaqus子程序通过验证方法小结 本文只对abaqus子程序验证进行小结,不提供abaqus的详细安装方法。 想要在ABAQUS里用子程序,必须安装Intel Visual Fortran,而安装Intel Visual Fortran前需要安装Microsoft Visual Studio,做好相关设置后通过AbaqusVerification测试子程序以及其他ABAQUS功能是否能正常使用。 每种方法都必须先安装Microsoft Visual Studio(英文版),然后安装Intel Visual Fortran(若为64位系统,两个软件都选择自定义安装,勾上64位系统支持项),这里要注意MVS(2008)的默认的custom安装内容是没有64位系统支持的,需要勾选64位系统支持项,或者直接勾选full,进行完全安装。每种软件的安装程序都最好右击以管理员身份运行。Abaqus的安装顺序可在MVS和IVF的前面或者后面,没有限制。下面介绍子程序验证方法。 方法1: 1.找到IVF的初始化文件ifortvars.bat(不同版本名称可能稍有差异), 按住shift键,右击初始化文件,选择复制为路径。 2.再找到已安装的Abaqus所在文件夹下的commands文件夹中的 abq6xxx.bat文件,右击编辑打开它,在@echo off下插入命令 @call并将第一步复制的路径粘贴在其后,关闭并保存文件。 3.在开始菜单的abaqus文件夹下找到abaqus verification快捷方式,

左击它进行验证(必须先启动abaqus license),最后如果验证文件全部pass则成功! 方法2: 1.同方法1 2.右键点击Abaqus Verification快捷方式,选择属性,在目标中的内容前面加所复制的路径并在其后边加上&&,如"X:\yourdir\Intel\Compiler\Fortran\$version$\IA32\Bin\ifortvars.b at"&& (注意&&后有个空格,64位系统为"...\$version$\em64t\bin\ifortvars.bat" && ),同时在Abaqus主程序的目标内容前面加同样的内容 3.在开始菜单的abaqus文件夹下找到abaqus verification快捷方

相关文档
相关文档 最新文档