为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

25.3.4 VUMAT

2012-02-28 15页 pdf 310KB 142阅读

用户头像

is_772808

暂无简介

举报
25.3.4 VUMAT 25.3.4-1 25.3.4 VUMAT User subroutine to define material behavior. 定义材料本构用户子程序 Product: ABAQUS/Explicit Warning: The use of this user subroutine generally requires considerable expertise. You are cautioned that the implementation of any realistic cons...
25.3.4 VUMAT
25.3.4-1 25.3.4 VUMAT User subroutine to define material behavior. 定义本构用户子程序 Product: ABAQUS/Explicit Warning: The use of this user 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. 注意:用户子程序的使用通常需要一定的专长。用户需要知道执行任何实际的本构模型需 要大量的试验数据。强烈建议用户对用户子程序进行在指定拉力作用下单个单元的验证测 试。 The component ordering of the symmetric and nonsymmetric tensors for the three-dimensional case using C3D8R elements is different from the ordering specified in “Three-dimensional solid element library,” Section 14.1.4, and the ordering used in ABAQUS/Standard. C3D8R单元三维轴对称及非轴对称张量成分顺序与“Three-dimensional solid element library,” Section 14.1.4及 ABAQUS/Standard中指定的顺序不同。 References  “User-defined mechanical material behavior,” Section 12.8.1  *USER MATERIAL Overview User subroutine VUMAT: 用户子程序 VUMAT  is used to define the mechanical constitutive behavior of a material;  用来定义材料的力学本构关系  will be called for blocks of material calculation points for which the material is defined in a user subroutine (“Material data definition,” Section 9.1.2);  可以被用户子程序定义材料计算点调用  can use and update solution-dependent state variables;  可以使用和更新结果依赖状态变量  can use any field variables that are passed in;  可以使用传入的任何场变量  is described further in “User-defined mechanical material behavior,” Section 12.8.1; and  在“User-defined mechanical material behavior,” Section 12.8.1中详细论述;  cannot be used in an adiabatic analysis.  可以被用于绝热分析 Component ordering in tensors 张量组成顺序 The component ordering depends upon whether the tensor is symmetric or nonsymmetric. 张量组成顺序取决于其是否为对称或非对称张量。 Symmetric tensors 对称张量 25.3.4-2 For symmetric tensors such as the stress and strain tensors, there are ndir+nshr components, and the component order is given as a natural permutation of the indices of the tensor. The direct components are first and then the indirect components, beginning with the 12-component. For example, a stress tensor contains ndir direct stress components and nshr shear stress components, which are passed in as 对于如同应力及应变张量等的对称张量,含有 ndir+nshr分量,分量的序号按张量索引号的自 然排序给出。首先是直接分量,然后是从 12分量开始的间接分量。例如,包含 ndir正应力分 量及 nshr的剪应力张量的应力张量被按照下面的顺序传入 Component 2-D Case 3-D Case 1 2 3 4 5 6 The shear strain components in user subroutine VUMAT are stored as tensor components and not as engineering components; this is different from user subroutine UMAT in ABAQUS/Standard, which uses engineering components. Nonsymmetric tensors 非对称张量 For nonsymmetric tensors there are ndir+2*nshr components, and the component order is given as a natural permutation of the indices of the tensor. The direct components are first and then the indirect components, beginning with the 12-component. For example, the deformation gradient is passed as 对于非对称张量含有 ndir+2*nshr分量,分量的顺序按照张量索引号的自然排序给出。首先是 直接分量,其次是从 12分量开始的间接分量。例如,位移剃度按照下面的顺序传递 Component 2-D Case 3-D Case 1 2 3 4 5 6 7 8 9 Initial calculations and checks 最初计算和检查 admin 铅笔 admin 铅笔 25.3.4-3 In the data check phase of the analysis ABAQUS/Explicit calls user subroutine VUMAT with a set of fictitious strains and a totalTime and stepTime both equal to 0.0. This is done as a check on your constitutive relation and to calculate the equivalent initial material properties, based upon which the initial elastic wave speeds are computed. 在 ABAQUS/Explicit调用用户子程序 VUMAT分析的数据检查阶段,小应变、总时间及时间步 都为 0。这作为对用户本构关系的一个检查,基于计算得到的初始材料波速来计算等效初始 材料属性。 Defining local orientations 定义局部方向 All stresses, strains, stretches, and state variables are in the orientation of the local material axes. These local material axes form a basis system in which stress and strain components are stored. This represents a corotational coordinate system in which the basis system rotates with the material. If a user-specified coordinate system (“Orientations,” Section 2.2.5) is used, it defines the local material axes in the undeformed configuration. 所有的应力、应变、延伸及状态变量均按局部材料轴的方向。这些局部材料轴形成一个应力 与应变分量存储的基本系统。即这个基本系是随着材料联合转动的坐标系。如果使用用户指 定坐标系,则它在无变形结构中定义局部材料轴。 Special considerations for various element types 不同单元类型的特殊考虑 The use of user subroutine VUMAT requires special consideration for various element types. 用户子程序 VUMAT的使用需要对不同的单元类型进行特殊的考虑。 Shell and plane stress elements 壳及平面应力单元 You must define the stresses and internal state variables. In the case of shell or plane stress elements, you must define strainInc(*,3), the thickness strain increment. The internal energies can be defined if desired. If they are not defined, the energy balance provided by ABAQUS/Explicit will not be meaningful. 用户必须定义应力和初始状态变量。在壳或平面应力单元的情况下,用户必须定义应变包括 (*,3),厚度应变增量。如果需要的话还需要定义初始能量。如果没有定义,那么 ABAQUS/Explicit提供的能量平衡将没有意义。 Shell elements 壳单元 When VUMAT is used to define the material response of shell elements, ABAQUS/Explicit cannot calculate a default value for the transverse shear stiffness of the element. Hence, you must define the element's transverse shear stiffness. See “Shell section behavior,” Section 15.6.4, for guidelines on choosing this stiffness. 当使用 VUMAT定义壳单元的材料响应时,ABAQUS/Explicit不能计算单元的缺省横向剪切 刚度。因此,用户需要定义单元的横向剪切刚度。关于选择横行剪切刚度的详细资料请参考 “Shell section behavior,” Section 15.6.4 Beam elements 梁单元 For beam elements the stretch tensor and the deformation gradient tensor are not available. For beams in space you must define the thickness strains, strainInc(*,2) and strainInc(*,3). strainInc(*,4) 25.3.4-4 is the shear strain associated with twist. Thickness stresses, stressNew(*,2) and stressNew(*,3), are assumed to be zero and any values you assign are ignored. 对于梁单元不能使用拉伸张量及位移剃度张量。对于空间梁,用户必须定义厚度应变、应变 增量(*,2)及应变增量(*,3)。应变增量(*,4)时与扭曲有关的剪应变。厚度应力, (*,2)及(*,3)假定为 0,并且用户分配的任何相关张量都被忽略。 Deformation gradient 位移剃度 The polar decomposition of the deformation gradient is written as , where and are the right and left symmetric stretch tensors, respectively. The constitutive model is defined in a corotational coordinate system in which the basis system rotates with the material. All stress and strain tensor quantities are defined with respect to the corotational basis system. The right stretch tensor, , is used. The relative spin tensor represents the spin (the antisymmetric part of the velocity gradient) defined with respect to the corotational basis system. 位移剃度写成 ,其中 及 分别为右边及左边的对称拉伸张量。本 构模型定义为联合旋转坐标系,在该坐标系中基系随着材料转动。所有的应力和应变张量值 按照联合旋转坐标系定义。使用右边的拉伸位移 。相应的旋转张量 代与联合旋转 基系相应的转动。 Special considerations for hyperelasticity 超弹性的特殊考虑 Hyperelastic constitutive models in VUMAT should be defined in a corotational coordinate system in which the basis system rotates with the material. This is most effectively accomplished by formulating the hyperelastic constitutive model in terms of the stretch tensor, , instead of in terms of the deformation gradient, . Using the deformation gradient can present some difficulties because the deformation gradient includes the rotation tensor and the resulting stresses would need to be rotated back to the corotational basis. 在 VUMAT中的超弹性本构模型可以被定义在联合选择坐标系中。这可以通过用拉伸张量 表示的超弹性本构模型很好的实现,而不是使用位移剃度 来表示。使用位移剃度 可能会带来一些困难,因为位移剃度包括旋转张量并且导致应力需要选择返回到联合旋转基 系。 Objective stress rates目标应力率 The Green-Naghdi stress rate is used when the mechanical behavior of the material is defined using user subroutine VUMAT. The stress rate obtained with user subroutine VUMAT may differ from that obtained with a built-in ABAQUS material model. For example, most material models used with solid (continuum) elements in ABAQUS/Explicit employ the Jaumann stress rate. This difference in the formulation will cause significant differences in the results only if finite rotation of a material point is accompanied by finite shear. For a discussion of the objective stress rates used in ABAQUS, see “Stress rates,” Section 1.5.3 of the ABAQUS Theory Manual. 在用户子程序 VUMAT中使用 Green-Naghdi应力率来定义材料的力学本构关系。通过用户子 程序 VUMAT获得的应力率可能会与在 ABAQUS建立的材料模型获得的应力率有所不同。 例如,在 ABAQUS/Explicit中大多数实体(连续)单元材料模型使用 Jaumann应力率。只要 材料点的有限旋转伴随有限剪切,这种表达方式的不同将导致计算结果的明显差异。关于 ABAQUS中使用的目标应力率的详细讨论参考“Stress rates,” Section 1.5.3 of the ABAQUS Theory Manual. admin 铅笔 admin 铅笔 admin 铅笔 admin 铅笔 25.3.4-5 Material point deletion 材料点删除 Material points that satisfy a user-defined failure criterion can be deleted from the model (see “User-defined mechanical material behavior,” Section 12.8.1). You must specify the state variable number controlling the element deletion flag when you allocate space for the solution-dependent state variables, as explained in “User-defined mechanical material behavior,” Section 12.8.1. The deletion state variable should be set to a value of one or zero in VUMAT. A value of one indicates that the material point is active, while a value of zero indicates that ABAQUS/Explicit should delete the material point from the model by setting the stresses to zero. The structure of the block of material points passed to user subroutine VUMAT remains unchanged during the analysis; deleted material points are not removed from the block. ABAQUS/Explicit will pass zero stresses and strain increments for all deleted material points. Once a material point has been flagged as deleted, it cannot be reactivated. 满足用户定义的破坏准则的材料点可以被从模型中删除(参考“User-defined mechanical material behavior,” Section 12.8.1)。当用户给结果依赖状态变量分配空间时,用户需要指定控 制单元删除标示的状态变量号,在“User-defined mechanical material behavior,” Section 12.8.1 中进行详细说明。在 VUMAT中删除状态变量可以被赋予 1或者 0。1表示材料点时激活的, 0表示 ABAQUS/Explicit将通过设定应力为 0删除材料点。在分析过程中传递给用户子程序 VUMAT的材料点结构保持不变;删除的材料点没有从块中移走。ABAQUS/Explicit将传递 0 应力及应变给所有删除的材料点。一旦一个材料点被标示为删除,该材料点将不能够被再次 激活。 User subroutine interface 用户子程序 subroutine vumat( C Read only (unmodifiable)variables - 1 nblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, 2 stepTime, totalTime, dt, cmname, coordMp, charLength, 3 props, density, strainInc, relSpinInc, 4 tempOld, stretchOld, defgradOld, fieldOld, 5 stressOld, stateOld, enerInternOld, enerInelasOld, 6 tempNew, stretchNew, defgradNew, fieldNew, C Write only (modifiable) variables - 7 stressNew, stateNew, enerInternNew, enerInelasNew ) C include 'vaba_param.inc' C dimension props(nprops), density(nblock), coordMp(nblock,*), 1 charLength(nblock), strainInc(nblock,ndir+nshr), 2 relSpinInc(nblock,nshr), tempOld(nblock), 3 stretchOld(nblock,ndir+nshr), 4 defgradOld(nblock,ndir+nshr+nshr), 5 fieldOld(nblock,nfieldv), stressOld(nblock,ndir+nshr), 6 stateOld(nblock,nstatev), enerInternOld(nblock), 7 enerInelasOld(nblock), tempNew(nblock), 25.3.4-6 8 stretchNew(nblock,ndir+nshr), 8 defgradNew(nblock,ndir+nshr+nshr), 9 fieldNew(nblock,nfieldv), 1 stressNew(nblock,ndir+nshr), stateNew(nblock,nstatev), 2 enerInternNew(nblock), enerInelasNew(nblock), C character*80 cmname C do 100 km = 1,nblock user coding 100 continue return end Variables to be defined 被定义的变量 stressNew (nblock, ndir+nshr) Stress tensor at each material point at the end of the increment. 在增量结束时每个材料点的应力张量。 stateNew (nblock, nstatev) State variables at each material point at the end of the increment. You define the size of this array by allocating space for it (see “User subroutines: overview,” Section 25.1.1, for more information). 增量结束时每个材料点的状态变量。用户通过分配空间来定义该矩阵的大小(更多的资料 参考“User subroutines: overview,” Section 25.1.1)。 Variables that can be updated 可以更新的变量 enerInternNew (nblock) Internal energy per unit mass at each material point at the end of the increment. 增量结束时每个材料点单位质量的内能。 enerInelasNew (nblock) Dissipated inelastic energy per unit mass at each material point at the end of the increment. 增量结束时每个材料点单位质量的消散的无弹性能。 Variables passed in for information nblock Number of material points to be processed in this call to VUMAT. 调用 VUMAT的材料点号。 ndir Number of direct components in a symmetric tensor. 对成张量的直接分量号。 nshr Number of indirect components in a symmetric tensor. 25.3.4-7 对称张量的间接分量号。 nstatev Number of user-defined state variables that are associated with this material type (you define this as described in “Allocating space” in “User subroutines: overview,” Section 25.1.1). 与材料类型相关的用户定义状态变量号。 nfieldv Number of user-defined external field variables. 用户定义外部场变量号。 nprops User-specified number of user-defined material properties. 用户定义材料属性的用户指定号。 lanneal Flag indicating whether the routine is being called during an annealing process. lanneal=0 indicates that the routine is being called during a normal mechanics increment. lanneal=1 indicates that this is an annealing process and you should re-initialize the internal state variables, stateNew, if necessary. ABAQUS/Explicit will automatically set the stresses, stretches, and state to a value of zero during the annealing process. 在退火处理过程中标示程序是否被调用。Laneal=0表明程序在正常力学增量过程中被调 用。Laneal=1表明这是一个退火过程,并且如果需要的话用户需要重新初始化内部状态 变量 stateNew。ABAQUS/Explicit将自动设置应力,延展性及在退火过程中 0值状态。 stepTime Value of time since the step began. 从时间步开始时的的时间 totalTime Value of total time. The time at the beginning of the step is given by totalTime - stepTime. 总时间值。时间步开始时的时间定义为 totalTime - stepTime dt Time increment size. 时间增量大小。 cmname User-specified material name, left justified. It is passed in as an upper-case character string. 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. 用户指定材料名。按照大写字母传入。有些内部材料本构以 ABQ_字母开头赋名。为了避 免冲突,用户不能使用 ABQ_作为 cmname的开头字母。 coordMp(nblock,*) Material point coordinates. It is the midplane material point for shell elements and the centroid for beam elements. 材料点坐标。对于壳单元为中平面材料点,对于梁单元为质心。 charLength(nblock) Characteristic element length. This is a typical length of a line across an 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. admin 铅笔 admin 铅笔 25.3.4-8 特征单元长度。它是一个穿过单元线的特殊长度。对于梁及桁架,它表示沿单元轴的特征 长度。对于膜及壳,它表示参考面上的特征长度。对于对称单元,它仅仅表示 – 平面上 的特征长度。对于粘聚单元它等于结构厚度。 props(nprops) User-supplied material properties. 用户指定材料属性 density(nblock) Current density at the material points in the midstep configuration. This value may be inaccurate in problems where the volumetric strain increment is very small. If an accurate value of the density is required in such cases, the analysis should be run in double precision. This value of the density is not affected by mass scaling. 材料点的当前密度。在体积应变增量非常小的情况下,该值可能出现精确性问题。在这种 情况下如果需要精确的密度值,分析需要在双精度下运行。密度值不受质量缩放比例的影 响 strainInc (nblock, ndir+nshr) Strain increment tensor at each material point. 每个材料点的应变增量张量。 relSpinInc (nblock, nshr) Incremental relative rotation vector at each material point defined in the corotational system. Defined as , where is the antisymmetric part of the velocity gradient, , and . Stored in 3-D as and in 2-D as . 定义在联合旋转系中的每个材料点的增量相关选择矢量。定义为 ,其中 为 速度剃度 , 的反对称部分,在三维条件下存储为 ,在二维条件下 存储为 。 tempOld(nblock) Temperatures at each material point at the beginning of the increment. 增量开始时每个材料点的温度。 stretchOld (nblock, ndir+nshr) Stretch tensor, , at each material point at the beginning of the increment defined from the polar decomposition of the deformation gradient by . 增量开始时每个材料点的,拉伸张量 。 defgradOld (nblock,ndir+2*nshr) Deformation gradient tensor at each material point at the beginning of the increment. Stored in 3-D as ( , , , , , , , , ) and in 2-D as ( , , , , ). 增量开始时每个材料点的位移剃度张量。在三维状态下存储为( , , , , , , , , ) 及在二维条件下存储为( , , , , ). fieldOld (nblock, nfieldv) Values of the user-defined field variables at each material point at the beginning of the increment. .增量开始时每个材料点的用户定义场变量值。 stressOld (nblock, ndir+nshr) Stress tensor at each material point at the beginning of the increment. admin 铅笔 admin 铅笔 25.3.4-9 增量开始时每个材料点的应力张量。 stateOld (nblock, nstatev) State variables at each material point at the beginning of the increment. 增量开始时每个材料点的状态变量。 enerInternOld (nblock) Internal energy per unit mass at each material point at the beginning of the increment. 增量开始时每个材料点的单位质量的内能 enerInelasOld (nblock) Dissipated inelastic energy per unit mass at each material point at the beginning of the increment. 增量开始时每个材料点的单位质量消散的无弹性能。 tempNew(nblock) Temperatures at each material point at the end of the increment. 增量开始时每个材料点的温度。 stretchNew (nblock, ndir+nshr) Stretch tensor, , at each material point at the end of the increment defined from the polar decomposition of the deformation gradient by . defgradNew (nblock,ndir+2*nshr) Deformation gradient tensor at each material point at the end of the increment. Stored in 3-D as ( , , , , , , , , ) and in 2-D as ( , , , , ). 增量结束时每个材料点的位移剃度张量。三维状态下存储为( , , , , , , , , ) ,二维状态下存储为 ( , , , , )。 fieldNew (nblock, nfieldv) Values of the user-defined field variables at each material point at the end of the increment. 增量结束时每个材料点的用户指定场变量值。 Example: Using more than one user-defined material model :使用多个用户定义材料模型 To use more than one user-defined material model, the variable cmname can be tested for different material names inside user subroutine VUMAT, as illustrated below: 要使用多种用户材料模型,用户子程序 VUMAT中使用 cmname值代表不同的材料名,如下 所述: if (cmname(1:4) .eq. 'MAT1') then call VUMAT_MAT1(argument_list) else if (cmname(1:4) .eq. 'MAT2') then call VUMAT_MAT2(argument_list) end if VUMAT_MAT1 and VUMAT_MAT2 are the actual user material subroutines containing the constitutive material models for each material MAT1 and MAT2, respectively. Subroutine VUMAT merely acts as a directory here. The argument list can be the same as that used in subroutine VUMAT. The material names must be in upper case since cmname is passed in as an upper-case character string. VUMAT_MAT1 and VUMAT_MAT2分别为实际的包含MAT1及MAT2材料本构的用户材料 子程序。子程序 VUMAT在此仅仅作为一个地址。 Example: Elastic/plastic material with kinematic hardening 例子:带有运动硬化的弹性/塑性材料 25.3.4-10 As a simple example of the coding of subroutine VUMAT, consider the generalized plane strain case for an elastic/plastic material with kinematic hardening. The basic assumptions and definitions of the model are as follows. 作为子程序 VUMAT的简单例子代码,考虑通用运动硬化弹性/塑性材料的平面应变问题。模 型的基本假设及定义如下。 Let be the current value of the stress and define to be the deviatoric part of the stress. The center of the yield surface in deviatoric stress space is given by the tensor , which has initial values of zero. The stress difference, , is the stress measured from the center of the yield surface and is given by 设定 为应力的当前值,并定义 应力的偏量部分。在偏应力空间屈服面中心由张量 给定, 其初始值为 0。应力导数 为从屈服面中学测量的应力,由 给出。 The von Mises yield surface is defined as Mises屈服面定义为 where is the uniaxial equivalent yield stress. The von Mises yield surface is a cylinder in deviatoric stress space with a radius of 为单轴等效屈服应力,在偏应力空间中Mises屈服面是一个以 为半径的圆柱。 For the kinematic hardening model, is a constant. The normal to the Mises yield surface can be written as 对于运动硬化模型, 是一个常数。Mises屈服面的法线定义为 We decompose the strain rate into an elastic and plastic part using an additive decomposition: 将应变率分解为弹性和塑性部分: The plastic part of the strain rate is given by a normality condition 塑性应变率由 给出 where the scalar multiplier must be determined. A scalar measure of equivalent plastic strain rate is defined by 式中必须指定比例乘子 。等效塑性应变率比例量测定义为 The stress rate is assumed to be purely due to the elastic part of
/
本文档为【25.3.4 VUMAT】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索