38#include "implicit_f.inc"
46 INTEGER,
INTENT(IN) :: NEL
48 my_real,
DIMENSION(MVSIZ),
INTENT(IN) ::
49 . RX, RY, RZ, SX, SY, SZ, TX, TY, TZ,OFF
50 my_real,
DIMENSION(MVSIZ),
INTENT(OUT) ::
51 . e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z
62 my_real,
DIMENSION(MVSIZ) ::
63 . ux, uy, uz, vx, vy, vz, wx, wy, wz
69 IF (off(i) <= one ) cycle
70 aa = sqrt(rx(i)*rx(i) + ry(i)*ry(i) + rz(i)*rz(i))
71 if ( aa/=zero) aa = one / aa
75 aa = sqrt(sx(i)*sx(i) + sy(i)*sy(i) + sz(i)*sz(i))
76 if ( aa/=zero) aa = one / aa
80 aa = sqrt(tx(i)*tx(i) + ty(i)*ty(i) + tz(i)*tz(i))
81 if ( aa/=zero) aa = one / aa
94 IF (off(i) <= one ) cycle
95 e1x(i) = vy(i) * wz(i) - vz(i) * wy(i) + ux(i)
96 e1y(i) = vz(i) * wx(i) - vx(i) * wz(i) + uy(i)
97 e1z(i) = vx(i) * wy(i) - vy(i) * wx(i) + uz(i
99 e2x(i) = wy(i) * uz(i) - wz(i) * uy(i) + vx(i)
100 e2y(i) = wz(i) * ux(i) - wx(i) * uz(i) + vy(i)
101 e2z(i) = wx(i) * uy(i) - wy(i) * ux(i) + vz(i)
103 e3x(i) = uy(i) * vz(i) - uz(i
104 e3y(i) = uz(i) * vx(i) - ux(i) * vz(i) + wy(i)
105 e3z(i) = ux(i) * vy(i) - uy(i) * vx(i) + wz(i)
107 bb = sqrt(e1x(i)*e1x(i) + e1y(i)*e1y(i) + e1z(i)*e1z(i))
108 if ( bb/=zero) bb = one / bb
113 bb = sqrt(e2x(i)*e2x(i) + e2y(i)*e2y(i) + e2z(i)*e2z(i))
114 if ( bb/=zero) bb = one / bb
119 bb = sqrt(e3x(i)*e3x(i) + e3y(i)*e3y(i) + e3z
120 if ( bb/=zero) bb = one / bb
126 IF (n < niter)
GOTO 111
130 IF (off(i) <= one ) cycle
135 e3x(i) = e1y(i) * vz(i) - e1z(i) * vy(i)
136 e3y(i) = e1z(i) * vx(i) - e1x(i) * vz(i)
137 e3z(i) = e1x(i) * vy(i) - e1y(i) * vx(i)
139 aa = sqrt(e3x(i)*e3x(i) + e3y(i)*e3y(i) + e3z(i)*e3z(i))
140 if ( aa/=zero) aa = one / aa
145 e2x(i) = e3y(i) * e1z(i) - e3z(i) * e1y(i)
146 e2y(i) = e3z(i) * e1x(i) - e3x(i) * e1z(i)
147 e2z(i) = e3x(i) * e1y(i) - e3y(i) * e1x(i)
subroutine s10rcoor12(off, x, xdp, nc, r11, r12, r13, r21, r22, r23, r31, r32, r33, nel)
subroutine smortho3(off, rx, ry, rz, sx, sy, sz, tx, ty, tz, e1x, e2x, e3x, e1y, e2y, e3y, e1z, e2z, e3z, nel)