35 1 ITAB ,ITABM1 ,IGRNOD ,NINICRACK,BUFSF ,
36 2 IGRSURF ,IGRSLIN ,INICRACK ,IXS ,IXQ ,
37 3 IXC ,IXT ,IXP ,IXR ,IXTG ,
38 4 IXS10 ,IXS20 ,IXS16 ,IPART ,
39 5 KXX ,IXIG3D ,KXIG3D ,
40 6 IGRQUAD ,IGRBRIC ,IGRSH4N ,IGRSH3N ,IGRTRUSS,
41 7 IGRBEAM ,IGRSPRING,IGRPART )
50 USE format_mod ,
ONLY : fmw_10i, fmw_6i, fmw_2i_x_f, fmw_4i
54#include "implicit_f.inc"
58 INTEGER ITAB(*),ITABM1(*),NINICRACK,IXS(NIXS,*),
59 . IXC(NIXC,*),IXT(NIXT,*),IXP(NIXP,*),IXR(NIXR,*),
60 . IXTG(NIXTG,*),IXS10(6,*),IXS20(12,*),IXS16(8,*),
61 . IPART(LIPART1,*),IXQ(NIXQ,*),
62 . KXX(NIXX,*),KXIG3D(NIXIG3D,*),IXIG3D(*)
65 TYPE (GROUP_) ,
DIMENSION(NGRNOD) :: IGRNOD
66 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
67 TYPE () ,
DIMENSION(NGRQUAD) :: IGRQUAD
68 TYPE (GROUP_) ,
DIMENSION(NGRSHEL) :: IGRSH4N
69 TYPE (GROUP_) ,
DIMENSION(NGRSH3N) :: IGRSH3N
70 TYPE (GROUP_) ,
DIMENSION(NGRTRUS) :: IGRTRUSS
71 TYPE () ,
DIMENSION(NGRBEAM) :: IGRBEAM
72 TYPE (GROUP_) ,
DIMENSION(NGRSPRI) :: IGRSPRING
73 TYPE (GROUP_) ,
DIMENSION(NGRPART) :: IGRPART
74 TYPE (SURF_) ,
DIMENSION(NSURF) :: IGRSURF
75 TYPE (SURF_) ,
DIMENSION(NSLIN) :: IGRSLIN
76 TYPE (INICRACK_),
DIMENSION(NINICRACK) :: INICRACK
91 INTEGER I,J,K,L,II,KK,NEL,NNOD,NSEG,IAD0,DGR,ITYP,SRFTYP,
93 CHARACTER(LEN=NCHARTITLE)
94CHARACTER MESS*40,FMTT*15
103 titr = igrbric(i)%TITLE
104 nel = igrbric(i)%NENTITY
107 IF ((nel==0).AND.(igrbric(i)%R2R_ALL/=0))
GOTO 150
110 IF (nel == 0 .AND. igrbric(i)%SET_GROUP == 0)
THEN
112 . msgtype=msgwarning,
113 . anmode=aninfo_blind_1,
114 . c1='brick
',C2='brick
',C3=TRIM(TITR),
119 WRITE(IOUT,'(a,i10,3a,i6,a)
')' bric. group:
',ID,',
',TRIM(TITR),',
',NEL,' elements:
'
120 WRITE(IOUT,'(a)
')' --------------------
'
121 WRITE(IOUT,FMT=FMW_10I)(IXS(NIXS,IGRBRIC(I)%ENTITY(J)),J=1,NEL)
127 IF (NGRQUAD > 0) THEN
132 TITR = IGRQUAD(I)%TITLE
133 NEL =IGRQUAD(I)%NENTITY
136.AND.
IF ((NEL==0)(IGRQUAD(I)%R2R_ALL/=0)) GOTO 160
139.AND.
IF (NEL == 0 IGRQUAD(I)%SET_GROUP == 0) THEN
140 CALL ANCMSG(MSGID=534,
141 . MSGTYPE=MSGWARNING,
142 . ANMODE=ANINFO_BLIND_1,
143 . C1='quad
',C2='quad
',C3=TRIM(TITR),
148 WRITE(IOUT,'(a,i10,3a,i6,a)
')' quad group:
',ID,',
',TRIM(TITR),',
',NEL,' elements:
'
149 WRITE(IOUT,'(a)
')' --------------------
'
150 WRITE(IOUT,FMT=FMW_10I)(IXQ(NIXQ,IGRQUAD(I)%ENTITY(J)),J=1,NEL)
156 IF (NGRSHEL > 0) THEN
161 TITR = IGRSH4N(I)%TITLE
162 NEL =IGRSH4N(I)%NENTITY
165.AND.
IF ((NEL==0)(IGRSH4N(I)%R2R_ALL/=0)) GOTO 170
168.AND.
IF (NEL == 0 IGRSH4N(I)%SET_GROUP == 0) THEN
169 CALL ANCMSG(MSGID=534,
170 . MSGTYPE=MSGWARNING,
171 . ANMODE=ANINFO_BLIND_1,
172 . C1='shell
',C2='shell
',C3=TRIM(TITR),
176 WRITE(IOUT,'(a)
') ' '
177 WRITE(IOUT,'(a)
') ' '
178 WRITE(IOUT,'(a,i10,3a,i6,a)
')' shel. group:
',ID,',
',TRIM(TITR),',
',NEL,' elements:
'
179 WRITE(IOUT,'(a)
')' --------------------
'
180 WRITE(IOUT,FMT=FMW_10I) (IXC(NIXC,IGRSH4N(I)%ENTITY(J)),J=1,NEL)
186 IF (NGRTRUS > 0) THEN
191 TITR = IGRTRUSS(I)%TITLE
192 NEL =IGRTRUSS(I)%NENTITY
195.AND.
IF ((NEL==0)(IGRTRUSS(I)%R2R_ALL/=0)) GOTO 180
198.AND.
IF (NEL == 0 IGRTRUSS(I)%SET_GROUP == 0) THEN
199 CALL ANCMSG(MSGID=534,
200 . MSGTYPE=MSGWARNING,
201 . ANMODE=ANINFO_BLIND_1,
202 . C1='trus
',C2='trus',c3=trim(titr),
207 WRITE(iout,
'(A,I10,3A,I6,A)')
' TRUSS GROUP:',id,
',',trim(titr),
',',nel,
' ELEMENTS: '
208 WRITE(iout,
'(A)')
' --------------------'
209 WRITE(iout,fmt=fmw_10i)(ixt(nixt,igrtruss(i)%ENTITY(j)),j=1,nel)
215 IF (ngrbeam > 0)
THEN
220 nel =igrbeam(i)%NENTITY
221 titr = igrbeam(i)%TITLE
224 IF ((nel==0).AND.(igrbeam(i)%R2R_ALL/=0))
GOTO 190
227 IF (nel == 0 .AND. igrbeam(i)%SET_GROUP == 0)
THEN
229 . msgtype=msgwarning,
230 . anmode=aninfo_blind_1,
231 . c1=
'BEAM',c2=
'BEAM',c3=trim(titr),
236 WRITE(iout,
'(A,I10,3A,I6,A)')
' BEAM GROUP:',id,
',',trim(titr),
',',nel,
' ELEMENTS: '
237 WRITE(iout,
'(A)')
' --------------------'
238 WRITE(iout,fmt=fmw_10i)(ixp(nixp,igrbeam(i)%ENTITY(j)),j=1,nel)
244 IF (ngrspri > 0)
THEN
249 titr = igrspring(i)%TITLE
250 nel =igrspring(i)%NENTITY
253 IF ((nel==0).AND.(igrspring(i)%R2R_ALL/=0))
GOTO 200
256 IF (nel == 0 .AND. igrspring(i)%SET_GROUP == 0)
THEN
258 . msgtype=msgwarning,
259 . anmode=aninfo_blind_1,
260 . c1=
'SPRI',c2=
'SPRI',c3=trim(titr),
265 WRITE(iout,
'(A,I10,3A,I6,A)')
' SPRING GROUP:',id,
',',trim(titr),
',',nel,
' ELEMENTS: '
266 WRITE(iout,
'(A)')
' --------------------'
267 WRITE(iout,fmt=fmw_10i)(ixr(nixr,igrspring(i)%ENTITY(j)),j=1,nel)
273 IF (ngrsh3n > 0)
THEN
278 titr = igrsh3n(i)%TITLE
279 nel =igrsh3n(i)%NENTITY
282 IF ((nel==0).AND.(igrsh3n(i)%R2R_ALL
GOTO
285 IF (nel == 0 .AND. igrsh3n(i)%SET_GROUP == 0)
THEN
288 . msgtype=msgwarning,
289 . anmode=aninfo_blind_1,
290 . c1=
'SH3N',c2=
'SH3N',c3
294 . msgtype=msgwarning,
295 . anmode=aninfo_blind_1,
296 . c1=
'TRIA',c2=
'TRIA',c3=trim(titr),
300 WRITE(iout,
'(A)')
' '
301 WRITE(iout,
'(A)')
' '
302 IF(n2d==0)
WRITE(iout,
'(A,I10,3A,I6,A)')
' SH3N. GROUP:', id,
',',trim(titr),
',',nel,
' ELEMENTS: '
303 IF(n2d/=0)
WRITE(iout,
'(A,I10,3A,I6,A)')
' TRIA. GROUP:', id,
',',trim(titr),',
',NEL,' elements:
'
304 WRITE(IOUT,'(a)
')' --------------------
'
305 WRITE(IOUT,FMT=FMW_10I)(IXTG(NIXTG,IGRSH3N(I)%ENTITY(J)),J=1,NEL)
311 IF (NGRPART > 0) THEN
316 TITR = IGRPART(I)%TITLE
317 NEL =IGRPART(I)%NENTITY
320.AND.
IF ((NEL==0)(IGRPART(I)%R2R_ALL/=0)) GOTO 220
323.AND.
IF (NEL == 0 IGRPART(I)%SET_GROUP == 0) THEN
324 CALL ANCMSG(MSGID=534,
325 . MSGTYPE=MSGWARNING,
326 . ANMODE=ANINFO_BLIND_1,
327 . C1='part
',C2='part
',C3=TRIM(TITR),
332 WRITE(IOUT,'(a,i10,3a,i6,a)
')' part group:
',ID,',
',TRIM(TITR),',
',NEL,' parts:
'
333 WRITE(IOUT,'(a)
')' ---------------------
'
334 WRITE(IOUT,FMT=FMW_10I)(IPART(4,IGRPART(I)%ENTITY(J)),J=1,NEL)
342 SRFTYP=IGRSURF(I)%TYPE
343 IF (SRFTYP == 100) THEN
344 IF (IGRSURF(I)%ID_MADYMO == 0) THEN
345 CALL ANCMSG(MSGID=692,
346 . MSGTYPE=MSGWARNING,
347 . ANMODE=ANINFO_BLIND_1,
350 ELSEIF (SRFTYP == 101) THEN
352 ELSEIF (SRFTYP == 200) THEN
356 NSEGIGE=IGRSURF(I)%NSEG_IGE
358 IF (NSUBDOM>0) NSEG=ISURF_R2R(2,I)
360.AND..AND.
IF (NSEG == 0 NSEGIGE == 0 IGRSURF(I)%SET_GROUP == 0) THEN
361 CALL ANCMSG(MSGID=692,
362 . MSGTYPE=MSGWARNING,
363 . ANMODE=ANINFO_BLIND_1,
373.AND.
IF((IGRSURF(I)%NSEG==0)(ISURF_R2R(2,I)/=0)) GOTO 300
376 SRFTYP=IGRSURF(I)%TYPE
377 IF (SRFTYP == 100) THEN
378 WRITE(IOUT,'(a)
') ' '
379 WRITE(IOUT,'(a)
') ' '
380 TITR = IGRSURF(I)%TITLE
381 WRITE(IOUT,'(a,i10,1x,a)
')' EXTERNAL coupling to surface:
',IGRSURF(I)%ID,TRIM(TITR)
382 WRITE(IOUT,'(a)
') ' ----------------------------
'
383 WRITE(IOUT,1000) IGRSURF(I)%ID_MADYMO
384 WRITE(IOUT,'')'corresponding
DATA will be
READ in
radioss engine.
'
385 ELSEIF (SRFTYP == 101) THEN
386 WRITE(IOUT,'(a)
') ' '
387 WRITE(IOUT,'(a)
') ' '
388 TITR = IGRSURF(I)%TITLE
389 WRITE(IOUT,'(a,i10,1x,a)
')' ellipsoidal surface:
',IGRSURF(I)%ID,TRIM(TITR)
390 WRITE(IOUT,'(a)
') ' --------------------
'
391 DGR=BUFSF(IGRSURF(I)%IAD_BUFR+36)
392 WRITE(IOUT,1010) BUFSF(IGRSURF(I)%IAD_BUFR+4),BUFSF(IGRSURF(I)%IAD_BUFR+5),
393 . BUFSF(IGRSURF(I)%IAD_BUFR+6),BUFSF(IGRSURF(I)%IAD_BUFR+1),
394 . BUFSF(IGRSURF(I)%IAD_BUFR+2),BUFSF(IGRSURF(I)%IAD_BUFR+3),
395 . DGR,IGRSURF(I)%ID_MADYMO,
396 . (BUFSF(IGRSURF(I)%IAD_BUFR+7+J-1),J=1,3),
397 . (BUFSF(IGRSURF(I)%IAD_BUFR+7+J-1),J=4,6),
398 . (BUFSF(IGRSURF(I)%IAD_BUFR+7+J-1),J=7,9)
399 IGRSURF(I)%ID_MADYMO=0
400 ELSEIF (SRFTYP == 200) THEN
401 WRITE(IOUT,'(a)
') ' '
402 WRITE(IOUT,'(a)
') ' '
403 TITR = IGRSURF(I)%TITLE
404 WRITE(IOUT,'(a,i10,a,a)
')' infinite plane surface:
',IGRSURF(I)%ID,',
',TRIM(TITR)
405 WRITE(IOUT,'(a)
') ' --------------------
'
406 WRITE(IOUT,'(a)
') ' normal plane vector :
'
407 WRITE(IOUT,1020)(BUFSF(IGRSURF(I)%IAD_BUFR+J),J=1,6)
411 WRITE(IOUT,'(a)
') ' '
412 WRITE(IOUT,'(a)
') ' '
413 TITR = IGRSURF(I)%TITLE
414 WRITE(IOUT,'(a,i10,3a,i10,a)
')' surface:
',IGRSURF(I)%ID,',
',TRIM(TITR),',
',NSEG,' segments:
'
415 WRITE(IOUT,'(a)
')' -------------------
'
416 WRITE(IOUT,'(a)
')' node 1 node 2 node 3 node 4 eltyp element
'
418 ITYP=IGRSURF(I)%ELTYP(J)
420 NE=IXS(NIXS,IGRSURF(I)%ELEM(J))
421 ELSEIF (ITYP == 2) THEN
422 NE=IXQ(NIXQ,IGRSURF(I)%ELEM(J))
423 ELSEIF (ITYP == 3) THEN
424 NE=IXC(NIXC,IGRSURF(I)%ELEM(J))
425 ELSEIF (ITYP == 7) THEN
426 NE=IXTG(NIXTG,IGRSURF(I)%ELEM(J))
431 WRITE(IOUT,'(6i10)
')(ITAB(IGRSURF(I)%NODES(J,L)),L=1,4),ITYP,NE
433 WRITE(IOUT,'(2i10,16x,2i10)
')(ITAB(IGRSURF(I)%NODES(J,L)),L=1,2),ITYP,NE
436!! ENDIF ! IF (NSEG/=0)
438 NSEGIGE=IGRSURF(I)%NSEG_IGE
439 WRITE(IOUT,'(a)
') ' '
440 WRITE(IOUT,'(a)
') ' '
441 TITR = IGRSURF(I)%TITLE
442 WRITE(IOUT,'(a,i10,3a,i10,a)
')' surface:
',IGRSURF(I)%ID,',
',TRIM(TITR),',
',NSEGIGE,' segments isogeometriques:
'
443 WRITE(IOUT,'(a)
')' -------------------
'
444 WRITE(IOUT,'(a)
')' cp 1 cp 2 cp 3 cp 4 eltyp element
'
446 ITYP=IGRSURF(I)%ELTYP_IGE(J)
447 IF (ITYP == 101) THEN
448 NE=KXIG3D(5,IGRSURF(I)%ELEM_IGE(J))
453 WRITE(IOUT,FMT=FMW_6I)(IGRSURF(I)%NODES_IGE(J,L),L=1,4),ITYP,NE
455 WRITE(IOUT,'(2i10,16x,2i10)
')(IGRSURF(I)%NODES_IGE(J,L),L=1,2),ITYP,NE
458 ENDIF ! IF (NSEGIGE/=0)
459 ENDIF ! IF (SRFTYP == 100)
462 ENDIF ! IF (IPRI > 0)
463 ENDIF ! IF (NSURF > 0)
469 IF (NSUBDOM>0) NSEG=IGRSLIN(I)%NSEG_R2R_ALL
471 TITR = IGRSLIN(I)%TITLE
472 IF (TITR(1:19)=='type19
interface nb
') CYCLE
474.AND.
IF (NSEG == 0 IGRSLIN(I)%SET_GROUP == 0) THEN
475 CALL ANCMSG(MSGID=691,
476 . MSGTYPE=MSGWARNING,
477 . ANMODE=ANINFO_BLIND_1,
486.AND.
IF ((NSEG==0)(IGRSLIN(I)%NSEG_R2R_ALL/=0)) GOTO 310
490 WRITE(IOUT,'(a)
') ' '
491 WRITE(IOUT,'(a)
') ' '
492 TITR = IGRSLIN(I)%TITLE
493 WRITE(IOUT,'(a,i10,3a,i10,a)
')' line:
',IGRSLIN(I)%ID,',
',TRIM(TITR),',
',NSEG,' segments:
'
494 WRITE(IOUT,'(a)
')' ----------------------
'
495 WRITE(IOUT,'(a)
')' node 1 node 2 eltyp element
'
497 ITYP=IGRSLIN(I)%ELTYP(J)
499 NE=IXS(NIXS,IGRSLIN(I)%ELEM(J))
500 ELSEIF(ITYP == 2)THEN
501 NE=IXQ(NIXQ,IGRSLIN(I)%ELEM(J))
502 ELSEIF(ITYP == 3)THEN
503 NE=IXC(NIXC,IGRSLIN(I)%ELEM(J))
504 ELSEIF(ITYP == 7)THEN
505 NE=IXTG(NIXTG,IGRSLIN(I)%ELEM(J))
506 ELSEIF(ITYP == 4)THEN
507 NE=IXT(NIXT,IGRSLIN(I)%ELEM(J))
508 ELSEIF(ITYP == 5)THEN
509 NE=IXP(NIXP,IGRSLIN(I)%ELEM(J))
510 ELSEIF(ITYP == 6)THEN
511 NE=IXR(NIXR,IGRSLIN(I)%ELEM(J))
512 ELSEIF(ITYP == 8)THEN
513 NE=KXX(NIXX,IGRSLIN(I)%ELEM(J))
517 WRITE(IOUT,FMT=FMW_4I)(ITAB(IGRSLIN(I)%NODES(J,L)),L=1,2),ITYP,NE
524 IF (NINICRACK > 0) THEN
526 NSEG=INICRACK(I)%NSEG
528 CALL ANCMSG(MSGID=693,
529 . MSGTYPE=MSGWARNING,
530 . ANMODE=ANINFO_BLIND_1,
536 NSEG=INICRACK(I)%NSEG
538 WRITE(IOUT,'(a)
') ' '
539 WRITE(IOUT,'(a)
') ' '
540 TITR = INICRACK(I)%TITLE
541 WRITE(IOUT,'(a,i10,3a)
')' inicrack:
',INICRACK(I)%ID,',
',TRIM(TITR)
542 WRITE(IOUT,'(a)
')' ----------------------
'
543 WRITE(IOUT,'(a)
')' node 1 node 2 ratio
'
545 WRITE(IOUT,FMT=FMW_2I_X_F)(ITAB(INICRACK(I)%SEG(J)%NODES(L)),L=1,2),INICRACK(I)%SEG(J)%RATIO
554 NNOD=IGRNOD(I)%NENTITY
555 IF (NSUBDOM>0) NNOD=IGRNOD(I)%R2R_ALL
559 CALL ANCMSG(MSGID=690,
560 . MSGTYPE=MSGWARNING,
561 . ANMODE=ANINFO_BLIND_1,
568 NNOD=IGRNOD(I)%NENTITY
571.AND.
IF ((NNOD==0)(IGRNOD(I)%R2R_ALL/=0)) GOTO 350
575 WRITE(IOUT,'(a)
') ' '
576 WRITE(IOUT,'(a)
') ' '
577 TITR = IGRNOD(I)%TITLE
578 WRITE(IOUT,'(a,i10,3a,i10,a)
')' node group:
',ID,',
',TRIM(TITR),',
',NNOD,' nodes:
'
579 WRITE(IOUT,'(a)
')' -------------------
'
580 WRITE(IOUT,FMT=FMW_10I)(ITAB(IGRNOD(I)%ENTITY(J)),J=1,NNOD)
5881000 FORMAT(/10X,'surface definition :
'
589 . /10X,'--------------------
'
590 . /10X,'reference to madymo coupling surface :
',I8)
5911010 FORMAT(/10X,'ellipsoid definition :
'
592 . /10X,'----------------------
'
593 . /10X,'ellipsoid center
',1P3G20.13
594 . /10X,'ellipsoid semi-axes length
',1P3G20.13
595 . /10X,'ellipsoid degree
',I10
596 . /10X,'skew number
for positioning ',i10
597 . /10x,
'COMPUTED ELLIPSOID ROTATION ',
598 . /10x,
' WITH RESPECT TO SKEW : ',1p3g20.13
600 . /10x,
' ',1p3g20.13)
6011020
FORMAT(/10x,
'PLANE DEFINITION : '
602 . /10x,
'---------------------- '
603 . /48x,
'X-ORD Y-ORD Z-ORD'
604 . /10x,
'TAIL COORDINATES ',1p3g20.13
605 . /10x,
'HEAD COORDINATES ',1p3g20.13)
subroutine printgroup(itab, itabm1, igrnod, ninicrack, bufsf, igrsurf, igrslin, inicrack, ixs, ixq, ixc, ixt, ixp, ixr, ixtg, ixs10, ixs20, ixs16, ipart, kxx, ixig3d, kxig3d, igrquad, igrbric, igrsh4n, igrsh3n, igrtruss, igrbeam, igrspring, igrpart)
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)