38
39
40
41#include "implicit_f.inc"
42
43
44
45#include "mvsiz_p.inc"
46
47
48
49#include "scr14_c.inc"
50#include "param_c.inc"
51#include "com08_c.inc"
52
53
54
55 INTEGER JFT, JLT,NFT,ISTRAIN,ISMSTR,NEL
56 INTEGER MAT(MVSIZ),PID(MVSIZ),MTN
57
59 . gstr(nel,8), pm(npropm,*),geo(npropg,*),
60 .
area(mvsiz),shf(mvsiz),
61 . exx(mvsiz), eyy(mvsiz), exy(mvsiz), exz(mvsiz), eyz(mvsiz),
62 . kxx(mvsiz), kyy(mvsiz), kxy(mvsiz),nu(mvsiz),ssp(*),rho(*),
63 . epsdot(6,*),
64 . ux1(*),ux2(*),ux3(*),uy1(*),uy2(*),uy3(*),
65 . px1(*),py1(*),py2(*),wxy(*),f_def(mvsiz,*),gstrw(*)
67 . ux12,ux13,ux23,uy13,uy23,exxt,eyyt,exyt
68
69
70
71 INTEGER ISH(MVSIZ),
72 . I, MX, J
73
75 . fsh(mvsiz),
76 . thk2 ,fac1, fac2, fc1p
77
78
79 IF(iepsdot/=0)THEN
80 DO i=jft,jlt
82 j = i + nft
83 epsdot(1,j)=exx(i)*fac1
84 epsdot(2,j)=eyy(i)*fac1
85 epsdot(3,j)=exy(i)*fac1
86 epsdot(4,j)=kxx(i)*fac1
87 epsdot(5,j)=kyy(i)*fac1
88 epsdot(6,j)=kxy(i)*fac1
89 ENDDO
90 ENDIF
91
92 DO i=jft,jlt
94 exx(i)=exx(i)*fac1
95 eyy(i)=eyy(i)*fac1
96 exy(i)=exy(i)*fac1
97 eyz(i)=eyz(i)*fac1
98 exz(i)=exz(i)*fac1
99 kxx(i)=kxx(i)*fac1
100 kyy(i)=kyy(i)*fac1
101 kxy(i)=kxy(i)*fac1
102 ENDDO
103
104 IF (istrain /= 0.OR.ismstr == 10) THEN
105 IF(ismstr == 10)THEN
106 DO i=jft,jlt
107 gstr(i,1)=gstr(i,1)+exx(i)
108 gstr(i,2)=gstr(i,2)+eyy(i)
109 gstr(i,3)=gstr(i,3)+exy(i)
110 gstr(i,4)=gstr(i,4)+eyz(i)
111 gstr(i,5)=gstr(i,5)+exz(i)
112 gstr(i,6)=gstr(i,6)+kxx(i)
113 gstr(i,7)=gstr(i,7)+kyy(i)
114 gstr(i,8)=gstr(i,8)+kxy(i)
115
116 gstrw(i)=gstrw(i)+wxy(i)*dt1/
area(i)
117 ENDDO
118
119 DO i=jft,jlt
120 f_def(i,6) = gstr(i,6)
121 f_def(i,7) = gstr(i,7)
122 f_def(i,8) = (gstr(i,8)+gstrw(i))*half
123 f_def(i,5) = (gstr(i,8)-gstrw(i))*half
124 ENDDO
125 ELSEIF (ismstr /= 11 ) THEN
126 DO i=jft,jlt
127 gstr(i,1)=gstr(i,1)+exx(i)
128 gstr(i,2)=gstr(i,2)+eyy(i)
129 gstr(i,3)=gstr(i,3)+exy(i)
130 gstr(i,4)=gstr(i,4)+eyz(i)
131 gstr(i,5)=gstr(i,5)+exz(i)
132 gstr(i,6)=gstr(i,6)+kxx(i)
133 gstr(i,7)=gstr(i,7)+kyy(i)
134 gstr(i,8)=gstr(i,8)+kxy(i)
135 ENDDO
136 ELSE
137 DO i=jft,jlt
139 ux12=ux1(i)-ux2(i)
140 ux13=ux1(i)-ux3(i)
141 ux23=ux2(i)-ux3(i)
142 uy13=uy1(i)-uy3(i)
143 uy23=uy2(i)-uy3(i)
144 exxt= px1(i)*ux12*fac1
145 eyyt=(py1(i)*uy13+py2(i)*uy23)*fac1
146 exyt=(py1(i)*ux13+py2(i)*ux23)*fac1
147 gstr(i,1)=exxt
148 gstr(i,2)=eyyt
149 gstr(i,3)=exyt
150 gstr(i,4)=gstr(i,4)+eyz(i)
151 gstr(i,5)=gstr(i,5)+exz(i)
152 gstr(i,6)=gstr(i,6)+kxx(i)
153 gstr(i,7)=gstr(i,7)+kyy(i)
154 gstr(i,8)=gstr(i,8)+kxy(i)
155 ENDDO
156 ENDIF
157 ENDIF
158
159 RETURN
subroutine area(d1, x, x2, y, y2, eint, stif0)