29 2 IADLL ,LLL ,JLL ,SLL ,XLL ,
34#include "implicit_f.inc"
38 INTEGER N0,N1,N2,NC, LLL(*),JLL(*),SLL(*),IADLL(*)
40 . x(3,*),xll(*),sk(9),l1(3),l2(3),
alpha
46 . xt1(3),yt1(3),zt1(3),xt2(3),yt2(3),zt2(3),
47 . x0,y0,z0,x1,y1,z1,x2,y2,z2,xr,yr,zr,xm,ym,zm,
norm
61 xt1(1) = sk(1)*l1(1)+sk(4)*l1(2)+sk(7)*l1(3)
62 xt1(2) = sk(2)*l1(1)+sk(5)*l1(2)+sk(8)*l1(3)
63 xt1(3) = sk(3)*l1(1)+sk(6)*l1(2)+sk(9)*l1(3)
64 norm = one/sqrt(xt1(1)*xt1(1)+xt1(2)*xt1(2)+xt1(3)*xt1(3))
68 IF (abs(xt1(1))>zep99)
THEN
77 norm = one/sqrt(zt1(1)*zt1(1)+zt1(2)*zt1(2)+zt1(3)*zt1(3))
81 yt1(1) = zt1(2)*xt1(3)-zt1(3)*xt1(2)
82 yt1(2) = zt1(3)*xt1(1)-zt1(1)*xt1(3)
83 yt1(3) = zt1(1)*xt1(2)-zt1(2)*xt1(1)
85 xt2(1) = sk(1)*l2(1)+sk(4)*l2(2)+sk(7)*l2(3)
86 xt2(2) = sk(2)*l2(1)+sk(5)*l2(2)+sk(8)*l2(3)
87 xt2(3) = sk(3)*l2(1)+sk(6)*l2(2)+sk(9)*l2(3)
88 norm = one/sqrt(xt2(1)*xt2(1)+xt2(2)*xt2(2)+xt2(3)*xt2(3))
92 IF (abs(xt2(1))>zep99)
THEN
101 norm = one/sqrt(zt1(1)*zt1(1)+zt1(2)*zt1(2)+zt1(3)*zt1(3))
105 yt2(1) = zt2(2)*xt2(3)-zt2(3)*xt2(2)
106 yt2(2) = zt2(3)*xt2(1)-zt2(1)*xt2(3)
107 yt2(3) = zt2(1)*xt2(2)-zt2(2)*xt2(1)
127 iadll(nc+1) = iadll(nc) + 5
156 iadll(nc+1) = iadll(nc) + 5
185 iadll(nc+1) = iadll(nc) + 5
214 iadll(nc+1) = iadll(nc) + 4
238 iadll(nc+1) = iadll(nc) + 4
262 iadll(nc+1) = iadll(nc) + 4
287 iadll(nc+1) = iadll(nc) + 9
292 xll(ik) =
alpha*xt1(1)
297 xll(ik) =
alpha*xt1(2)
302 xll(ik) =
alpha*xt1(3)
324 xll(ik) =-
alpha*xt1(1)-xt2(1)
329 xll(ik) =-
alpha*xt1(2)-xt2(2)
334 xll(ik) =-
alpha*xt1(3)-xt2(3)
338 iadll(nc+1) = iadll(nc) + 6
372 iadll(nc+1) = iadll(nc) + 6
406 iadll(nc+1) = iadll(nc) + 6
440 iadll(nc+1) = iadll(nc) + 6
subroutine gjnt_gear(sk, l1, l2, alpha, x, iadll, lll, jll, sll, xll, n0, n1, n2, nc)