45!||====================================================================
47 . ISKN ,IKINE ,IDDLEVEL,NOM_OPT ,ITAGND,
64#include "implicit_f.inc"
80 INTEGER IRBE2(NRBE2L,*), LRBE2(*), ITAB(*),ITABM1(*),
82 . ikine(*),iddlevel,itagnd(*),icdns10(*)
83 INTEGER NOM_OPT(LNOPT1,*)
85 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
86 TYPE(SUBMODEL_DATA),
INTENT(IN)::LSUBMODEL(*)
90 INTEGER , K, NUSER, NM,M,
91 . ISK, INGU, IGM, J, P,IAD,NS,J6(6),,
93 . ikine1(3*numnod),irad,nrb,nmove,sub_index,nsl
94 INTEGER,
DIMENSION(NUMNOD) :: ITAGM,ITAGIC
95 CHARACTER(LEN=NCHARTITLE) :: TITR
101 INTEGER USR2SYS,NODGRNR6
102 INTEGER FMAIN(PARASIZ)
106 DATA mess/
'RBE2 RIGID BODY '/
121 IF (ipri<5)
WRITE(iout,1201)
141 . submodel_index = sub_index,
142 . option_titr = titr)
145 CALL fretitl(titr,nom_opt(lnopt1-ltitr+1,i),ltitr)
148 CALL hm_get_intv(
'independentnode',nm,is_available,lsubmodel)
149 CALL hm_get_intv(
'VX',j6(1),is_available,lsubmodel)
150 CALL hm_get_intv(
'VY',j6(2),is_available,lsubmodel)
151 CALL hm_get_intv(
'VZ',j6(3),is_available,lsubmodel)
152 CALL hm_get_intv(
'WX',j6(4),is_available,lsubmodel)
153 CALL hm_get_intv(
'WY',j6(5),is_available,lsubmodel)
154 CALL hm_get_intv(
'WZ',j6(6),is_available,lsubmodel)
155 CALL hm_get_intv(
'SKEW_CSID',isk,is_available,lsubmodel)
156 CALL hm_get_intv(
'dependentnodeset',ingu,is_available,lsubmodel)
157 CALL hm_get_intv(
'Iflag',irad,is_available,lsubmodel)
159 IF (isk == 0 .and. sub_index > 0) isk = lsubmodel(sub_index)%SKEW
161 m = usr2sys(nm,itabm1,mess,nuser)
162 ic1=j6(1)*4 +j6(2)*2 +j6(3)
163 ic2=j6(4)*4 +j6(5)*2 +j6(6)
165 IF (ic==0) ic =7*512+7*64
170 ns = nodgrnr6(m ,ingu ,igm ,lrbe2(iad+1),igrnod,
175 IF (itagnd(m)/=0)
THEN
186 IF ((j6(1)+j6(2)+j6(3)+j6(4)+j6(5)+j6(6))==0)
THEN
196 IF(isk==iskn(4,jj+1))
THEN
213 IF (iddlevel == 0)
THEN
217 .
CALL kinset(2048,itab(lrbe2(j+k)),ikine(lrbe2(j+k)),idir,isk,
218 . ikine1(lrbe2(j+k)))
225 WRITE(iout,1100) nuser,nm,j6,isk,ns,irad
227 WRITE(iout,1200) nuser,nm,j6,isk,ns,irad
243 IF (itagm(ns)==0)
THEN
245 ELSEIF (itagm(ns)/=m)
THEN
248 itagic(ns) = itagic(ns) + ic
257 CALL rbe2modif_nd(nsl,lrbe2(iad+1),itagnd,icdns10,nuser,itab,
259 IF (irbe2(5,i)>nsl)
THEN
260 nmove = nmove+irbe2(5,i)-nsl
267 . anmode=aninfo_blind_1,
272 IF (iddlevel > 0)
THEN
277 IF (nspmd > 1.AND.ns>0)
THEN
281 IF (nlocal(lrbe2(iad+j),p)/=0)
THEN
290 IF (fmain(p)==1)
THEN
301 .
' RIGID ELEMENT (RBE2) '/
302 .
' ---------------------- ')
303 1100
FORMAT(/10x,
'NUMBER . . . . . . . . . . .',i10,/,
304 . /10x,'independent node number . .
',I10,
305 . /10X,'dof( x,y,z, xx,yy,zz). . . .
',3I1,2X,3I1
306 . /10X,'skew number . . . . . . . . .
',I10,
307 . /10X,'number of dependent nodes. . .
',I10,
308 . /10X,'formulation flag . . . . . .
',I10,//)
309 1201 FORMAT(' rbe2_id ind._node ref_dof skew_id
#SECONDARY IFLAG'/)
310 1200
FORMAT(3x,2i10,3x,3i1,1x,3i1,3i10)
312!||====================================================================
326!||====================================================================
339#include "implicit_f.inc"
343#include "param_c.inc"
344#include "com04_c.inc"
351 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
352 TYPE(SUBMODEL_DATA),
INTENT(IN)::LSUBMODEL(*)
356 INTEGER I,IGU,IGS,NN, NUSER, NRB
357 CHARACTER(LEN=NCHARTITLE) :: TITR
377 . option_titr = titr)
379 CALL hm_get_intv(
'dependentnodeset',igu,is_available,lsubmodel)
380 igs = ngr2usrn(igu,igrnod,ngrnod,nn)
399#include "implicit_f.inc"
403#include "com04_c.inc"
404#include "param_c.inc"
405#include "tabsiz_c.inc"
409 INTEGER IRBE2(NRBE2L,*), LRBE2(*),NC
413 INTEGER I, N, , NSL,M,IC0,NZ,
416 INTEGER LCOPY(),ICOPY(NRBE2L,NRBE2),
417 . IORDER(NRBE2),INDICE(NRBE2),ITAG1()
418 INTEGER,
DIMENSION(:),
ALLOCATABLE :: ITAG,IAD_N
421 ALLOCATE(itag(numnod))
422 ALLOCATE(iad_n(numnod+1))
438 CALL setiadm(itag1,nz,iad_n,irbe2)
446 IF (itag(ns)>i) nc=nc+1
447 DO k=iad_n(ns),iad_n(ns+1)-1
448 IF (itag1(k)>i) nc=nc+1
470 IF (itag(ns)==0) cycle
478 iorder(i1) = iorder(ic)
482 indice(itag(ns)) = i1
483 IF (it==nit) ierr1 = irbe2(2,i)
485 DO k=iad_n(ns),iad_n(ns+1)-1
492 iorder(i1) = iorder(ic)
495 indice(itag1(k)) = i1
505 IF (ierr1>0) nc=-ierr1
512 icopy(j,i) = irbe2(j,i)
515 lcopy(iad+j) = lrbe2(iad+j)
527 irbe2(j,n) = icopy(j,i)
530 lrbe2(iad1+j)=lcopy(iad+j)
534 DEALLOCATE(itag,iad_n)
549#include "implicit_f.inc"
553#include "com04_c.inc"
554#include "param_c.inc"
558 INTEGER IRBE2(NRBE2L,*), IADM(*),NZ,IAD_N(*)
565 INTEGER,
DIMENSION(:),
ALLOCATABLE ::
567 ALLOCATE(itag(numnod))
610#include "implicit_f.inc"
614#include "com04_c.inc"
615#include "param_c.inc"
616#include "tabsiz_c.inc"
620 INTEGER IRBE2(NRBE2L,*), LRBE2(*)
624 INTEGER I, N, IM1,NS,J,NSL,IAD,M,IH1,K,NZ,II,IAD1
626 INTEGER ITAG1(NRBE2),
627 . LCOPY(SLRBE2),ICOPY(NRBE2L,NRBE2)
628 INTEGER,
DIMENSION(:),
ALLOCATABLE :: ITAG, IAD_N
631 ALLOCATE(itag(numnod))
632 ALLOCATE(iad_n(numnod+1))
647 CALL setiadm(itag1,nz,iad_n,irbe2)
658 irbe2(9,i) =
max(irbe2(9,i),ih1)
659 DO k=iad_n(ns),iad_n(ns+1)-1
662 irbe2(9,i) =
max(irbe2(9,i),ih1)
669 nhrbe2 =
max(nhrbe2,irbe2(9,i))
672 IF (nhrbe2==0)
RETURN
679 icopy(j,i) = irbe2(j,i)
682 lcopy(iad+j) = lrbe2(iad+j)
690 IF (icopy(9,i)/=n) cycle
697 irbe2(j,ii) = icopy(j,i)
700 lrbe2(iad1+j)=lcopy(iad+j)
706 DEALLOCATE(itag,iad_n)
722 SUBROUTINE inirbe2(IRBE2 ,LRBE2 ,ITAB ,X ,MS ,
723 . IN ,STIFN ,STIFR ,TOTMAS,XGT ,
724 . YGT ,ZGT ,B1 ,B2 ,B3 ,
725 . B5 ,B6 ,B9 ,NOM_OPT,ITAGND )
731#include "implicit_f.inc"
735#include "scr17_c.inc"
736#include "com01_c.inc"
737#include "com04_c.inc"
738#include "units_c.inc"
739#include "param_c.inc"
740#include "scr03_c.inc"
744 INTEGER IRBE2(NRBE2L,*), LRBE2(*),ITAB(*),ITAGND(*)
746 . X(3,*),MS(*),IN(*),STIFN(*) ,STIFR(*),TOTMAS,
747 . B1, B2, B3, B5, B6, B9,XGT ,YGT ,ZGT
748 INTEGER NOM_OPT(LNOPT1,*)
752 INTEGER I, J, NSL,M, NC,NS,ICT,ICR,IC,IAD,ID,J6(6),IRAD
754 my_real xx, xy, xz, yy, yz, zz,ixx,iyy,izz,dd,masrb,inrb,ins
755 CHARACTER(LEN=NCHARTITLE) :: TITR
758 CALL reorbe2(irbe2 ,lrbe2 ,nc )
766 ELSEIF(nhrbe2>0)
THEN
767 WRITE(iout,1200) nhrbe2
775 icr=(ic-512*(ict))/64
821 WRITE(iout,1100) irbe2(2,i),irbe2(9,i),m,j6,irbe2(7,i),nsl
829 nom_opt(1,i) = irbe2(2,i)
839 IF (itagnd(ns)/=0) cycle
841 stifn(m)= stifn(m)+stifn(ns)
847 stifn(m)= stifn(m)+stifn(ns)
851 icr=(ic-512*(ict))/64
852 IF (iroddl==0) icr =0
853 IF (icr>0.OR.irad==0)
THEN
858 stifr(m)= stifr(m)+stifr(ns)
865 IF (itagnd(ns)/=0) cycle
866 xx=(x(1,ns)-x(1,m))*(x(1,ns)-x(1,m))
867 yy=(x(2,ns)-x(2,m))*(x(2,ns)-x(2,m))
868 zz=(x(3,ns)-x(3,m))*(x(3,ns)-x(3,m))
872 ins = (ixx+iyy+izz)*ms(ns)
874 IF (ict==7) inrb = inrb+ins
876 stifr(m)= stifr(m)+dd*stifn(ns)
881 xx=(x(1,ns)-x(1,m))*(x(1,ns)-x(1,m))
882 yy=(x(2,ns)-x(2,m))*(x(2,ns)-x(2,m))
883 zz=(x(3,ns)-x(3,m))*(x(3,ns)-x(3,m))
887 ins = (ixx+iyy+izz)*ms(ns)
889 IF (ict==7) inrb = inrb+ins
891 stifr(m)= stifr(m)+dd*stifn(ns)
909 xx=(x(1,ns))*(x(1,ns))
911 xz=(x(1,ns))*(x(3,ns))
912 yy=(x(2,ns))*(x(2,ns))
913 yz=(x(2,ns))*(x(3,ns))
914 zz=(x(3,ns))*(x(3,ns))
915 b1 = b1 -(yy+zz)*ms(ns)
918 b5 = b5 -(zz+xx)*ms(ns)
920 b9 = b9 - (xx+yy)*ms(ns)
921 xgt = xgt - ms(ns)*x(1,ns)
922 ygt = ygt - ms(ns)*x(2,ns)
923 zgt = zgt - ms(ns)*x(3,ns)
926 icr=(ic-512*(ict))/64
927 IF (icr==7.AND.iroddl>0)
THEN
938 totmas = totmas - masrb
944 . nom_opt(lnopt1-ltitr+1,i),ltitr)
947 IF(ms(m)<=1.0e-25)
THEN
950 . anmode=aninfo_blind_1,
958 WRITE(iout,1600) irbe2(2,i),itab(irbe2(3,i)),ms(m)
960 WRITE(iout,1400) irbe2(2,i),itab(irbe2(3,i)),ms(m),in(m)
967 .
' RIGID ELEMENT(RBE2) WITH HIERARCHY LEVEL AFTER REORDERING:'/
968 .
' --------------------------------------------------------- ')
969 1100
FORMAT(/10x,
'NUMBER . . . . . . . . . . .',i10,/,
970 . /10x,
'HIERARCHY LEVEL. . . . . . ',i10,
971 . /10x,
'INDEPENDENT NODE NUMBER. . .',i10,
972 . /10x,
'DOF ( X,Y,Z, XX,YY,ZZ). . . . ',3i1,2x,3i1
973 . /10x,
'SKEW NUMBER (LOCAL) . . . . .',i10,
974 . /10x,
'NUMBER OF DEPENDENT NODES . .',i10,//)
975 1200
FORMAT(/10x,
'RBE2 HIERARCHY LEVEL . . . . =',i5,2x,//)
977 .
' RIGID ELEMENT(RBE2) INDEPENDENT NODE MASSES AND INERTIA (NEW):'/
978 .
' --------------------------------------------------------- ')
979 1400
FORMAT(/10x,
'NUMBER . . . . . . . . . . .',i10,/,
980 . /10x,
'INDEPENDENT NODE NUMBER. . .',i10,
981 . /10x,
'NEW MASS. . . . . . . . . . .',1pg20.13,
982 . /10x,
'NEW SPHERIC INERTIA. . . . . ',1pg20.13,//)
983 1600
FORMAT(/10x,
'NUMBER . . . . . . . . . . .',i10,/,
984 . /10x,
'INDEPENDENT NODE NUMBER. . .',i10,
985 . /10x,
'NEW MASS. . . . . . . . . . .',1pg20.13,//)
989!||--- called by ------------------------------------------------------
1009#include "implicit_f.inc"
1013#include "com04_c.inc"
1018 TYPE(SUBMODEL_DATA),
INTENT(IN)::LSUBMODEL(*)
1022 INTEGER I, NUSER, NM,
1023 . isk, ingu, j6(6),irad
1024 CHARACTER(LEN=NCHARTITLE) :: TITR
1025 LOGICAL IS_AVAILABLE
1038 . option_id = nuser,
1039 . option_titr = titr)
1041 CALL hm_get_intv(
'independentnode',nm,is_available,lsubmodel)
1042 CALL hm_get_intv(
'VX',j6(1),is_available,lsubmodel)
1043 CALL hm_get_intv(
'VY',j6(2),is_available,lsubmodel)
1044 CALL hm_get_intv(
'VZ',j6(3),is_available,lsubmodel)
1045 CALL hm_get_intv(
'WX',j6(4),is_available,lsubmodel)
1046 CALL hm_get_intv(
'WY',j6(5),is_available,lsubmodel)
1047 CALL hm_get_intv(
'WZ',j6(6),is_available,lsubmodel)
1048 CALL hm_get_intv(
'SKEW_CSID',isk,is_available,lsubmodel)
1049 CALL hm_get_intv(
'dependentnodeset',ingu,is_available,lsubmodel)
1050 CALL hm_get_intv(
'Iflag',irad,is_available,lsubmodel)
1052 IF ((j6(1)+j6(2)+j6(3)+j6(4)+j6(5)+j6(6))==0)
THEN
1057 icr = j6(4) + j6(5) + j6(6)
1058 IF (irad == 0) icr = 1
1072 2 IXTG ,IPARG ,ISOLOFF,ISHEOFF,
1073 3 ITRUOFF,IPOUOFF,IRESOFF,ITRIOFF,IGRNRB2,
1079 use element_mod ,
only : nixs,nixc,nixtg,nixt,nixp,nixr
1085#include "implicit_f.inc"
1089#include "com04_c.inc"
1090#include "units_c.inc"
1091#include "scr03_c.inc"
1092#include "param_c.inc"
1096 INTEGER ISOLOFF(*), ISHEOFF(*), ITRIOFF(*),ITRUOFF(*),
1097 . IPOUOFF(*), IRESOFF(*),
1098 . IXS(NIXS,*), IXC(NIXC,*), IXTG(NIXTG,*), IXT(NIXT,*),
1099 . IXP(NIXP,*), IXR(NIXR,*),
1100 . IPARG(NPARG,*),IGRNRB2(*),
1103 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
1107 INTEGER I, II, NR, IG,
1108 . NSN, NALL, IRBYON,M,IC,IC0,
1113 IF (nrbe2==0)
RETURN
1117 WRITE(iout,*)
' LIST OF DEACTIVATED ELEMENTS FROM RBE2'
1118 WRITE(iout,*)
' ----------------------------------------------'
1128 IF(ig>0.AND.ic==ic0)
THEN
1129 nsn = igrnod(ig)%NENTITY
1135 itag(igrnod(ig)%ENTITY(i))=1
1139 nall = itag(ixt(2,ii)) * itag(ixt(3,ii))
1141 itruoff(ii) = irbyon
1146 nall = itag(ixp(2,ii)) * itag(ixp(3,ii))
1148 ipouoff(ii) = irbyon
1153 nall = itag(ixr(2,ii)) * itag(ixr(3,ii))
1155 iresoff(ii) = irbyon
1179 2 IGRNRB2,ISOLOFF,ISHEOFF,ITRIOFF,ITABM1,
1188 use element_mod ,
only : nixs,nixc,nixtg
1194#include "implicit_f.inc"
1198#include "com04_c.inc"
1202 INTEGER IGRNRB2(*),ISOLOFF(*),ISHEOFF(*),ITRIOFF(*),
1203 . IXS(NIXS,*), IXC(NIXC,*), IXTG(NIXTG,*),ITABM1(*)
1205 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
1206 TYPE(SUBMODEL_DATA),
INTENT(IN)::LSUBMODEL(*)
1210 INTEGER NR, I, IGS,NSN,II,NALL,
1213 CHARACTER(LEN=NCHARTITLE) ::
1214 CHARACTER :: MESS*40
1216 LOGICAL IS_AVAILABLE
1229 . option_id = nuser,
1230 . option_titr = titr)
1232 CALL hm_get_intv(
'independentnode',nm,is_available,lsubmodel)
1233 CALL hm_get_intv(
'VX',j6(1),is_available,lsubmodel)
1234 CALL hm_get_intv(
'VY',j6(2),is_available,lsubmodel)
1235 CALL hm_get_intv(
'VZ',j6(3),is_available,lsubmodel)
1236 CALL hm_get_intv(
'WX',j6(4),is_available,lsubmodel)
1237 CALL hm_get_intv(
'WY',j6(5),is_available,lsubmodel)
1238 CALL hm_get_intv(
'WZ',j6(6),is_available,lsubmodel)
1239 CALL hm_get_intv(
'dependentnodeset',igu,is_available,lsubmodel)
1241 m = usr2sys(nm,itabm1,mess,nuser)
1242 igs = ngr2usrn(igu,igrnod,ngrnod,nn)
1243 ic= j6(1)+j6(2)+j6(3)+j6(4)+j6(5)+j6(6)
1245 IF(igs/=0.AND.(ic==0.OR.ic==6))
THEN
1251 nsn = igrnod(igs)%NENTITY
1254 itag(igrnod(igs)%ENTITY(i))=1
1258 nall = itag(ixc(2,ii)) * itag(ixc(3,ii)) *
1259 + itag(ixc(4,ii)) * itag(ixc(5,ii))
1261 isheoff(ii) = irbyon
1266 nall = itag(ixtg(2,ii)) * itag(ixtg(3,ii)) *
1269 itrioff(ii) = irbyon
1281 . option_id = nuser,
1282 . option_titr = titr)
1284 CALL hm_get_intv(
'independentnode',nm,is_available,lsubmodel)
1285 CALL hm_get_intv(
'VX',j6(1),is_available,lsubmodel)
1286 CALL hm_get_intv(
'VY',j6(2),is_available,lsubmodel)
1287 CALL hm_get_intv(
'VZ',j6(3),is_available,lsubmodel)
1288 CALL hm_get_intv(
'WX',j6(4),is_available,lsubmodel)
1289 CALL hm_get_intv(
'WY',j6(5),is_available,lsubmodel)
1290 CALL hm_get_intv(
'WZ',j6(6),is_available,lsubmodel)
1291 CALL hm_get_intv(
'dependentnodeset',igu,is_available,lsubmodel)
1293 m = usr2sys(nm,itabm1,mess,nuser)
1294 igs = ngr2usrn(igu,igrnod,ngrnod,nn)
1295 ic= j6(1)+j6(2)+j6(3)
1297 IF(igs/=0.AND.(ic==0.OR.ic==3))
THEN
1303 nsn = igrnod(igs)%NENTITY
1306 itag(igrnod(igs)%ENTITY(i))=1
1310 nall = itag(ixs(2,ii)) * itag(ixs(3,ii)) *
1311 + itag(ixs(4,ii)) * itag(ixs(5,ii)) *
1312 + itag(ixs(6,ii)) * itag(ixs(7,ii)) *
1313 + itag(ixs(8,ii)) * itag(ixs(9,ii))
1315 isoloff(ii) = irbyon
1329!||--- calls -----------------------------------------------------
1337#include "implicit_f.inc"
1341#include "com04_c.inc"
1342#include "param_c.inc"
1346 INTEGER IRBE2(NRBE2L,*), LRBE2(*)
1350 INTEGER I, NSL,M,NZ,NSLJ,
1351 . J, IAD,NS,II,IC,,IADJ
1354 INTEGER,
DIMENSION(:),
ALLOCATABLE :: ITAG
1358 ALLOCATE(itag(numnod))
1367 IF (itag(ns)>0) nz = nz + 1
1385 IF (mj/=m.OR.nslj/=nsl) cycle
1386 CALL same_nsn(nsl,lrbe2(iad+1),lrbe2(iadj+1),itag,isame)
1388 CALL ic_mrg(ic,irbe2(4,i),irbe2(4,ii))
1407#include "implicit_f.inc"
1411 INTEGER NSL,LRBE2_1(*) ,LRBE2_2(*),ITAG(*),ISAME
1421 IF (ns1/=ns2.OR.itag(ns1)/=itag(ns2).OR.itag(ns1)<=1)
THEN
1429!||====================================================================
1435!||====================================================================
1440#include "implicit_f.inc"
1444 INTEGER IC_N,IC1 ,IC2
1448 INTEGER I,ICT,ICR,JT1(3),JR1(3),JT2(3),JR2(3),IUN
1451 icr=(ic1-512*(ict))/64
1455 icr=(ic2-512*(ict))/64
1460 jt1(i) = jt1(i)+jt2(i)
1461 jr1(i) = jr1(i)+jr2(i)
1462 jt1(i) =
min(iun,jt1(i))
1463 jr1(i) =
min(iun,jr1(i))
1465 ict=jt1(1)*4 +jt1(2)*2 +jt1(3)
1466 icr=jr1(1)*4 +jr1(2)*2 +jr1(3)
1467 ic_n =ict*512+icr*64
1471!||====================================================================
1480#include "implicit_f.inc"
subroutine rbe2modif_nd(nn, inn, itagnd, icnds10, iu, itab, itagm, m, itagic)
subroutine ifrontplus(n, p)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_start(entity_type)
subroutine setiadm(iadm, nz, iad_n, irbe2)
subroutine setrb2on(ixs, ixc, ixtg, igrnod, igrnrb2, isoloff, isheoff, itrioff, itabm1, lsubmodel)
subroutine seteloff2(ixs, ixc, ixt, ixp, ixr, ixtg, iparg, isoloff, isheoff, itruoff, ipouoff, iresoff, itrioff, igrnrb2, igrnod, irbe2)
subroutine ic_mrg(ic_n, ic1, ic2)
subroutine rbe2_merge(irbe2, lrbe2)
subroutine contrbe2(icr, lsubmodel)
subroutine ict2jt(ict, jt)
subroutine hierarbe2(irbe2, lrbe2)
subroutine hm_read_rbe2(irbe2, lrbe2, itab, itabm1, igrnod, iskn, ikine, iddlevel, nom_opt, itagnd, icdns10, lsubmodel)
subroutine hm_preread_rbe2(lnum, lreal, igrnod, lsubmodel)
subroutine reorbe2(irbe2, lrbe2, nc)
subroutine inirbe2(irbe2, lrbe2, itab, x, ms, in, stifn, stifr, totmas, xgt, ygt, zgt, b1, b2, b3, b5, b6, b9, nom_opt, itagnd)
subroutine same_nsn(nsl, lrbe2_1, lrbe2_2, itag, isame)
subroutine kinset(ik, node, ikine, idir, isk, ikine1)
integer, parameter nchartitle
integer, parameter ncharkey
integer, dimension(:), allocatable tagrb2
subroutine hm_sz_r2r(tag, val, lsubmodel)
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)
integer function usr2sys(iu, itabm1, mess, id)