35 SUBROUTINE scmorth3(PID ,GEO ,IGEO ,SKEW ,IREP ,GAMA ,
36 . RX ,RY ,RZ ,SX ,SY ,SZ ,TX ,TY ,TZ ,
37 . E1X ,E1Y ,E1Z ,E2X ,E2Y ,E2Z ,E3X ,E3Y ,E3Z ,
38 . NGL ,ANGLE,NSIGI,SIGSP,NSIGS,SIGI ,IXS ,ILAY ,
45 use element_mod ,
only : nixs
49#include "implicit_f.inc"
59#include "vect01_c.inc"
64 INTEGER PID(*),IGEO(NPROPGI,*),IREP,NGL(*),NSIGI,NSIGS,
65 . IXS(NIXS,*),ILAY,ORTHOGLOB(*),PT(*),NEL
66 my_real GEO(NPROPG,*),SKEW(LSKEW,*),GAMA(NEL,6),ANGLE(*),
67 . RX(*) ,RY(*) ,RZ(*) ,SX(*) ,SY(*) ,SZ(*) ,TX(*) ,(*) ,TZ(*),
68 . e1x(*),e1y(*),e1z(*),e2x(*),e2y(*),e2z(*),e3x(*),e3y(*),e3z(*),
69 . sigsp(nsigi,*),sigi(nsigs,*)
71 CHARACTER(LEN=NCHARTITLE)::TITR
75 INTEGER I, IG, IGTYP, IPNUM, ISKV, IIS, II, JJ, IFLAGINI, INIORTH(MVSIZ)
77 . VX,VY,VZ,VR,VS,VN,V,PHI,CP,SP,CPN,SPN,
78 . S,D1,D2,U1X,U1Y,U2X,U2Y,DET,W1X,W2X,W1Y,W2Y
83 IF (nvsolid3 /= 0)
THEN
84 iis= nvsolid1 + nvsolid2 + 4 +nusolid
88 IF(orthoglob(i) == 0)
THEN
89 IF(sigsp((ilay-1)*6+iis+1,jj) /=zero.OR.
90 . sigsp((ilay-1)*6+iis+2,jj)/=zero )
THEN
95 . sigsp((ilay-1)*6+iis+1,jj) /= zero .OR.
96 . sigsp((ilay-1)*6+iis+2,jj) /= zero .OR.
97 . sigsp((ilay-1)*6+iis+3,jj) /= zero .OR.
98 . sigsp((ilay-1)*6+iis+4,jj) /= zero .OR.
99 . sigsp((ilay-1)*6+iis+5,jj) /= zero .OR.
100 . sigsp((ilay-1)*6+iis+6,jj) /= zero )
THEN
115 IF(iniorth(i) ==1 ) cycle
118 CALL fretitl2(titr,igeo(npropgi-ltitr+1,ig),ltitr)
123 phi = angle(i) * pi/hundred80
138 vn=vx*e1x(i)+vy*e1y(i)+vz*e1z(i)
142 v=sqrt(vx*vx+vy*vy+vz*vz)
146 . anmode=aninfo_blind_1,
156 vr=vx*e2x(i)+vy*e2y(i)+vz*e2z(i)
157 vs=vx*e3x(i)+vy*e3y(i)+vz*e3z(i)
162 vn=vx*e2x(i)+vy*e2y(i)+vz*e2z(i)
166 v=sqrt(vx*vx+vy*vy+vz*vz)
170 . anmode=aninfo_blind_1,
180 vr=vx*e3x(i)+vy*e3y(i)+vz*e3z(i)
181 vs=vx*e1x(i)+vy*e1y(i)+vz*e1z(i)
186 vn=vx*e3x(i)+vy*e3y(i)+vz*e3z(i)
190 v=sqrt(vx*vx+vy*vy+vz*vz)
194 . anmode=aninfo_blind_1,
204 vr=vx*e1x(i)+vy*e1y(i)+vz*e1z(i)
205 vs=vx*e2x(i)+vy*e2y(i)+vz*e2z(i)
223 u1x = rx(i)*e2x(i)+ry(i)*e2y(i)+rz(i)*e2z(i)
224 u1y = rx(i)*e3x(i)+ry(i)*e3y(i)+rz(i)*e3z(i)
225 u2x = sx(i)*e2x(i)+sy(i)*e2y(i)+sz(i)*e2z(i)
226 u2y = sx(i)*e3x(i)+sy(i)*e3y(i)+sz(i)*e3z(i)
227 det = u1x*u2y-u1y*u2x
236 s=
max(em20,sqrt(cpn*cpn+spn*spn))
241 u1x = sx(i)*e3x(i)+sy(i)*e3y(i)+sz(i)*e3z(i)
242 u1y = sx(i)*e1x(i)+sy(i)*e1y(i)+sz(i)*e1z(i)
243 u2x = tx(i)*e3x(i)+ty(i)*e3y(i)+tz(i)*e3z(i)
244 u2y = tx(i)*e1x(i)+ty(i)*e1y(i)+tz(i)*e1z(i)
245 det = u1x*u2y-u1y*u2x
254 s=
max(em20,sqrt(cpn*cpn+spn*spn))
259 u1x = tx(i)*e1x(i)+ty(i)*e1y(i)+tz(i)*e1z(i)
260 u1y = tx(i)*e2x(i)+ty(i)*e2y(i)+tz(i)*e2z(i)
261 u2x = rx(i)*e1x(i)+ry(i)*e1y(i)+rz(i)*e1z(i)
262 u2y = rx(i)*e2x(i)+ry(i)*e2y(i)+rz(i)*e2z(i)
263 det = u1x*u2y-u1y*u2x
272 s=
max(em20,sqrt(cpn*cpn+spn*spn))
283 IF (nvsolid3 /= 0)
THEN
284 iis= nvsolid1 + nvsolid2 + 4 +nusolid
286 IF(orthoglob(i) == 0)
THEN
290 IF(jj==0)iflagini = 0
291 IF(iflagini == 1 .AND.
292 . ( sigsp((ilay-1)*6+iis+1,jj) /= zero.OR.
293 . sigsp((ilay-1)*6+iis+2,jj)/=zero) )
THEN
294 gama(i,1) = sigsp((ilay-1)*6+iis+1,jj)
295 gama(i,2) = sigsp((ilay-1)*6+iis+2,jj)
303 IF(jj==0)iflagini = 0
304 IF(iflagini == 1 .AND.
305 . ( sigsp((ilay-1)*6+iis+1,jj) /= zero .OR.
306 . sigsp((ilay-1)*6+iis+2,jj) /= zero .OR.
307 . sigsp((ilay-1)*6+iis+3,jj) /= zero .OR.
308 . sigsp((ilay-1)*6+iis+4,jj) /= zero .OR.
309 . sigsp((ilay-1)*6+iis+5,jj) /= zero .OR.
310 . sigsp((ilay-1)*6+iis+6,jj) /= zero) )
THEN
311 gamatmp(1) = sigsp((ilay-1)*6+iis+1,jj)
312 gamatmp(2) = sigsp((ilay-1)*6+iis+2,jj)
313 gamatmp(3) = sigsp((ilay-1)*6+iis+3,jj)
314 gamatmp(4) = sigsp((ilay-1)*6+iis+4,jj)
315 gamatmp(5) = sigsp((ilay-1)*6+iis+5,jj)
316 gamatmp(6) = sigsp((ilay-1)*6+iis+6,jj)
320 gama(i,1) = gamatmp(1)*e2x(i)+
321 . gamatmp(2)*e2y(i)+gamatmp(3)*e2z(i)
322 gama(i,2) = gamatmp(1)*e3x(i)+
323 . gamatmp(2)*e3y(i)+gamatmp(3)*e3z(i)
325 gama(i,1) = gamatmp(1)*e3x(i)+
326 . gamatmp(2)*e3y(i)+gamatmp(3)*e3z(i)
327 gama(i,2) = gamatmp(1)*e1x(i)+
328 . gamatmp(2)*e1y(i)+gamatmp(3)*e1z(i)
330 gama(i,1) = gamatmp(1)*e1x(i)+
331 . gamatmp(2)*e1y(i)+gamatmp(3)*e1z(i)
332 gama(i,2) = gamatmp(1)*e2x(i)+
333 . gamatmp(2)*e2y(i)+gamatmp(3)*e2z(i)
subroutine scmorth3(pid, geo, igeo, skew, irep, gama, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, ngl, angle, nsigi, sigsp, nsigs, sigi, ixs, ilay, orthoglob, pt, nel)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)