ABAQUS用户材料子程序UMAT介绍课件_第1页
ABAQUS用户材料子程序UMAT介绍课件_第2页
ABAQUS用户材料子程序UMAT介绍课件_第3页
ABAQUS用户材料子程序UMAT介绍课件_第4页
ABAQUS用户材料子程序UMAT介绍课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ABAQUS用户材料子程序UMAT介绍报告人:裴华富ABAQUS用户材料子程序UMAT介绍报告人:裴华富1(一)UMAT简介ABAQUS不仅提供标准的有限元分析程序,而且具有良好的开放性,可利用它提供的用户子程序接口生成非标准的分析程序来满足用户的需要,在实际工程中得到广泛应用。ABAQUS允许用户通过子程序以代码的形式来扩展主程序的功能,并给用户提供了强大而又灵活的用户子程序接口和应用程序接口(UtilityRoutine),ABAQUS一共有42个用户子程序接口,15个应用程序接口。(一)UMAT简介ABAQUS不仅提供标准的有限元分2(一)UMAT简介用户可以定义包括:边界条件、荷载条件、接触条件、材料特性以及利用用户子程序和其它应用软件进行数值交换等等。这些用户子程序接口使得用户解决一些问题时有很大的灵活性,同时大大的扩充了ABAQUS的功能。(一)UMAT简介用户可以定义包括:边界条件、荷载条件3(一)UMAT简介通过用户材料子程序(User-definedMaterialMechanicalBehavior,简称UMAT)接口,用户可定义任何补充的材料模型,不但任意数量的材料常数都可以作为资料被读取,而且ABAQUS对于任何数量的与解相关的状态变量在每一材料计数点都提供了存储功能,以便在这些子程序中应用。(一)UMAT简介通过用户材料子程序(User-def4(二)用户材料子程序功能UMAT子程序具有强大的功能,使用UMAT子程序:(1)可以定义材料的本构关系,使用ABAQUS材料库中没有包含的材料进行计算,扩充程序功能。(2)可以用于力学行为分析的任何分析过程,几乎可以把用户材料属性赋予ABAQUS中的任何单元;(二)用户材料子程序功能UMAT子程序具有强大的功能,使用5(二)用户材料子程序功能(3)必须在UMAT中提供材料本构模型的雅可比(Jacobian)矩阵,即应力增量对应变增量的变化率。(二)用户材料子程序功能(3)必须在UMAT中提供材料本6(三)编程思路由于主程序与UMAT之间存在数据传递,甚至共用一些变量,因此必须遵守有关UMAT的书写格式,UMAT中常用的变量在文件开头予以定义,通常格式为:(三)编程思路由于主程序与UMAT之间存在数据传递,甚7(三)编程思路SUBROUTINEUMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,1RPL,DDSDDT,DRPLDE,DRPLDT,2STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,3NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,4CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)CINCLUDE'ABA_PARAM.INC'CCHARACTER*80CMNAMEDIMENSIONSTRESS(NTENS),STATEV(NSTATV),1DDSDDE(NTENS,NTENS),DDSDDT(NTENS),DRPLDE(NTENS),2STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),3PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3)usercodingtodefineDDSDDE,STRESS,STATEV,SSE,SPD,SCDand,ifnecessary,RPL,DDSDDT,DRPLDE,DRPLDT,PNEWDTRETURNEND(三)编程思路SUBROUTINEUMAT(STRESS,8(三)编程思路UMAT中的应力矩阵、应变矩阵以及矩阵DDSDDE,DDSDDT,DRPLDE等,都是直接分量存储在前,剪切分量存储在后。直接分量有NDI个,剪切分量有NSHR个。各分量之间的顺序根据单元自由度的不同有一些差异,所以编写UMAT时要考虑到所使用单元的类别。下面对UMAT中用到的一些变量进行说明:(三)编程思路UMAT中的应力矩阵、应变矩阵以及矩阵DDS9(三)编程思路DDSDDE(NTENS,NTENS)是一个NTENS维的方阵,称作雅可比矩阵。STRESS(NTENS)应力张量矩阵,对应NDI个直接分量和NSHR个剪切分量。STATEV(NSTATEV)用于存储状态变量的矩阵,在增量步开始时将数值传递到UMAT中。(三)编程思路DDSDDE(NTENS,NTENS)是一个N10(三)编程思路状态变量矩阵的维数,等于关键字“*DEPVAR”定义的数值。状态变量矩阵的维数通过ABAQUS输入文件中的关键字“*DEPVAR”定义,关键字下面数据行的数值即为状态变量矩阵的维数。材料常数的个数,等于关键字“*USERMATERIAL”中“CONSTANTS”常数设定的值。(三)编程思路状态变量矩阵的维数,等于关键字“*DEPVAR11(三)编程思路PROPS(NPROPS)材料常数矩阵,矩阵中元素的数值对应于关键字“*USERMATERIAL”下面的数据行。SSE,SPD,SCD分别定义每一增量步的弹性应变能,塑性耗散和蠕变耗散。它们对计算结果没有影响,仅仅作为能量输出。(三)编程思路PROPS(NPROPS)材料常数矩阵,矩阵中12(三)编程思路其他变量:STRAN(NTENS)

:应变矩阵;DSTRAN(NTENS):应变增量矩阵;DTIME:增量步的时间增量;NDI:直接应力分量的个数;NSHR:剪切应力分量的个数;NTENS:总应力分量的个数,NTENS=NDI+NSHR。(三)编程思路其他变量:13(三)编程思路UMAT子程序的设计和FORTRAN程序设计完全一样,它可由若干个子程序段组成,每个程序段可独立编写,实现不同的功能,然后将各程序单位连接起来即成为一个整体。这就是结构化程序的设计思想。(三)编程思路UMAT子程序的设计和FORTRAN程序14(三)编程思路编制用户子程序时应注意:(1)用户子程序相互之间不能调用,但可以调用用户自己编写的Fortran子程序和ABAQUS应用程序。(2)当用户在用户子程序中利用OPEN打开外部文件时,要注意以下两点:一是设备号的选择是有限制的,只能取15~18和大于100的设备号,其余的都已被ABAQUS占用;二是用户需提供外部文件的绝对路径而不是相对路径。(三)编程思路编制用户子程序时应注意:15(三)编程思路(3)对于不同的用户子程序ABAQUS调用的时间是不同的,有的是在每个STEP的开始,有的是STEP的结尾,有的是在每个INCREMENT的开始等等。ABAQUS调用用户子程序时,都会把当前的STEP和INCREMENT利用用户子程序的两个实参KSTEP和KINC传给用户子程序,用户可把它们输出到外部文件中,这样就可清楚的知道ABAQUS何时调用该用户子程序。为保证用户子程序的正确执行,子程序的书写必须遵循ABAQUS的相关规定。(三)编程思路(3)对于不同的用户子程序ABAQUS调16(四)子程序的调用将这两个文件拷贝到分析目录D:>Temp下,将子程序的后缀改为.for,然后在D:\Temp下面用运行在command中:

abaqusjob=yourjobnameuser=yourumat

在cae中调用子程序可以采用以下方法:打开job下面的edit菜单,点general,点击usersubroutine后面的select,即可选择你所需要的用户子程序。(四)子程序的调用将这两个文件拷贝到分析目录D:>Te17(五)需要解决的关键问题UMAT编程的关键几点:提供准确的雅可比距阵,程序收敛速度快;非对称雅可比矩阵的处理;必须用增量法更新应力;(五)需要解决的关键问题UMAT编程的关键几点:18(六)总结殷-Graham粘弹塑性本构模型与其他本构模型存在很大的差异,在编制UMAT的过程中,需要对本构模型了解清晰的基础上,熟悉力学概念,对雅可比矩阵的非对称性进行处理,提供精确的雅克比矩阵,寻找解决耦合问题的方法。(六)总结殷-Graham粘弹塑性本构模型与其他本构模19老师和同学们:谢谢你们的支持和帮助!老师和同学们:谢谢你们的支持和帮助!20ABAQUS用户材料子程序UMAT介绍报告人:裴华富ABAQUS用户材料子程序UMAT介绍报告人:裴华富21(一)UMAT简介ABAQUS不仅提供标准的有限元分析程序,而且具有良好的开放性,可利用它提供的用户子程序接口生成非标准的分析程序来满足用户的需要,在实际工程中得到广泛应用。ABAQUS允许用户通过子程序以代码的形式来扩展主程序的功能,并给用户提供了强大而又灵活的用户子程序接口和应用程序接口(UtilityRoutine),ABAQUS一共有42个用户子程序接口,15个应用程序接口。(一)UMAT简介ABAQUS不仅提供标准的有限元分22(一)UMAT简介用户可以定义包括:边界条件、荷载条件、接触条件、材料特性以及利用用户子程序和其它应用软件进行数值交换等等。这些用户子程序接口使得用户解决一些问题时有很大的灵活性,同时大大的扩充了ABAQUS的功能。(一)UMAT简介用户可以定义包括:边界条件、荷载条件23(一)UMAT简介通过用户材料子程序(User-definedMaterialMechanicalBehavior,简称UMAT)接口,用户可定义任何补充的材料模型,不但任意数量的材料常数都可以作为资料被读取,而且ABAQUS对于任何数量的与解相关的状态变量在每一材料计数点都提供了存储功能,以便在这些子程序中应用。(一)UMAT简介通过用户材料子程序(User-def24(二)用户材料子程序功能UMAT子程序具有强大的功能,使用UMAT子程序:(1)可以定义材料的本构关系,使用ABAQUS材料库中没有包含的材料进行计算,扩充程序功能。(2)可以用于力学行为分析的任何分析过程,几乎可以把用户材料属性赋予ABAQUS中的任何单元;(二)用户材料子程序功能UMAT子程序具有强大的功能,使用25(二)用户材料子程序功能(3)必须在UMAT中提供材料本构模型的雅可比(Jacobian)矩阵,即应力增量对应变增量的变化率。(二)用户材料子程序功能(3)必须在UMAT中提供材料本26(三)编程思路由于主程序与UMAT之间存在数据传递,甚至共用一些变量,因此必须遵守有关UMAT的书写格式,UMAT中常用的变量在文件开头予以定义,通常格式为:(三)编程思路由于主程序与UMAT之间存在数据传递,甚27(三)编程思路SUBROUTINEUMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,1RPL,DDSDDT,DRPLDE,DRPLDT,2STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,3NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,4CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)CINCLUDE'ABA_PARAM.INC'CCHARACTER*80CMNAMEDIMENSIONSTRESS(NTENS),STATEV(NSTATV),1DDSDDE(NTENS,NTENS),DDSDDT(NTENS),DRPLDE(NTENS),2STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),3PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3)usercodingtodefineDDSDDE,STRESS,STATEV,SSE,SPD,SCDand,ifnecessary,RPL,DDSDDT,DRPLDE,DRPLDT,PNEWDTRETURNEND(三)编程思路SUBROUTINEUMAT(STRESS,28(三)编程思路UMAT中的应力矩阵、应变矩阵以及矩阵DDSDDE,DDSDDT,DRPLDE等,都是直接分量存储在前,剪切分量存储在后。直接分量有NDI个,剪切分量有NSHR个。各分量之间的顺序根据单元自由度的不同有一些差异,所以编写UMAT时要考虑到所使用单元的类别。下面对UMAT中用到的一些变量进行说明:(三)编程思路UMAT中的应力矩阵、应变矩阵以及矩阵DDS29(三)编程思路DDSDDE(NTENS,NTENS)是一个NTENS维的方阵,称作雅可比矩阵。STRESS(NTENS)应力张量矩阵,对应NDI个直接分量和NSHR个剪切分量。STATEV(NSTATEV)用于存储状态变量的矩阵,在增量步开始时将数值传递到UMAT中。(三)编程思路DDSDDE(NTENS,NTENS)是一个N30(三)编程思路状态变量矩阵的维数,等于关键字“*DEPVAR”定义的数值。状态变量矩阵的维数通过ABAQUS输入文件中的关键字“*DEPVAR”定义,关键字下面数据行的数值即为状态变量矩阵的维数。材料常数的个数,等于关键字“*USERMATERIAL”中“CONSTANTS”常数设定的值。(三)编程思路状态变量矩阵的维数,等于关键字“*DEPVAR31(三)编程思路PROPS(NPROPS)材料常数矩阵,矩阵中元素的数值对应于关键字“*USERMATERIAL”下面的数据行。SSE,SPD,SCD分别定义每一增量步的弹性应变能,塑性耗散和蠕变耗散。它们对计算结果没有影响,仅仅作为能量输出。(三)编程思路PROPS(NPROPS)材料常数矩阵,矩阵中32(三)编程思路其他变量:STRAN(NTENS)

:应变矩阵;DSTRAN(NTENS):应变增量矩阵;DTIME:增量步的时间增量;NDI:直接应力分量的个数;NSHR:剪切应力分量的个数;NTENS:总应力分量的个数,NTENS=NDI+NSHR。(三)编程思路其他变量:33(三)编程思路UMAT子程序的设计和FORTRAN程序设计完全一样,它可由若干个子程序段组成,每个程序段可独立编写,实现不同的功能,然后将各程序单位连接起来即成为一个整体。这就是结构化程序的设计思想。(三)编程思路UMAT子程序的设计和FORTRAN程序34(三)编程思路编制用户子程序时应注意:(1)用户子程序相互之间不能调用,但可以调用用户自己编写的Fortran子程序和ABAQUS应用程序。(2)当用户在用户子程序中利用OPEN打开外部文件时,要注意以下两点:一是设备号的选择是有限制的,只能取15~18和大于100的设备号,其余的都已被ABAQUS占用;二是用户需提供外部文件的绝对路径而不是相对路径。(三)编程思路编制用户子程序时应注意:35(三)编程思路(3)对于不同的用户子程序ABAQUS调用的时间是不同的,有的是在每个STEP的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论