30 SUBROUTINE i25cor3t(JLT ,X ,IRECT ,NSV ,CAND_E ,
32 2 X3 ,X4 ,Y1 ,Y2 ,Y3 ,
33 3 Y4 ,Z1 ,Z2 ,Z3 ,Z4 ,
34 4 XI ,YI ,ZI ,STIF ,IX1 ,
35 5 IX2 ,IX3 ,IX4 ,NSN ,GAP_S ,
36 6 GAP_M ,GAPV ,CURV_MAX,ITYP ,NIN ,
37 7 V ,IGAP ,GAP_S_L ,GAP_M_L,MSEGTYP,
38 8 ETYP ,ICODT ,ISKEW ,IBC ,DRAD ,
48#include "implicit_f.inc"
60 INTEGER IRECT(4,*), NSV(*), CAND_E(*), CAND_N(*),
61 . JLT,IDT, NOINT, NSN ,ITYP, NIN, IGAP, MSEGTYP(*), ICODT(*), ISKEW(*)
62 INTEGER IX1(MVSIZ), IX2(MVSIZ), IX3(MVSIZ), IX4(MVSIZ),
63 . ETYP(MVSIZ), IBC(MVSIZ)
65 my_real ,
INTENT(IN) :: DGAPLOAD ,DRAD
67 . X(3,*), V(3,*), GAPV(*), GAP_S(*), GAP_M(*),CURV_MAX(*),
68 . GAP_S_L(*), GAP_M_L(*)
71 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz),
72 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
73 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
74 . xi(mvsiz), yi(mvsiz), zi(mvsiz), stif(mvsiz)
78 INTEGER I ,J ,IL, L, NN, IG,JFT,IADD,
79 . ibcs, isks, ibcm(4), iskm(4)
83 . vx,vy,vz,vxi,vyi,vzi,
84 . vx1,vx2,vx3,vx4,vy1,vy2,vy3,vy4,vz1,vz2,vz3,vz4,pmax
92 gapv(i)=gap_s(j) + gap_m(cand_e(i))
95 gapv(i)=xrem(9,ig) + gap_m(cand_e(i))
97 gapv(i)=
max(drad,gapv(i)+dgapload)
103 gapv(i)=gap_s(j) + gap_m(cand_e(i))
104 gapv(i)=
min(gap_s_l(j)+gap_m_l(cand_e(i)),gapv(i))
107 gapv(i)=xrem(9,ig) + gap_m(cand_e(i))
108 gapv(i)=
min(xrem(10,ig)+gap_m_l(cand_e(i)),gapv(i))
110 gapv(i)=
max(drad,gapv(i)+dgapload)
160 vx=
max(
max(vx1,vx2,vx3,vx4)-vxi,vxi-
min(vx1,vx2,vx3,vx4))
165 vy=
max(
max(vy1,vy2,vy3,vy4)-vyi,vyi-
min(vy1,vy2,vy3,vy4))
170 vz=
max(
max(vz1,vz2,vz3,vz4)-vzi,vzi-
min(vz1,vz2,vz3,vz4))
171 vdt(i) = (vx+vy+vz)*dt1
175 gapv(i) = gapv(i) + curv_max(cand_e(i)) + vdt(i)
176 gapv(i) = onep01*gapv(i)
191 ibcm(1)=icodt(ix1(i))
192 ibcm(2)=icodt(ix2(i))
193 ibcm(3)=icodt(ix3(i))
194 ibcm(4)=icodt(ix4(i))
196 IF((ibcs ==1.OR.ibcs ==3.OR.ibcs ==5.OR.ibcs ==7).AND.
197 . (ibcm(1)==1.OR.ibcm(1)==3.OR.ibcm(1)==5.OR.ibcm(1)==7).AND.
198 . (ibcm(2)==1.OR.ibcm(2)==3.OR.ibcm(2)==5.OR.ibcm(2)==7).AND.
200 . (ibcm(4)==1.OR.ibcm(4)==3.OR.ibcm(4)==5.OR.ibcm(4)==7))
THEN
203 IF((ibcs ==2.OR.ibcs ==3.OR.ibcs ==6.OR.ibcs ==7).AND.
204 . (ibcm(1)==2.OR.ibcm(1)==3.OR.ibcm(1)==6.OR.ibcm(1)==7).AND.
205 . (ibcm(2)==2.OR.ibcm(2)==3.OR.ibcm(2)==6.OR.ibcm(2)==7).AND.
206 . (ibcm(3)==2.OR.ibcm(3)==3.OR.ibcm(3)==6.OR.ibcm(3)==7).AND.
207 . (ibcm(4)==2.OR.ibcm(4)==3.OR.ibcm(4)==6.OR.ibcm(4)==7))
THEN
210 IF((ibcs ==4.OR.ibcs ==5.OR.ibcs ==6.OR.ibcs ==7).AND.
211 . (ibcm(1)==4.OR.ibcm(1)==5.OR.ibcm(1)==6.OR.ibcm(1)==7).AND.
212 . (ibcm(2)==4.OR.ibcm(2)==5.OR.ibcm(2)==6.OR.ibcm(2)==7).AND.
213 . (ibcm(3)==4.OR.ibcm(3)==5.OR.ibcm(3)==6.OR.ibcm(3)==7).AND.
214 . (ibcm(4)==4.OR.ibcm(4)==5.OR.ibcm(4)==6.OR.ibcm(4)==7))
THEN
subroutine i25cor3t(jlt, x, irect, nsv, cand_e, cand_n, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, stif, ix1, ix2, ix3, ix4, nsn, gap_s, gap_m, gapv, curv_max, ityp, nin, v, igap, gap_s_l, gap_m_l, msegtyp, etyp, icodt, iskew, ibc, drad, dgapload)