
材料本构模型.docx
18页为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划材料本构模型 材料2024-T3Aluminum的本构及失效参数 材料Ti-6Al-4VTitanium A:1098MPa(ksi)B:1092MPa(ksi)n:C:m: D1:-D2:D3:D4:D5: 材料2024-T3AluminumA:369MPa(ksi) B:684MPa(ksi) n: C:m: D1:D2: D3: D4:D5: 材料本构模型及编程-ABAQUS-UMAT 材料本构模型及编程实现:简介 1、什么时候用用户定义材料? 很简单,当ABAQUS没有提供我们需要的材料模型时所以,在决定自己定义一种新的材料模型之前,最好对ABAQUS已经提供的模型心中有数,并且尽量使用现有的模型,因为这些模型已经经过详细的验证,并被广泛接受 2、好学吗?需要哪些基础知识? 先看一下ABAQUS手册里的一段话: Warning:Theuseofthisoptiongenerallyrequiresconsiderableexpertise.Theuseriscautionedthattheimplementationofanyrealisticconstitutivemodelrequiresextensivedevelopmentandtesting.Initialtestingonasingleelementmodelwithprescribedtractionloadingisstronglyrecommended. 但这并不意味着非力学专业,或者力学基础知识不很丰富者就只能望洋兴叹,因为我们的任务不是开发一套完整的有限元软件,而只是提供一个描述材料力学性能的本构方程而已。
当然,最基本的一些概念和知识还是要具备的,比如 应力(stress),应变及其分量;volumetricpart和deviatoricpart;模量、泊松比(Poisson’sratio)、拉美常数(Lameconstant);矩阵的加减乘除甚至求逆;还有一些高等数学知识如积分、微分等 3、UMAT的基本任务? 我们知道,有限元计算的基本问题是: 已知第n步的结果,;然后给出一个应变增量,计算新的应力UMAT要完成这一计算,并要计算Jacobian矩阵DDSDDE(I,J)=是应力增量矩阵,是应变增量矩阵DDSDDE(I,J)定义了第J个应变分量的微小变化对第I个应力分量带来的变化该矩阵只影响收敛速度,不影响计算结果的准确性 4、怎样建立自己的材料模型? 本构方程就是描述材料应力应变关系的数学公式,不是凭空想象出来的,而是根据实验结果作出的合理归纳比如对弹性材料,实验发现应力和应变同步线性增长,所以用一个简单的数学公式描述为了解释弹塑性材料的实验现象,又提出了一些弹塑性模型,并用数学公式表示出来对各向同性材料,经常采用的办法是先研究材料单向应力-应变规律,并用一数学公式加以描述,然后把讲该规律推广到各应力分量。
这叫做“泛化“(generalization) 5、一个完整的例子及解释 下面这个UMAT取自ABAQUS手册,是一个用于大变形下的弹塑性材料模型希望我的注释能帮助初学者理解需要了解J2理论SUBROUTINEUMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,RPL,DDSDDT, 1DRPLDE,DRPLDT,STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED, 2CMNAME,NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT, 3PNEWDT,CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC) STRESS--应力矩阵,在增量步的开始,保存并作为已知量传入UMAT;在增量步的结束应该保存更新的应力; STRAN--当前应变,已知 DSTRAN—应变增量,已知 STATEV--状态变量矩阵,用来保存用户自己定义的一些变量,如累计塑性应变,粘弹性应变等等增量步开始时作为已知量传入,增量步结束应该更新; DDSDDE=。
需要更新 DTIME—时间增量dt NDI—正应力、应变个数,对三维问题、轴对称问题自然是3,平面问题是2(11,22);已知 NSHR—剪应力、应变个数,三维问题时3(12,13,23),轴对称问题是1(12);已知 NTENS=NTENSNSHR,已知 PROPS材料常数矩阵,如模量啊,粘度系数啊等等;作为已知量传入,已知 DROT—对finitestrain问题,应变应该排除旋转部分,该矩阵提供了旋转矩阵,详见下面的解释 PNEWDT—可用来控制时间步的变化如果设置为小于1的数,则程序放弃当前计算,并用新的时间增量DTIMEXPNEWDT作为新的时间增量计算;这对时间相关的材料如聚合物等有用;如果设为大余1的数,则下一个增量步加大DTIME为DTIMEXPNEWDT可以更新其他变量含义可参看手册,暂时用不到 C INCLUDE'ABA_' 定义了一些参数,变量什么的,不用管 C CHARACTER*8CMNAME C DIMENSIONSTRESS(NTENS),STATEV(NSTATV),DDSDDE(NTENS,NTENS), 1DDSDDT(NTENS),DRPLDE(NTENS),STRAN(NTENS),DSTRAN(NTENS), 2PREDEF(1),DPRED(1),PROPS(NPROPS),COORDS(3),DROT(3,3), 3DFGRD0(3,3),DFGRD1(3,3) 矩阵的尺寸声明 C CLOCALARRAYS C---------------------------------------------------------------- CEELAS-ELASTICSTRAINS CEPLAS-PLASTICSTRAINS CFLOW-DIRECTIONOFPLASTICFLOW C---------------------------------------------------------------- C 局部变量,用来暂时保存弹性应变、塑性应变分量以及流动方向 DIMENSIONEELAS(6),EPLAS(6),FLOW(6) C PARAMETER(ZERO=,ONE=,TWO=,THREE=,SIX=, 1ENUMAX=.4999D0,NEWTON=10,TOLER=) C C---------------------------------------------------------------- CUMATFORISOTROPICELASTICITYANDISOTROPICMISESPLASTICITY CCANNOTBEUSEDFORPLANESTRESS C---------------------------------------------------------------- CPROPS(1)-E CPROPS(2)-NU CPROPS(3..)-SYIELDANHARDENINGDATA CCALLSHARDSUBFORCURVEOFYIELDSTRESSVS.PLASTICSTRAIN C---------------------------------------------------------------- C CELASTICPROPERTIES C 获取杨氏模量,泊松比,作为已知量由PROPS向量传入 EMOD=PROPS(1)E ENU=PROPS(2)ν EBULK3=EMOD/(ONE-TWO*ENU)3K EG2=EMOD/(ONEENU)2G EG=EG2/TWOG EG3=THREE*EG3G ELAM=(EBULK3-EG2)/THREEλ DOK1=1,NTENS DOK2=1,NTENS DDSDDE(K1,K2)=ZERO ENDDO ENDDO 弹性部分,Jacobian矩阵很容易计算 注意,在ABAQUS中,剪切应变采用工程剪切应变的定义,所以剪切部分模量是G而不是2G!C CELASTICSTIFFNESS C DOK1=1,NDI DOK2=1,NDI DDSDDE(K2,K1)=ELAM ENDDO DDSDDE(K1,K1)=EG2ELAM ENDDO DOK1=NDI1,NTENS DDSDDE(K1,K1)=EG ENDDO C CRECOVERELASTICANDPLASTICSTRAINSANDROTATEFORWARD CALSORECOVEREQUIVALENTPLASTICSTRAIN C 读取弹性应变分量,塑性应变分量,并旋转,分别保存在EELAS和EPLAS中;CALLROTSIG(STATEV(1),DROT,EELAS,2,NDI,NSHR) CALLROTSIG(STATEV(NTENS1),DROT,EPLAS,2,NDI,NSHR) 读取等效塑性应变 EQPLAS=STATEV(12*NTENS) 先假设没有发生塑性流动,按完全弹性变形计算试算应力 C CCALCULATEPREDICTORSTRESSANDELASTICSTRAIN C DOK1=1,NTENS DOK2=1,NTENS STRESS(K2)=STRESS(K2)DDSDDE(K2,K1)*DSTRAN(K1) ENDDO EELAS(K1)=EELAS(K1)DSTRAN(K1) ENDDO C计算Mises应力 CCALCULATEEQUIVALENTVONMISESSTRESS C SMISES=(STRESS(1)-STRESS(2))**2(STRESS(2)-STRESS(3))**2 1(STRESS(3)-STRESS(1))**2 DOK1=NDI1,NTENS SMISES=SMISESSIX*STRESS(K1)**2 ENDDO SMISES=SQRT(SMISES/TWO) C根据当前等效塑性应变,调用HARDSUB得到对应的屈服应力 CGETYIELDSTRESSFROMTHESPECIFIEDHARDENINGCURVE C NVALUE=NPROPS/2-1 CALLHARDSUB(SYIEL0,HARD,EQPLAS,PROPS(3),NVALUE) C CDETERMINEIFACTIVELYYIELDING C如果Mises应力大余屈服应力,屈服发生,计算流动方向 IF((ONETOLER)*SYIEL0)THEN C CACTIVELYYIELDING CSEPARATETHEHYDROSTATICFROMTHEDEVIATORICSTRES。
