31 2 XLL ,CANDN ,CANDE ,I_STOK,IXS ,
32 3 IXS16 ,IADLL ,EMINX ,NSV ,NELEM ,
33 4 N_MUL_MX,ITASK ,A ,ITIED ,
34 5 NINT ,NKMAX ,COMNTAG)
38#include "implicit_f.inc"
52 INTEGER I_STOK,N_MUL_MX,ITASK,ITIED,NINT,NKMAX ,
53 . LLL(*),JLL(*),SLL(*),CANDN(*),CANDE(*),COMNTAG(*),
54 . IXS(NIXS,*),IXS16(8,*),IADLL(*),NSV(*) ,NELEM(*)
57 . x(3,*),v(3,*),xll(*),
62 INTEGER I,J,K,IK,IE,IS,IC,NK,III(MVSIZ
122 first = 1 + i_stok * itask / nthread
123 last = i_stok*(itask+1) / nthread
129 i16 = ie - numels8 - numels10 - numels20
133 IF(i16.ge .1.AND.i16.le .numels16)
THEN
136 dist =
max(eminx(1,le)-x(1,is)-dt2*(v(1,is)+dt12*a(1,is)),
137 . x(1,is)+dt2*(v(1,is)+dt12*a(1,is))-eminx(4,le),dist)
138 dist =
max(eminx(2,le)-x(2,is)-dt2*(v(2,is)+dt12*a(2,is)),
139 . x(2,is)+dt2*(v(2,is)+dt12*a(2,is))-eminx(5,le),dist)
140 dist =
max(eminx(3,le)-x(3,is)-dt2*(v(3,is)+dt12*a(3,is)),
141 . x(3,is)+dt2*(v(3,is)+dt12*a(3,is))-eminx(6,le),dist)
159 iii(llt,k)=ixs(k+1,ie)
160 iii(llt,k+8)=ixs16(k,i16)
179 1 llt ,lll ,jll ,sll ,xll ,v ,
180 2 xx ,yy ,zz ,iii ,iadll ,
181 3 n_mul_mx ,a ,x ,itied ,nint ,nkmax ,
196 1 llt ,lll ,jll ,sll ,xll ,v ,
197 2 xx ,yy ,zz ,iii ,iadll ,
198 3 n_mul_mx ,a ,x ,itied ,nint ,nkmax ,
215 SUBROUTINE i16lll(LLT ,LLL ,JLL ,SLL ,XLL ,V ,
216 2 XX ,YY ,ZZ ,III ,IADLL ,
217 3 N_MUL_MX,A ,X ,ITIED,NINT ,NKMAX ,
226#include
"implicit_f.inc"
227#include "comlock.inc"
231#include
"mvsiz_p.inc"
235#include "com08_c.inc"
236 COMMON /lagglob/n_mult
241 INTEGER LLT,N_MUL_MX,ITIED,NINT ,
242 INTEGER LLL(*),JLL(*),SLL(*),COMNTAG(*),
243 . iii(mvsiz,17),iadll(*)
246 . xll(*),v(3,*),a(3,*)
248 . xx(mvsiz,17),yy(mvsiz,17),zz(mvsiz,17),x(3,*)
252 INTEGER I,J,IK,NK,I1,I2,I3,I4,IAD,NN
256 . r(mvsiz),s(mvsiz),t(mvsiz),
257 . nx(mvsiz), ny(mvsiz), nz(mvsiz),
265 CALL i16rst(llt ,r ,s ,t ,ni ,
266 2 nx ,ny ,nz ,xx ,yy ,zz )
275 IF(r(i)>=-one.AND.s(i)>=-one.AND.t(i)>=-one.AND.
276 . r(i)<= one.AND.s(i)<= one.AND.t(i)<= one)
THEN
283 vx = vx - (v(1,iii(i,ik))+dt12*a(1,iii(i,ik)))*ni(i,ik)
284 vy = vy - (v(2,iii(i,ik))+dt12*a(2,iii(i,ik)))*ni(i,ik)
285 vz = vz - (v(3,iii(i,ik))+dt12*a(3,iii(i,ik)))*ni(i,ik)
291 vn = nx(i)*vx + ny(i)*vy + nz(i)*vz
295 IF(s(i)*vn<=zero)
THEN
301 aa = one/sqrt(nx(i)*nx(i)+ny(i)*ny(i)+nz(i)*nz(i))
307 IF(n_mult>n_mul_mx)
THEN
308#include "lockoff.inc"
309 CALL ancmsg(msgid=84,anmode=aninfo)
312 iadll(n_mult+1)=iadll(n_mult) + 51
313 IF(iadll(n_mult+1)-1>nkmax)
THEN
314#include "lockoff.inc"
315 CALL ancmsg(msgid=84,anmode=aninfo)
318 iad = iadll(n_mult) - 1
320 lll(iad+ik) = iii(i,ik)
323 xll(iad+ik) = nx(i)*ni(i,ik)
324 lll(iad+ik+17) = iii(i,ik)
327 xll(iad+ik+17) = ny(i)*ni(i,ik)
328 lll(iad+ik+34) = iii(i,ik)
331 xll(iad+ik+34) = nz(i)*ni(i,ik)
333 comntag(nn) = comntag(nn) + 1
338#include "lockoff.inc"
350 IF(r(i)>=-one.AND.s(i)>=-one.AND.t(i)>=-one.AND.
351 . r(i)<= one.AND.s(i)<= one.AND.t(i)<= one)
THEN
358 vx = vx - (v(1,iii(i,ik))+dt12*a(1,iii(i,ik)))*ni(i,ik)
359 vy = vy - (v(2,iii(i,ik))+dt12*a(2,iii(i,ik)))*ni(i,ik)
360 vz = vz - (v(3,iii(i,ik))+dt12*a(3,iii(i,ik)))*ni(i,ik)
366 vn = nx(i)*vx + ny(i)*vy + nz(i)*vz
370 IF(s(i)*vn<=zero)
THEN
376 IF(n_mult+3>n_mul_mx)
THEN
377#include "lockoff.inc"
378 CALL ancmsg(msgid=84,anmode=aninfo)
381 IF(iadll(n_mult+1)-1+17*3>nkmax)
THEN
382#include "lockoff.inc"
383 CALL ancmsg(msgid=84,anmode=aninfo)
388 iadll(n_mult+1)=iadll(n_mult) + 17
389 iad = iadll(n_mult) - 1
391 lll(iad+ik) = iii(i,ik)
394 xll(iad+ik) = ni(i,ik)
396 comntag(nn) = comntag(nn) + 1
401 iadll(n_mult+1)=iadll(n_mult) + 17
402 iad = iadll(n_mult) - 1
404 lll(iad+ik) = iii(i,ik)
407 xll(iad+ik) = ni(i,ik)
409 comntag(nn) = comntag(nn) + 1
414 iadll(n_mult+1)=iadll(n_mult) + 17
415 iad = iadll(n_mult) - 1
417 lll(iad+ik) = iii(i,ik)
420 xll(iad+ik) = ni(i,ik)
422 comntag(nn) = comntag(nn) + 1
425#include "lockoff.inc"
437 IF(r(i)>=-one.AND.s(i)>=-one.AND.t(i)>=-one.AND.
438 . r(i)<= one.AND.s(i)<= one.AND.t(i)<= one)
THEN
445 IF(n_mult+3>n_mul_mx)
THEN
446#include "lockoff.inc"
447 CALL ancmsg(msgid=84,anmode=aninfo)
450 IF(iadll(n_mult+1)-1+17*3>nkmax)
THEN
451#include "lockoff.inc"
452 CALL ancmsg(msgid=84,anmode=aninfo)
456 iadll(n_mult+1)=iadll(n_mult) + 17
457 iad = iadll(n_mult) - 1
459 lll(iad+ik) = iii(i,ik)
462 xll(iad+ik) = ni(i,ik)
464 comntag(nn) = comntag(nn) + 1
469 iadll(n_mult+1)=iadll(n_mult) + 17
470 iad = iadll(n_mult) - 1
472 lll(iad+ik) = iii(i,ik)
475 xll(iad+ik) = ni(i,ik)
477 comntag(nn) = comntag(nn) + 1
482 iadll(n_mult+1)=iadll(n_mult) + 17
483 iad = iadll(n_mult) - 1
485 lll(iad+ik) = iii(i,ik)
488 xll(iad+ik) = ni(i,ik)
490 comntag(nn) = comntag(nn) + 1
494#include "lockoff.inc"
514 2 NX ,NY ,NZ ,XX ,YY ,ZZ )
518#include "implicit_f.inc"
522#include "mvsiz_p.inc"
529 . XX(,17),YY(MVSIZ,17),ZZ(MVSIZ,17)
531 . R(MVSIZ),S(MVSIZ),T(MVSIZ),NI(MVSIZ,17) ,
532 . NX(MVSIZ),NY(MVSIZ),NZ(MVSIZ)
536 INTEGER I,J,IK,NK,ITER,NITERMAX,JTER,NJTERMAX,CONV
540 . drdx(mvsiz),drdy(mvsiz),drdz(mvsiz),
541 . dsdx(mvsiz),dsdy(mvsiz),dsdz(mvsiz),
542 . dtdx(mvsiz),dtdy(mvsiz),dtdz(mvsiz),
543 . dxdr(mvsiz),dydr(mvsiz),dzdr(mvsiz),
544 . dxdt(mvsiz),dydt(mvsiz),dzdt(mvsiz),
545 . rr(mvsiz),ss(mvsiz),tt(mvsiz)
595 CALL i16deri(llt,rr ,ss ,tt ,ni ,
596 2 drdx ,drdy ,drdz ,dsdx ,dsdy ,dsdz ,
597 3 dtdx ,dtdy ,dtdz ,dxdr ,dydr ,dzdr ,
598 4 dxdt ,dydt ,dzdt ,xx ,yy ,zz )
607 CALL i16rstn(llt,rr,ss ,tt ,ni ,conv ,
608 2 drdx ,drdy ,drdz ,dsdx ,dsdy ,dsdz ,
609 3 dtdx ,dtdy ,dtdz ,xx ,yy ,zz ,
618 CALL i16ni(llt,rr ,ss ,tt ,ni )
626 nx(i) = dydt(i)*dzdr(i) - dzdt(i)*dydr(i)
627 ny(i) = dzdt(i)*dxdr(i) - dxdt(i)*dzdr(i)
628 nz(i) = dxdt(i)*dydr(i) - dydt(i)*dxdr(i)
736 2 DRDX ,DRDY ,DRDZ ,DSDX ,DSDY ,DSDZ ,
737 3 DTDX ,DTDY ,DTDZ ,XX ,YY ,ZZ ,
747#include "mvsiz_p.inc"
748#include "constant.inc"
754 . r(mvsiz),s(mvsiz),t(mvsiz),ni(mvsiz,17) ,
755 . rr(mvsiz),ss(mvsiz),tt(mvsiz),
756 . xx(mvsiz,17) ,yy(mvsiz,17) ,zz(mvsiz,17) ,
757 . drdx(mvsiz),drdy(mvsiz),drdz(mvsiz),
758 . dsdx(mvsiz),dsdy(mvsiz),dsdz(mvsiz),
759 . dtdx(mvsiz),dtdy(mvsiz),dtdz(mvsiz)
765 . dx ,dy,dz,dr ,ds,dt,err
772 + - ni(i, 1)*xx(i, 1) - ni(i, 2)*xx(i, 2) - ni(i, 3)*xx(i, 3)
773 + - ni(i, 4)*xx(i, 4) - ni(i, 5)*xx(i, 5) - ni(i, 6)*xx(i, 6)
774 + - ni(i, 7)*xx(i, 7) - ni(i, 8)*xx(i, 8) - ni(i, 9)*xx(i, 9)
775 + - ni(i,10)*xx(i,10) - ni(i,11)*xx(i,11) - ni(i,12)*xx(i,12)
776 + - ni(i,13)*xx(i,13) - ni(i,14)*xx(i,14) - ni(i,15)*xx(i,15)
777 + - ni(i,16)*xx(i,16)
779 + - ni(i, 1)*yy(i, 1) - ni(i, 2)*yy(i, 2) - ni(i, 3)*yy(i, 3)
780 + - ni(i, 4)*yy(i, 4) - ni(i, 5)*yy(i, 5) - ni(i, 6)*yy(i, 6)
781 + - ni(i, 7)*yy(i, 7) - ni(i, 8)*yy(i, 8) - ni(i, 9)*yy(i, 9)
782 + - ni(i,10)*yy(i,10) - ni(i,11)*yy(i,11) - ni(i,12)*yy(i,12)
783 + - ni(i,13)*yy(i,13) - ni(i,14)*yy(i,14) - ni(i,15)*yy(i,15)
784 + - ni(i,16)*yy(i,16)
786 + - ni(i, 1)*zz(i, 1) - ni(i, 2)*zz(i, 2) - ni(i, 3)*zz(i, 3)
787 + - ni(i, 4)*zz(i, 4) - ni(i, 5)*zz(i, 5) - ni(i, 6)*zz(i, 6)
788 + - ni(i, 7)*zz(i, 7) - ni(i, 8)*zz(i, 8) - ni(i, 9)*zz(i, 9)
789 + - ni(i,10)*zz(i,10) - ni(i,11)*zz(i,11) - ni(i,12)*zz(i,12)
790 + - ni(i,13)*zz(i,13) - ni(i,14)*zz(i,14) - ni(i,15)*zz(i,15)
791 + - ni(i,16)*zz(i,16)
793 dr = drdx(i)*dx + drdy(i)*dy + drdz(i)*dz
794 ds = dsdx(i)*dx + dsdy(i)*dy + dsdz(i)*dz
795 dt = dtdx(i)*dx + dtdy(i)*dy + dtdz(i)*dz
812 IF(r(i)>=-one.AND.s(i)>=-one.AND.t(i)>=-one.AND.
813 . r(i)<= one.AND.s(i)<= one.AND.t(i)<= one)
THEN
814 err =
max(err,abs(dr),abs(ds),abs(dt))
816 rr(i) =
max(
min(rr(i),one),-one)
817 ss(i) =
max(
min(ss(i),one),-one)
818 tt(i) =
max(
min(tt(i),one),-one)
841 2 DRDX ,DRDY ,DRDZ ,DSDX ,DSDY ,DSDZ ,
842 3 DTDX ,DTDY ,DTDZ ,DXDR ,DYDR ,DZDR ,
843 4 DXDT ,DYDT ,DZDT ,XX ,YY ,ZZ )
847#include "implicit_f.inc"
851#include "mvsiz_p.inc"
858 . DXDR(MVSIZ), DYDR(MVSIZ), DZDR(MVSIZ),
859 . DXDT(MVSIZ), DYDT(MVSIZ), DZDT(MVSIZ),
860 . DRDX(MVSIZ), DSDX(MVSIZ), DTDX(MVSIZ),
861 . DRDY(MVSIZ), DSDY(MVSIZ), (MVSIZ),
862 . DRDZ(MVSIZ), DSDZ(MVSIZ), DTDZ(MVSIZ),
863 . XX(MVSIZ,17) ,YY(MVSIZ,17),ZZ(MVSIZ,17),
864 . NI(MVSIZ,17) ,RR(MVSIZ) ,SS(MVSIZ) ,TT(MVSIZ)
870 . dxds(mvsiz), dyds(mvsiz), dzds(mvsiz),
871 . dnidr(16),dnids(16),dnidt(16),
872 . d, aa, bb, det(mvsiz),r9 ,r13 ,s9 ,s10 ,s11 ,s12 ,t10 ,t14
874 . u_m_r,u_p_r,u_m_s,u_p_s,u_m_t,u_p_t,
875 . ums_umt,ums_upt,ups_umt,ups_upt,
876 . umr_ums,umr_ups,upr_ums,upr_ups,
877 . umt_umr,umt_upr,upt_umr,upt_upr,
955 ums_umt = u_m_s * u_m_t
956 ums_upt = u_m_s * u_p_t
957 ups_umt = u_p_s * u_m_t
958 ups_upt = u_p_s * u_p_t
960 umr_ums = u_m_r * u_m_s
961 umr_ups = u_m_r * u_p_s
962 upr_ums = u_p_r * u_m_s
963 upr_ups = u_p_r * u_p_s
965 umt_umr = u_m_t * u_m_r
966 umt_upr = u_m_t * u_p_r
967 upt_umr = u_p_t * u_m_r
968 upt_upr = u_p_t * u_p_r
971 ni(i,1) = u_m_r * ums_umt * a
972 ni(i,5) = u_m_r * ups_umt * a
974 ni(i,2) = u_m_r * ums_upt * a
975 ni(i,6) = u_m_r * ups_upt * a
977 ni(i,3) = u_p_r * ums_upt * a
978 ni(i,7) = u_p_r * ups_upt * a
980 ni(i,4) = u_p_r * ums_umt * a
981 ni(i,8) = u_p_r * ups_umt * a
984 dnidr(1) = -ums_umt * a
985 dnidr(5) = -ups_umt * a
987 dnidr(2) = -ums_upt * a
988 dnidr(6) = -ups_upt * a
990 dnidr(3) = ums_upt * a
991 dnidr(7) = ups_upt * a
993 dnidr(4) = ums_umt * a
994 dnidr(8) = ups_umt * a
997 dnids(1) = -umt_umr * a
998 dnids(5) = umt_umr * a
1000 dnids(2) = -upt_umr * a
1001 dnids(6) = upt_umr * a
1003 dnids(3) = -upt_upr * a
1004 dnids(7) = upt_upr * a
1006 dnids(4) = -umt_upr * a
1007 dnids(8) = umt_upr * a
1010 dnidt(1) = -umr_ums * a
1011 dnidt(5) = -umr_ups * a
1013 dnidt(2) = umr_ums * a
1014 dnidt(6) = umr_ups * a
1016 dnidt(3) = upr_ums * a
1017 dnidt(7) = upr_ups * a
1019 dnidt(4) = -upr_ums * a
1020 dnidt(8) = -upr_ups * a
1022 a = (one-rr(i)*rr(i))
1023 ni(i,10) = a * ums_upt
1024 ni(i,12) = a * ums_umt
1025 ni(i,14) = a * ups_upt
1026 ni(i,16) = a * ups_umt
1029 dnidt(10) = a * u_m_s
1030 dnidt(14) = a * u_p_s
1031 dnids(10) = -a * u_p_t
1032 dnids(12) = -a * u_m_t
1035 dnidr(10) = a * ums_upt
1036 dnidr(12) = a * ums_umt
1037 dnidr(14) = a * ups_upt
1038 dnidr(16) = a * ups_umt
1040 a = (one-tt(i)*tt(i))
1041 ni(i,9) = a * umr_ums
1042 ni(i,11) = a * upr_ums
1043 ni(i,13) = a * umr_ups
1044 ni(i,15) = a * upr_ups
1049 dnidr(9) = -a * u_m_s
1050 dnidr(13) = -a * u_p_s
1052 dnids(9) = -a * u_m_r
1053 dnids(11) = -a * u_p_r
1056 dnidt(9) = a * umr_ums
1057 dnidt(11) = a * upr_ums
1058 dnidt(13) = a * umr_ups
1059 dnidt(15) = a * upr_ups
1069 dxdr(i) = dnidr(1)*xx(i,1) + dnidr(2)*xx(i,2) + dnidr(3)*xx(i,3)
1070 + + dnidr(4)*xx(i,4) + dnidr(5)*xx(i,5) + dnidr(6)*xx(i,6)
1071 + + dnidr(7)*xx(i,7) + dnidr(8)*xx(i,8)
1072 + + dnidr(9)*(xx(i,9) - xx(i,11)) + dnidr(10)*xx(i,10)
1073 + + dnidr(12)*xx(i,12) + dnidr(13)*(xx(i,13) - xx(i,15))
1074 + + dnidr(14)*xx(i,14) + dnidr(16)*xx(i,16)
1076 dxds(i) = dnids(1)*xx(i,1) + dnids(2)*xx(i,2) + dnids(3)*xx(i,3)
1077 + + dnids(4)*xx(i,4) + dnids(5)*xx(i,5) + dnids(6)*xx(i,6)
1078 + + dnids(7)*xx(i,7) + dnids(8)*xx(i,8)
1079 + + dnids(9)* (xx(i,9) - xx(i,13))
1080 + + dnids(10)*(xx(i,10) - xx(i,14))
1081 + + dnids(11)*(xx(i,11) - xx(i,15))
1082 + + dnids(12)*(xx(i,12) - xx(i,16))
1084 dxdt(i) = dnidt(1)*xx(i,1) + dnidt(2)*xx(i,2) + dnidt(3)*xx(i,3)
1085 + + dnidt(4)*xx(i,4) + dnidt(5)*xx(i,5) + dnidt(6)*xx(i,6)
1086 + + dnidt(7)*xx(i,7) + dnidt(8)*xx(i,8)
1087 + + dnidt(9)*xx(i,9) + dnidt(10)*(xx(i,10) - xx(i,12))
1088 + + dnidt(11)*xx(i,11) + dnidt(13)*xx(i,13)
1089 + + dnidt(14)*(xx(i,14) - xx(i,16)) + dnidt(15)*xx(i,15)
1093 dydr(i) = dnidr(1)*yy(i,1) + dnidr(2)*yy(i,2) + dnidr(3)*yy(i,3)
1094 + + dnidr(4)*yy(i,4) + dnidr(5)*yy(i,5) + dnidr(6)*yy(i,6)
1095 + + dnidr(7)*yy(i,7) + dnidr(8)*yy(i,8)
1096 + + dnidr(9)*(yy(i,9) - yy(i,11)) + dnidr(10)*yy(i,10)
1097 + + dnidr(12)*yy(i,12) + dnidr(13)*(yy(i,13) - yy(i,15))
1098 + + dnidr(14)*yy(i,14) + dnidr(16)*yy(i,16)
1100 dyds(i) = dnids(1)*yy(i,1) + dnids(2)*yy(i,2) + dnids(3)*yy(i,3)
1101 + + dnids(4)*yy(i,4) + dnids(5)*yy(i,5) + dnids(6)*yy(i,6)
1102 + + dnids(7)*yy(i,7) + dnids(8)*yy(i,8)
1103 + + dnids(9)* (yy(i,9) - yy(i,13))
1104 + + dnids(10)*(yy(i,10) - yy(i,14))
1105 + + dnids(11)*(yy(i,11) - yy(i,15))
1106 + + dnids(12)*(yy(i,12) - yy(i,16))
1108 dydt(i) = dnidt(1)*yy(i,1) + dnidt(2)*yy(i,2) + dnidt(3)*yy(i,3)
1109 + + dnidt(4)*yy(i,4) + dnidt(5)*yy(i,5) + dnidt(6)*yy(i,6)
1110 + + dnidt(7)*yy(i,7) + dnidt(8)*yy(i,8)
1111 + + dnidt(9)*yy(i,9) + dnidt(10)*(yy(i,10) - yy(i,12))
1112 + + dnidt(11)*yy(i,11) + dnidt(13)*yy(i,13)
1113 + + dnidt(14)*(yy(i,14) - yy(i,16)) + dnidt(15)*yy(i,15)
1117 dzdr(i) = dnidr(1)*zz(i,1) + dnidr(2)*zz(i,2) + dnidr(3)*zz(i,3)
1118 + + dnidr(4)*zz(i,4) + dnidr(5)*zz(i,5) + dnidr(6)*zz(i,6)
1119 + + dnidr(7)*zz(i,7) + dnidr(8)*zz(i,8)
1120 + + dnidr(9)*(zz(i,9) - zz(i,11)) + dnidr(10)*zz(i,10)
1121 + + dnidr(12)*zz(i,12) + dnidr(13)*(zz(i,13) - zz(i,15))
1122 + + dnidr(14)*zz(i,14) + dnidr(16)*zz(i,16)
1124 dzds(i) = dnids(1)*zz(i,1) + dnids(2)*zz(i,2) + dnids(3)*zz(i,3)
1125 + + dnids(4)*zz(i,4) + dnids(5)*zz(i,5) + dnids(6)*zz(i,6)
1126 + + dnids(7)*zz(i,7) + dnids(8)*zz(i,8)
1127 + + dnids(9)* (zz(i,9) - zz(i,13))
1128 + + dnids(10)*(zz(i,10) - zz(i,14))
1129 + + dnids(11)*(zz(i,11) - zz(i,15))
1130 + + dnids(12)*(zz(i,12) - zz(i,16))
1132 dzdt(i) = dnidt(1)*zz(i,1) + dnidt(2)*zz(i,2) + dnidt(3)*zz(i,3)
1133 + + dnidt(4)*zz(i,4) + dnidt(5)*zz(i,5) + dnidt(6)*zz(i,6)
1134 + + dnidt(7)*zz(i,7) + dnidt(8)*zz(i,8)
1135 + + dnidt(9)*zz(i,9) + dnidt(10)*(zz(i,10) - zz(i,12))
1136 + + dnidt(11)*zz(i,11) + dnidt(13)*zz(i,13)
1137 + + dnidt(14)*(zz(i,14) - zz(i,16)) + dnidt(15)*zz(i,15)
1142 drdx(i)=dyds(i)*dzdt(i)-dzds(i)*dydt(i)
1143 drdy(i)=dzds(i)*dxdt(i)-dxds(i)*dzdt(i)
1144 drdz(i)=dxds(i)*dydt(i)-dyds(i)*dxdt(i)
1146 dsdz(i)=dxdt(i)*dydr(i)-dydt(i)*dxdr(i)
1147 dsdy(i)=dzdt(i)*dxdr(i)-dxdt(i)*dzdr(i)
1148 dsdx(i)=dydt(i)*dzdr(i)-dzdt(i)*dydr(i)
1150 dtdx(i)=dydr(i)*dzds(i)-dzdr(i)*dyds(i)
1151 dtdy(i)=dzdr(i)*dxds(i)-dxdr(i)*dzds(i)
1152 dtdz(i)=dxdr(i)*dyds(i)-dydr(i)*dxds(i)
1154 det(i) = dxdr(i) * drdx(i)
1155 . + dydr(i) * drdy(i)
1156 . + dzdr(i) * drdz(i)