34 1 X ,V ,IRECT ,NSV ,STFN ,
35 2 NMN ,NRTM ,NSN ,CAND_E ,CAND_N ,
36 3 GAP ,NOINT ,II_STOK ,MULNSN ,BMINMA ,
37 4 MARGE ,CURV_MAX,PMAX_GAP,VMAXDT ,
38 5 ESHIFT ,NIN ,STF ,GAP_S ,
39 6 NSNR ,NCONT ,GAP_M ,ITASK ,BGAPSMX ,
40 7 I_MEM ,PENE_OLD,ITAB ,NBINFLG ,MBINFLG ,
42 9 FLAGREMNODE,KREMNOD,REMNOD ,
43 A IGAP ,GAP_S_L ,GAP_M_L ,ICODT ,ISKEW ,
53#include "implicit_f.inc"
62 INTEGER NMN, NRTM, NSN, NOINT,IDT,NIN, NSNR
63 INTEGER IRECT(4,*),NSV(*),ITASK,ILEV, IGAP
64 INTEGER CAND_E(*),CAND_N(*),MSEGTYP(*)
65 INTEGER MULNSN,ESHIFT,NCONT,I_MEM,
66 . II_STOK,ITAB(*),NBINFLG(*),MBINFLG(*),
67 . FLAGREMNODE,KREMNOD(*),REMNOD(*),ICODT(*),ISKEW(*)
69 my_real ,
INTENT(IN) :: DGAPLOAD ,DRAD
71 . GAP,PMAX_GAP,VMAXDT,
72 . BMINMA(6),CURV_MAX(NRTM),BGAPSMX, MARGE
74 . x(3,*), v(3,*), stfn(*),pene_old(5,nsn),
75 . stf(*), gap_s(*), gap_m(*), gap_s_l(*), gap_m_l(*)
79 INTEGER I, J, IP0, IP1, MAXSIZ,
80 . loc_proc, n, isznsnr,
86INTEGER (KIND=8) :: NBX8,NBY8,NBZ8,RES8,LVOXEL8
118 . ((bminma(1)-bminma(4))*(bminma(2)-bminma(5))
119 . +(bminma(2)-bminma(5))*(bminma(3)-bminma(6))
120 . +(bminma(3)-bminma(6))*(bminma(1)-bminma(4))))
127 nbx = nint(aaa*(bminma(1)-bminma(4)))
128 nby = nint(aaa*(bminma(2)-bminma(5)))
129 nbz = nint(aaa*(bminma(3)-bminma(6)))
137 res8=(nbx8+2)*(nby8+2)*(nbz8+2)
140 IF(res8 > lvoxel8)
THEN
142 aaa = aaa/((nbx8+2)*(nby8+2)*(nbz8+2))
144 nbx = int((nbx+2)*aaa)-2
145 nby = int((nby+2)*aaa)-2
146 nbz = int((nbz+2)*aaa)-2
155 res8=(nbx8+2)*(nby8+2)*(nbz8+2)
157 IF(res8 > lvoxel8)
THEN
158 nbx =
min(100,
max(nbx8,1))
159 nby =
min(100,
max(nby8,1))
160 nbz =
min(100,
max(nbz8,1))
164 DO i=1,(nbx+2)*(nby+2)*(nbz+2)
172 1 nsn ,nsnr ,isznsnr ,i_mem ,vmaxdt ,
173 2 irect ,x ,stf ,stfn ,xyzm ,
174 3 nsv ,ii_stok ,cand_n ,eshift ,cand_e ,
175 4 mulnsn ,noint ,v ,bgapsmx ,
176 5
voxel1 ,nbx ,nby ,nbz ,pmax_gap ,
177 6 nrtm ,gap_s ,gap_m ,marge ,curv_max ,
178 7 nin ,itask ,pene_old,itab ,nbinflg ,
179 8 mbinflg ,ilev ,msegtyp ,
180 9 flagremnode,kremnod,remnod ,
181 a igap ,gap_s_l ,gap_m_l ,icodt ,iskew ,
subroutine i25buce(x, v, irect, nsv, stfn, nmn, nrtm, nsn, cand_e, cand_n, gap, noint, ii_stok, mulnsn, bminma, marge, curv_max, pmax_gap, vmaxdt, eshift, nin, stf, gap_s, nsnr, ncont, gap_m, itask, bgapsmx, i_mem, pene_old, itab, nbinflg, mbinflg, ilev, msegtyp, flagremnode, kremnod, remnod, igap, gap_s_l, gap_m_l, icodt, iskew, drad, dgapload)
subroutine i25trivox(nsn, nsnr, isznsnr, i_mem, vmaxdt, irect, x, stf, stfn, xyzm, nsv, ii_stok, cand_n, eshift, cand_e, mulnsn, noint, v, bgapsmx, voxel, nbx, nby, nbz, pmax_gap, nrtm, gap_s, gap_m, marge, curv_max, nin, itask, pene_old, itab, nbinflg, mbinflg, ilev, msegtyp, flagremnode, kremnod, remnod, igap, gap_s_l, gap_m_l, icodt, iskew, drad, dgapload)