46 USE reader_old_mod ,
ONLY : line
47 USE user_id_mod ,
ONLY : id_limit
51#include "implicit_f.inc"
60 TYPE (UNIT_TYPE_),
INTENT(IN) :: UNITAB
62 INTEGER,
INTENT(IN) :: NUMNUSR
63 INTEGER,
INTENT(IN) :: IS_DYNA
70 INTEGER,
DIMENSION(:),
ALLOCATABLE :: SUB_NOD,UID_NOD
71 INTEGER,
DIMENSION(:),
ALLOCATABLE :: ITAB
72 my_real,
DIMENSION(:,:),
ALLOCATABLE :: x
73 real*8,
DIMENSION(:,:),
ALLOCATABLE :: hm_x
74 real*8,
DIMENSION(:),
ALLOCATABLE :: dmerge
80 ALLOCATE (itab(numnusr+numcnod),stat=stat)
81 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'ITAB')
82 ALLOCATE (x(3,numnusr+numcnod),stat=stat)
83 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'X')
84 ALLOCATE (sub_nod(numnusr+numcnod),stat=stat)
85 IF (stat /= 0)
CALL ancmsg(msgid
'SUB_NOD')
86 ALLOCATE (uid_nod(numnusr+numcnod),stat=stat)
87 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'UID_NOD')
88 ALLOCATE (hm_x(3,numnusr+numcnod),stat=stat)
89 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'HM_X')
90 ALLOCATE (dmerge(numcnod),stat=stat)
91 IF (stat /= 0)
CALL ancmsg(msgid=268,anmode=aninfo,msgtype=msgerror,c1=
'DMERGE')
92 sub_nod(1:numnusr+numcnod) = 0
93 uid_nod(1:numnusr+numcnod) = 0
94 dmerge(1:numcnod) = zero
98 CALL cpp_nodes_read(itab,hm_x,dmerge,sub_nod,uid_nod)
104 DO i=1,numnusr+numcnod
110 IF(sub_nod(n) /= 0)
THEN
111 IF(uid_nod(n) == 0 .AND. lsubmodel(sub_nod(n))%UID /= 0) uid_nod(n) = lsubmodel(sub_nod(n))%UID
113 IF ( itab(n) > id_limit%GLOBAL )
THEN
114 CALL ancmsg(msgid=509,anmode=aninfo,msgtype=msgerror,i1=itab(n),c1=line,c2=
'/NODE')
119 IF(uid_nod(n) /= uid )
THEN
123 IF (unitab%UNIT_ID(j) == uid)
THEN
124 fac_l = unitab%FAC_L(j)
129 IF (uid/=0 .AND. iflagunit==0 .AND. i <= numnusr)
THEN
130 CALL ancmsg(msgid=643,anmode=aninfo,msgtype=msgerror,i1=uid,c1=
'/NODE')
131 ELSEIF (uid/=0 .AND. iflagunit==0 .AND. i > numnusr)
THEN
132 CALL ancmsg(msgid=643,anmode=aninfo,msgtype=msgerror,i1=uid,c1=
'/CNODE')
135 x(1,n) = x(1,n)*fac_l
136 x(2,n) = x(2,n)*fac_l
137 x(3,n) = x(3,n)*fac_l
139 IF(
ALLOCATED(sub_nod))
DEALLOCATE(sub_nod)
140 IF(
ALLOCATED(uid_nod))
DEALLOCATE(uid_nod)
141 IF(
ALLOCATED(hm_x))
DEALLOCATE(hm_x)
142 IF(
ALLOCATED(dmerge))
DEALLOCATE(dmerge)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)