43
44
45
46#include "implicit_f.inc"
47
48
49
50#include "mvsiz_p.inc"
51
52
53
54 INTEGER, INTENT(IN) :: MTN
55 INTEGER, INTENT(IN) :: ISMSTR
56 INTEGER NEL
58 . sig(nel,6),wxx(*), wyy(*), wzz(*),
59 . s1(mvsiz), s2(mvsiz), s3(mvsiz), s4(mvsiz), s5(mvsiz), s6(mvsiz)
60
61
62
63
64
65
66 INTEGER I, J
68 . q1, q2, q3
69
70 s1(1:nel)=sig(1:nel,1)
71 s2(1:nel)=sig(1:nel,2)
72 s3(1:nel)=sig(1:nel,3)
73 s4(1:nel)=sig(1:nel,4)
74 s5(1:nel)=sig(1:nel,5)
75 s6(1:nel)=sig(1:nel,6)
76
77
78 IF (mtn==6.OR.mtn==17.OR.mtn==46.OR.mtn==47
79 . .OR.ismstr==10.OR.ismstr==12) RETURN
80
81 DO i=1,nel
82 q1 = two*s4(i)*wzz(i)
83 q2 = two*s6(i)*wyy(i)
84 q3 = two*s5(i)*wxx(i)
85
86 sig(i,1)=s1(i)-q1+q2
87 sig(i,2)=s2(i)+q1-q3
88 sig(i,3)=s3(i)-q2+q3
89 sig(i,4)=s4(i)+wzz(i)*(s1(i)-s2(i))+wyy(i)*s5(i)-wxx(i)*s6(i)
90 sig(i,5)=s5(i)+wxx(i)*(s2(i)-s3(i))+wzz(i)*s6(i)-wyy(i)*s4(i)
91 sig(i,6)=s6(i)+wyy(i)*(s3(i)-s1(i))+wxx(i)*s4(i)-wzz(i)*s5(i)
92 ENDDO
93
94 RETURN