35#include "implicit_f.inc"
46 INTEGER,
INTENT(IN) :: ISROT,NUMNOD,IRESP,NEL
47 INTEGER,
DIMENSION(MVSIZ,10),
INTENT(IN) :: NC
49 my_real,
DIMENSION(3,NUMNOD),
INTENT(IN) :: x,dr
50 DOUBLE PRECISION,
DIMENSION(3,NUMNOD),
INTENT(IN) ::XDP
51 DOUBLE PRECISION,
DIMENSION(MVSIZ,10),
INTENT(INOUT) ::
56 INTEGER I, IPERM1(10),IPERM2(10),N,N1,N2,NN,IUN,MXT_1
59 . dvx,dvy,dvz,dx,dy,dz
60 DATA iperm1/0,0,0,0,1,2,3,1,2,3/
61 DATA iperm2/0,0,0,0,2,3,1,4,4,4/
76 IF(isrot==0.OR.isrot==2)
THEN
87 xx(i,n) = half*(xx(i,n1)+xx(i,n2))
88 yy(i,n) = half*(yy(i,n1)+yy(i,n2))
89 zz(i,n) = half*(zz(i,n1)+zz(i,n2))
99 dx = (yy(i,n2)-yy(i,n1))*(dr(3,nc(i,n2))-dr(3,nc(i,n1)))
100 . - (zz(i,n2)-zz(i,n1))*(dr(2,nc(i,n2))-dr(2,nc(i,n1)))
101 dy = (zz(i,n2)-zz(i,n1))*(dr(1,nc(i,n2))-dr(1,nc(i,n1)))
102 . - (xx(i,n2)-xx(i,n1))*(dr(3,nc(i,n2))-dr(3,nc(i,n1)))
103 dz = (xx(i,n2)-xx(i,n1))*(dr(2,nc(i,n2))-dr(2,nc(i,n1)))
104 . - (yy(i,n2)-yy(i,n1))*(dr(1,nc(i,n2))-dr(1,nc(i,n1)))
106 xx(i,n) = half*(xx(i,n1)+xx(i,n2)) + one_over_8 * dx
107 yy(i,n) = half*(yy(i,n1)+yy(i,n2)) + one_over_8 * dy
108 zz(i,n) = half*(zz(i,n1)+zz(i,n2)) + one_over_8 * dz
121 IF(isrot==0.OR.isrot==2)
THEN
132 xx(i,n) = half*(xx(i,n1)+xx(i,n2))
133 yy(i,n) = half*(yy(i,n1)+yy(i,n2))
134 zz(i,n) = half*(zz(i,n1)+zz(i,n2))
144 dx = (yy(i,n2)-yy(i,n1))*(dr(3,nc(i,n2))-dr(3,nc(i,n1)))
145 . - (zz(i,n2)-zz(i,n1))*(dr(2,nc(i,n2))-dr(2,nc(i,n1)))
146 dy = (zz(i,n2)-zz(i,n1))*(dr(1,nc(i,n2))-dr(1,nc(i,n1)))
147 . - (xx(i,n2)-xx(i,n1))*(dr(3,nc(i,n2))-dr(3,nc(i,n1)))
148 dz = (xx(i,n2)-xx(i,n1))*(dr(2,nc(i,n2))-dr(2,nc(i,n1)))
149 . - (yy(i,n2)-yy(i,n1))*(dr(1,nc(i,n2))-dr(1,nc(i,n1)))
151 xx(i,n) = half*(xx(i,n1)+xx(i,n2)) + one_over_8 * dx
152 yy(i,n) = half*(yy(i,n1)+yy(i,n2)) + one_over_8 * dy
153 zz(i,n) = half*(zz(i,n1)+zz(i,n2)) + one_over_8 * dz