41 . X ,RTRANS ,LSUBMODEL)
55#include "implicit_f.inc"
64 INTEGER ,
DIMENSION(LISKN,*) ,
INTENT(IN) :: ISKN
65 INTEGER ,
DIMENSION(NUMNOD) ,
INTENT(IN) :: ITABM1
66 my_real ,
DIMENSION(3,NUMNOD) ,
INTENT(IN) :: x
67 my_real ,
DIMENSION(LSKEW,*) ,
INTENT(IN) :: skew
68 my_real ,
DIMENSION(NTRANSF,*) ,
INTENT(IN) :: rtrans
69 TYPE (UNIT_TYPE_) ,
INTENT(IN) :: UNITAB
71 TYPE (BOX_) ,
DIMENSION(NBBOX) :: IBOX
75 INTEGER I,II,J,UID,LEN,BOXID,IUNIT,FLAGUNIT,
76 . iad,nbox,nbox_rect,nbox_cyl,nbox_spher,nbox_box,nlist
78 INTEGER :: IWORK(70000)
79 INTEGER INDEX(NBBOX*3),IX1(NBBOX),IX2(NBBOX)
80 INTEGER,
DIMENSION(:) ,
ALLOCATABLE :: BUFTMP,IBOXTMP
81 CHARACTER(LEN=NCHARKEY) :: KEY,KEY2
82 CHARACTER(nchartitle) :: TITR,MESS
83 LOGICAL :: IS_AVAILABLE
85 DATA mess/
'BOX DEFINITION '/
89 INTEGER LISTCNT,NBOXLST
121 nbox = nbox_rect + nbox_cyl + nbox_spher + nbox_box
125 CALL my_alloc(buftmp ,len)
129 . ibox ,iad ,nbox_spher,itabm1 ,x ,
130 . rtrans ,unitab ,lsubmodel )
133 . ibox ,iad ,nbox_cyl ,itabm1 ,x ,
134 . rtrans ,unitab ,lsubmodel )
137 . ibox ,iad ,nbox_rect ,iskn ,skew ,
138 . itabm1 ,x ,rtrans ,unitab ,lsubmodel)
145 CALL my_alloc (iboxtmp ,nbox )
146 iboxtmp(1:nbox) = ibox(1:nbox)%ID
152 IF (nbox_box > 0)
THEN
155 IF (ibox(i)%TYPE == 0)
THEN
156 nlist = ibox(i)%NBOXBOX
160 nlist = nboxlst(ibox(i)%IBOXBOX,nlist ,iboxtmp ,nbbox,
161 . buftmp ,buftmp(1+nbbox),buftmp(1+2*nbbox),
164 ibox(i)%NBOXBOX = nlist
166 ibox(iad)%NBOXBOX = 0
172 IF (
ALLOCATED(iboxtmp))
DEALLOCATE (iboxtmp)
173 IF (
ALLOCATED(buftmp) )
DEALLOCATE (buftmp )
subroutine hm_read_box(ibox, unitab, itabm1, iskn, skew, x, rtrans, lsubmodel)
subroutine read_box_cyl(ibox, iad, nbox, itabm1, x, rtrans, unitab, lsubmodel)
subroutine read_box_rect(ibox, iad, nbox, iskn, skew, itabm1, x, rtrans, unitab, lsubmodel)
subroutine read_box_spher(ibox, iad, nbox, itabm1, x, rtrans, unitab, lsubmodel)