evnumo
C EVNUMO SOURCE BP208322 22/09/09 21:15:02 11448 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C======================================================================= C CHERCHE DANS L'OBJET IRET DE TYPE ITYPE LA LISTE DES POINTS ET C REMPLIT LE TABLEAU NUMOO C APPELE PAR EVSOLU C APPELLE CHANGE,LIRE,REFUS,ERREUR(66) C ECRIT PAR FARVACQUE LE 24/10/85 C======================================================================= -INC PPARAM -INC CCOPTIO -INC SMSOLUT -INC SMATTAC -INC SMELEME -INC SMCHPOI SEGMENT ITRAV1(0) SEGMENT STRAV2 CHARACTER*(LOCOMP) ITRAV2(0) ENDSEGMENT SEGMENT NUMOO CHARACTER*(LOCHPO) NUDDL(N) ENDSEGMENT LOGICAL L0,L1 CHARACTER*8 ITYPE,TYPRET,CHARRE CHARACTER*(LOCOMP) NOMCO * IF (ITYPE.EQ.'POINT ') THEN N=1 SEGINI NUMOO NUDDL(1)=NOMCO * ELSE IF (ITYPE.EQ.'MAILLAGE') THEN MELEME= IRET SEGACT MELEME MELEME=IRET SEGACT MELEME N=NUM(/2) SEGINI NUMOO DO 10 I=1,N NUDDL(I)=NOMCO 10 CONTINUE SEGDES MELEME * ELSE IF (ITYPE.EQ.'CHPOINT ') THEN MCHPOI=IRET SEGACT MCHPOI NSOUPO=IPCHP(/1) SEGINI ITRAV1 SEGINI STRAV2 DO 20 I=1,NSOUPO MSOUPO=IPCHP(I) SEGACT MSOUPO MELEME=IGEOC SEGACT MELEME NP=NUM(/2) NC=NOCOMP(/2) MPOVAL=IPOVAL SEGACT MPOVAL DO J1=1,NP ITRAV1(**)=NUM(1,J1) ENDDO ENDDO SEGDES MELEME,MPOVAL,MSOUPO 20 CONTINUE SEGDES MCHPOI N=ITRAV1(/1) SEGINI NUMOO DO 24 I=1,N NUDDL(I)=ITRAV2(I) 24 CONTINUE SEGSUP ITRAV1,STRAV2 * ELSE IF (ITYPE.EQ.'ATTACHE ') THEN MATTAC=IRET SEGACT MATTAC NSOU=LISATT(/1) N=0 SEGINI NUMOO DO 30 I=1,NSOU MSOUMA=LISATT(I) SEGACT MSOUMA MJONCT=IATREL(1) SEGDES MSOUMA SEGACT MJONCT MCHPOI=MJOPOI SEGDES MJONCT SEGACT MCHPOI MSOUPO=IPCHP(1) SEGDES MCHPOI SEGACT MSOUPO MELEME=IGEOC SEGDES MSOUPO SEGACT MELEME NM=NUM(/2) N=N+NM SEGADJ NUMOO DO 32 J=1,NM 32 CONTINUE NI=N SEGDES MELEME 30 CONTINUE SEGDES MATTAC * ELSE IF (ITYPE.EQ.'SOLUTION') THEN MSOLUT=IRET SEGACT MSOLUT IF (MSOLIS(3).EQ.0) THEN MOTERR(1:8)='SOLUTION' MOTERR(9:16)='MODE' * ON ATTEND UN MODE SEGDES MSOLUT GOTO 5000 ELSE MELEME=MSOLIS(3) SEGDES MSOLUT SEGACT MELEME N=NUM(/2) SEGINI NUMOO DO 40 I=1,N NUDDL(I)=NOMCO 40 CONTINUE SEGDES MELEME ENDIF * ELSE IF (ITYPE.EQ.'TABLE ') THEN & 'TABLE',I1,X1,' ',L1,IBAS) IB = 0 NBMODE = 0 50 CONTINUE IB = IB + 1 TYPRET = ' ' & TYPRET,I1,X1,CHARRE,L1,IBBB) IF (IBBB.NE.0 .AND. TYPRET.EQ.'TABLE ') THEN NBMODE = NBMODE + 1 GOTO 50 ENDIF N = NBMODE SEGINI NUMOO DO 52 IB = 1,NBMODE & TYPRET,I1,X1,TYPRET,L1,IBBB) & 'POINT',I1,X1,' ',L1,IPTR) NUDDL(IB)=NOMCO 52 CONTINUE ENDIF IBOO=NUMOO 1700 FORMAT(' COUPLES NUMO-NUDDL ',10(I5,A8,1X)) 5000 CONTINUE RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales