版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
subroutinevumat(
CReadonly(unmodifiable)variables-
1
nblock,ndir,nshr,nstatev,nfieldv,nprops,lanneal,
2
stepTime,totalTime,dt,cmname,coordMp,charLength,
3
props,density,strainInc,relSpinInc,
4
tempOld,strainOld,defgradOld,fieldOld,
5
stressOld,stateOld,enerInternOld,enerInelasOld,
6
tempNew,stretchNew,defgradNew,fieldNew,
CWriteonly(modifiable)variables-
7
stressNew,stateNew,enerInternNew,enerInelasNew)
C
include'vaba_param.inc'
C
dimensionprops(nprops),density(nblock),coordMp(nblock,*),
1
charLength(*),strainInc(nblock,ndir+nshr),
2
relSpinInc(nblock,nshr),tempOld(nblock),
3
strainOld(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(*),
8
strainNew(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*80cmname
parameter(ZERO=0.,ONE=1.,TWO=2.,half=0.5)
DIMENSIONSTRAN(nblock,ndir+nshr)
DIMENSIONC(6,6),CD(6,6)
E11=props(1)
E22=props(2)
E33=props(3)
V12=props(4)
V13=props(5)
V23=props(6)
G12=props(7)
G13=props(8)
G23=props(9)
XT=props(10)
XC=props(11)
YT=props(12)
YC=props(13)
ZT=props(14)
ZC=props(15)
S12=props(16)
S13=props(17)
S23=props(18)
V21=E22*V12/E11
V31=E33*V13/E11
V32=E33*V23/E22
ATEMPS1=(ONE-V12*V21-V23*V32-V13*V31-TWO*V21*V32*V31)
1
/(E11*E22*E33)
DO
m=1,6
DOn=1,6
C(m,n)=ZERO
ENDDO
ENDDO
**
刚度矩阵
C(1,1)=(ONE-V23*V32)/(E22*E33*ATEMPS1)
C(2,2)=(ONE-V13*V31)/(E11*E33*ATEMPS1)
C(3,3)=(ONE-V12*V21)/(E11*E22*ATEMPS1)
C(1,2)=(V12+V32*V13)/(E11*E33*ATEMPS1)
C(1,3)=(V13+V12*V23)/(E11*E22*ATEMPS1)
C(2,3)=(V23+V21*V13)/(E11*E22*ATEMPS1)
C(4,4)=G23
C(5,5)=G13
C(6,6)=G12
DOm=2,6
DOn=1,m-1
C(m,n)=C(n,m)
ENDDO
ENDDO
C-------STRAINUPDATE
DO100i=1,nblock
DOj=1,6
STRAN(i,j)=ZERO
ENDDO
DOj=1,6
strainNew(i,j)=strainOld(i,j)+strainInc(i,j)
ENDDO
C-------STRESSUPDATE
stressNew(i,1)=C(1,1)*strainNew(i,1)+C(1,2)*strainNew(i,2)
1
+C(1,3)*strainNew(i,3)
stressNew(i,2)=C(1,2)*strainNew(i,1)+C(2,2)*strainNew(i,2)
2
+C(2,3)*strainNew(i,3)
stressNew(i,3)=C(1,3)*strainNew(i,1)+C(2,3)*strainNew(i,2)
3
+C(3,3)*strainNew(i,3)
stressNew(i,4)=TWO*C(4,4)*strainNew(i,4)
stressNew(i,5)=TWO*C(5,5)*strainNew(i,5)
stressNew(i,6)=TWO*C(6,6)*strainNew(i,6)
DOj=1,13
stateNew(i,j)=ZERO
ENDDO
stateNew(i,1)=StressNew(i,1)
stateNew(i,2)=StressNew(i,2)
stateNew(i,3)=StressNew(i,3)
stateNew(i,4)=StressNew(i,4)
stateNew(i,5)=StressNew(i,5)
stateNew(i,6)=StressNew(i,6)
stateNew(i,7)=(stateNew(i,1)/XT)**2+(stateNew(i,4)/S12)**2
1
+(stateNew(i,6)/S13)**2
stateNew(i,8)=(stateNew(i,1)/XC)**2
stateNew(i,9)=(stateNew(i,2)/YT)**2+(stateNew(i,4)/S12)**2
1
+(stateNew(i,5)/S23)**2
stateNew(i,10)=(stateNew(i,2)/YC)**2+(stateNew(i,4)/S12)**2
1
+(stateNew(i,5)/S23)**2
stateNew(i,11)=(stateNew(i,1)/XT)**2+(stateNew(i,4)/S12)**2
1
+(stateNew(i,6)/S13)**2
stateNew(i,12)=(stateNew(i,3)/ZT)**2+(stateNew(i,6)/S13)**2
1
+(stateNew(i,5)/S23)**2
stateNew(i,13)=(stateNew(i,3)/ZC)**2+(stateNew(i,6)/S13)**2
1
+(stateNew(i,5)/S23)**2
IF(stateNew(i,1).GT.0)THEN
IF(stateNew(i,7).GE.1)THEN
FT=1
ELSE
FT=0
ENDIF
ENDIF
IF(stateNew(i,1).LT.0)THEN
IF(stateNew(i,8).GE.1)THEN
FC=1
ELSE
FC=0
ENDIF
ENDIF
IF(stateNew(i,2).GT.0)THEN
IF(stateNew(i,9).GE.1)THEN
MT=1
ELSE
MT=0
ENDIF
ENDIF
IF(stateNew(i,2).LT.0)THEN
IF(stateNew(i,10).GE.1)THEN
MC=1
ELSE
MC=0
ENDIF
ENDIF
IF(stateNew(i,1).LT.0)THEN
IF(stateNew(i,11).GE.1)THEN
MTS=1
ELSE
MTS=0
ENDIF
ENDIF
IF(stateNew(i,3).GT.0)THEN
IF(stateNew(i,12).GE.1)THEN
TS=1
ELSE
TS=0
ENDIF
ENDIF
IF(stateNew(i,3).LT.0)THEN
IF(stateNew(i,13).GE.1)THEN
CS=1
ELSE
CS=0
ENDIF
ENDIF
DOm=1,6
DOn=1,6
CD(m,n)=C(m,n)
ENDDO
ENDDO
TF=FT+FC+MT+MC+MTS+TS+CS
C---CD为损伤矩阵
IF(FT.GE.1)THEN
E11NEW=0.07*E11
G12NEW=0.07*G12
G13NEW=0.07*G13
V21NEW=E22*V12/E11NEW
V31NEW=E33*V13/E11NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32-V13*V31NEW-TWO*V21NEW*V32*V31NEW)/(
1
E11NEW*E22*E33)
CD(1,1)=(ONE-V23*V32)/(E22*E33*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31NEW)/(E11NEW*E33*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11NEW*E22*ATEMPS1NEW)
CD(1,2)=(V12+V32*V13)/(E11NEW*E33*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11NEW*E22*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11NEW*E22*ATEMPS1NEW)
CD(4,4)=G23
CD(5,5)=G13NEW
CD(6,6)=G12NEW
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(FC.GE.1)THEN
E11NEW=0.14*E11
G12NEW=0.07*G12
G13NEW=0.07*G13
V21NEW=E22*V12/E11NEW
V31NEW=E33*V13/E11NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32-V13*V31NEW-TWO*V21NEW*V32*V31NEW)/(
1
E11NEW*E22*E33)
CD(1,1)=(ONE-V23*V32)/(E22*E33*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31NEW)/(E11NEW*E33*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11NEW*E22*ATEMPS1NEW)
CD(1,2)=(V12+V32*V13)/(E11NEW*E33*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11NEW*E22*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11NEW*E22*ATEMPS1NEW)
CD(4,4)=G23
CD(5,5)=G13NEW
CD(6,6)=G12NEW
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(MT.GE.1)THEN
E22NEW=0.3*E22
G12NEW=0.3*G12
G23NEW=0.3*G23
V21NEW=E22NEW*V12/E11
V32NEW=E33*V23/E22NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32NEW-V13*V31-TWO*V21NEW*V32NEW*V31)/(
1
E11*E22NEW*E33)
CD(1,1)=(ONE-V23*V32NEW)/(E22NEW*E33*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31)/(E11*E33*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11*E22NEW*ATEMPS1NEW)
CD(1,2)=(V12+V32NEW*V13)/(E11*E33*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11*E22NEW*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11*E22NEW*ATEMPS1NEW)
CD(4,4)=G23NEW
CD(5,5)=G13
CD(6,6)=G12NEW
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(MC.GE.1)THEN
E22NEW=0.4*E22
G12NEW=0.4*G12
G23NEW=0.4*G23
V21NEW=E22NEW*V12/E11
V32NEW=E33*V23/E22NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32NEW-V13*V31-TWO*V21NEW*V32NEW*V31)/(
1
E11*E22NEW*E33)
CD(1,1)=(ONE-V23*V32NEW)/(E22NEW*E33*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31)/(E11*E33*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11*E22NEW*ATEMPS1NEW)
CD(1,2)=(V12+V32NEW*V13)/(E11*E33*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11*E22NEW*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11*E22NEW*ATEMPS1NEW)
CD(4,4)=G23NEW
CD(5,5)=G13
CD(6,6)=G12NEW
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(TS.GE.1)THEN
E22NEW=0.3*E22
E33NEW=0.3*E33
G13NEW=0.3*G13
G23NEW=0.3*G23
V21NEW=E22NEW*V12/E11
V31NEW=E33NEW*V13/E11
V32NEW=E33NEW*V23/E22NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32NEW-V13*V31NEW-TWO*V21NEW
1
*V32NEW*V31NEW)/(E11*E22NEW*E33NEW)
CD(1,1)=(ONE-V23*V32NEW)/(E22NEW*E33NEW*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31NEW)/(E11*E33NEW*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11*E22NEW*ATEMPS1NEW)
CD(1,2)=(V12+V32NEW*V13)/(E11*E33NEW*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11*E22NEW*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11*E22NEW*ATEMPS1NEW)
CD(4,4)=G23NEW
CD(5,5)=G13NEW
CD(6,6)=G12
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(CS.GE.1)THEN
E22NEW=0.4*E22
E33NEW=0.4*E33
G13NEW=0.4*G13
G23NEW=0.4*G23
V21NEW=E22NEW*V12/E11
V31NEW=E33NEW*V13/E11
V32NEW=E33NEW*V23/E22NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32NEW-V13*V31NEW-TWO*V21NEW
1
*V32NEW*V31NEW)/(E11*E22NEW*E33NEW)
CD(1,1)=(ONE-V23*V32NEW)/(E22NEW*E33NEW*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31NEW)/(E11*E33NEW*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11*E22NEW*ATEMPS1NEW)
CD(1,2)=(V12+V32NEW*V13)/(E11*E33NEW*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11*E22NEW*ATEMPS1NEW)
CD(2,3)=(V23+V21NEW*V13)/(E11*E22NEW*ATEMPS1NEW)
CD(4,4)=G23NEW
CD(5,5)=G13NEW
CD(6,6)=G12
DOm=2,6
DOn=1,m-1
CD(m,n)=CD(n,m)
ENDDO
ENDDO
ENDIF
IF(MTS.GE.1)THEN
E11NEW=0.07*E11
E22NEW=0.3*E22
E33NEW=0.3*E33
G12NEW=0.07*G12
G13NEW=0.07*G13
G23NEW=0.3*G23
V21NEW=E22NEW*V12/E11NEW
V31NEW=E33NEW*V13/E11NEW
V32NEW=E33NEW*V23/E22NEW
ATEMPS1NEW=(ONE-V12*V21NEW-V23*V32NEW-V13*V31NEW-TWO
1
*V21NEW*V32NEW*V31NEW)/(E11NEW*E22NEW*E33NEW)
CD(1,1)=(ONE-V23*V32NEW)/(E22NEW*E33NEW*ATEMPS1NEW)
CD(2,2)=(ONE-V13*V31NEW)/(E11NEW*E33NEW*ATEMPS1NEW)
CD(3,3)=(ONE-V12*V21NEW)/(E11NEW*E22NEW*ATEMPS1NEW)
CD(1,2)=(V12+V32NEW*V13)/(E11NEW*E33NEW*ATEMPS1NEW)
CD(1,3)=(V13+V12*V23)/(E11NEW*E22NEW*ATEMPS1NEW)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年心脏瓣膜介入项目投资计划书
- 2026年智能过滤系统项目公司成立分析报告
- 2026年智能血糖手机App项目项目建议书
- 2026年智能浴室湿度传感器项目可行性研究报告
- 2026年社区矫正社会工作者面试题含答案
- 盐城施工方案代写(3篇)
- 欧洲国家边境管理制度(3篇)
- 2026年浦发银行笔试题库及参考答案
- 2026年中国近现代史知识竞赛题库含答案
- 2025年光伏产业高效电池创新报告
- 公立医院绩效考核方案细则
- 2025福建福州工业园区开发集团有限公司招聘4人考试备考题库及答案解析
- 公司一把手讲安全课件
- 2025~2026学年天津市和平区八年级上学期期中考试英语试卷
- 制冷作业人员操作证考试试卷
- 康复医疗服务的质量与运营效率平衡方案
- 《SBT 10428-2007初级生鲜食品配送良好操作规范》(2026年)实施指南
- 2025年河南省公务员省考《行测》联考真题(含答案)
- 2025年10月自考13140财务会计中级试题及答案
- 2025年国考(国家矿山安全监察局)面试模拟题及参考解析(一)
- 2026年包头轻工职业技术学院单招综合素质考试题库附答案
评论
0/150
提交评论