enpapf
C ENPAPF SOURCE CB215821 20/11/25 13:27:39 10792 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) C===================================================================== C LECTURE PAS A PAS D'UN MSOLUT: LECTURE D'UN NOUVEAU PAS C SUR LA BANDE IORES C APPELE PAR : ENSOLF C APPELLE : LFCDIE LFCDI2 CREPO1 C ECRIT PAR : FARVACQUE-LENA C====================================================================== -INC PPARAM -INC CCOPTIO -INC SMSOLUT -INC SMCHPOI -INC SMCHAML SEGMENT/ITAB/(TAB(N1),ITABB(N2)) SEGMENT/ITBBE2/(ITABE2(NN)) SEGMENT/ITBBE1/(ITABE1(NN)) SEGMENT/ITBBE3/(ITABE3(3,N3)) DIMENSION ILENA(10) C====================================================================== C IRETOU=0 SEGACT MSOLUT NIPO1=MSOLIS(/1)-4 SEGACT ITAB N1=TAB(/1) N2=ITABB(/1) IF(IRETOU.NE.0) GOTO 1000 IF(IRETOU.NE.0) GOTO 1000 IF(IIMPI.EQ.5) WRITE(IOIMP,800)(TAB(I),I=1,N1) IF(IIMPI.EQ.5)WRITE(IOIMP,801)(ITABB(I),I=1,N2) 800 FORMAT(/' *** TAB ',(5E12.5)) 801 FORMAT(' ITABB=',3I4,' IPOS DES ENREGISTREMENTS:',12I5) C ITBBE1=IBBE1 ITBBE2=IBBE2 ITBBE3=IBBE3 DO 25 III=1,NIPO1 NENRE=ITABB(4+III)-ITABB(3+III) ITABE1(2*III-1)=0 IF(NENRE.EQ.0) GOTO 26 ISOLIT=MSOLIT(III+4) IF(ISOLIT.NE.2) GOTO 200 C CHPOINT +++++++++++++++++++++++++ NSOUPO=NENRE NAT=1 SEGINI MCHPOI ITABE1(2*III-1)=MCHPOI C les chpo contenus dans les objets de type solution sont diffus JATTRI(1)=1 DO 102 I=1,NSOUPO J=ITABE2(III)+I NC=ITABE3(2,J) SEGINI MSOUPO N=ITABE3(1,J) SEGINI MPOVAL IPOVAL=MPOVAL L=N*NC IF(IRETOU.NE.0) GOTO 1000 SEGDES MPOVAL,MSOUPO IPCHP(I)=MSOUPO 102 CONTINUE SEGDES MCHPOI GOTO26 C 200 IF(ISOLIT.NE.5) GOTO 300 C MCHAML ++++++++++++++++++++++++++ WRITE(IOIMP,*) 'ENPAPF : ISOLIT = 5 MCHAML ==> CONTACTER SUPPORT' N1=NENRE L1 = 0 N3 = 6 SEGINI MCHELM ITABE1(2*III-1)=MCHELM DO 202 ISOU=1,N1 J=ITABE2(III)+ISOU N2 =ITABE3(2,J) SEGINI,MCHAML ICHAML(ISOU) = MCHAML N1PTEL=ITABE3(1,J) N1EL =ITABE3(3,J) N2PTEL = 0 N2EL = 0 L=N1PTEL*N1EL DO k = 1, N2 SEGINI MELVAL IF(IRETOU.NE.0) GOTO 1000 SEGDES MELVAL IELVAL(k)=MELVAL ENDDO SEGDES MCHAML 202 CONTINUE SEGDES MCHELM GOTO 26 300 CONTINUE 26 CONTINUE 25 CONTINUE C C CAS D UN MODE C IF(ITYSOL.NE.'MODE ') GOTO 12 MSOLEN=MSOLIS(4) SEGACT MSOLEN IPAS=ISOLEN(/1)+1 N=IPAS SEGADJ MSOLEN LVALM=5 NIMOD= 3 SEGINI MMODE ISOLEN(IPAS)=MMODE FMMODD(1)=TAB(3) FMMODD(2)=TAB(4) FMMODD(3)=TAB(5) FMMODD(4)=TAB(6) FMMODD(5)=TAB(7) IMMODD(1)=ITABB(1) IMMODD(2)=ITABB(2) IMMODD(3)=ITABB(3) SEGDES MMODE,MSOLEN GOTO 20 C C CAS D UN DYNAMIQUE C 12 IF(ITYSOL.NE.'DYNAMIQU') GOTO 13 MSOLRE=MSOLIS(1) SEGACT MSOLRE IPAS=SOLRE(/1)+1 N=IPAS SEGADJ MSOLRE SOLRE(IPAS)=TAB(2) SEGDES MSOLRE C MSOLEN=MSOLIS(2) C SEGADJ MSOLEN C ISOLEN(IPAS)=ITABB(1) C SEGDES MSOLEN GOTO 20 13 CONTINUE GOTO 20 C C DANS TOUS LES CAS C 20 CONTINUE IF(IPAS.EQ.1) GOTO 21 IF(IMEL.EQ.0) GOTO21 ITBBE2=IMEL NN=IPAS SEGADJ ITBBE2 ITABE2(IPAS)=IPOIN 21 CONTINUE C DO 30 III=1,NIPO1 MSOLEN=MSOLIS(4+III) IF(MSOLEN.EQ.0) GOTO 30 SEGACT MSOLEN N=IPAS SEGADJ MSOLEN ISOLEN(IPAS)=ITABE1(2*III-1) SEGDES MSOLEN 30 CONTINUE C 1000 CONTINUE SEGDES MSOLUT RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales