respro
C RESPRO SOURCE CB215821 24/07/17 21:15:17 11961 SUBROUTINE RESPRO IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC PPARAM -INC CCOPTIO -INC SMBLOC -INC CCNOYAU -INC CCASSIS CHARACTER*(8) MMM IARGUM=MARGUM IF(IARGUM.EQ.0) THEN MOTERR=' ' RETURN ENDIF C C SAUVETAGE DES POINTEURS ET DES TYPES DES RESULTATS C * recherche du bloc de la procedure mblo1=mbloc 1 continue segact mblo1*mod * write(6,*) 'mbloc ',mblo1,mblo1.mblpro,mblo1.mbcour,mblo1.mbcont, * > mblo1.mbfonc,mblo1.mtxbl,mblo1.msapii,mblo1.mprocd if (mblo1.msapii.eq.0) then mblo1 = mblo1.mblsup goto 1 endif * write(6,*) 'fin de recherche' MTRESU=MBLO1.ITRESU IF(MTRESU.EQ.0) THEN NRES=10 SEGINI,MTRESU MTRESU.NRESI=0 IF(IIMPI.EQ.1754) WRITE(6,*) ' DANS RESPRO MTRESU ..',MTRESU SEGACT IARGUM*MOD mblo1.ITRESU=MTRESU ELSE IF(IIMPI.EQ.1754) WRITE(6,*) ' DANS RESPRO MTRESU ..',MTRESU SEGACT,MTRESU*MOD NRES=IVARES(/1) ENDIF C On passe en INTEGER FORTRAN plutot que ARGUMENT DE SEGMENT (vitesse) MRESI = MTRESU.NRESI 432 CONTINUE MMM =' ' LECTAB = 1 C LODESL =.TRUE. C LODESL = .FALSE. C write(6,*) ' respro mmmiret ', mmm ,iret IF (IRETOU .NE. 0) THEN MRESI = MRESI + 1 IF(MRESI .GT. NRES)THEN NRES = MRESI + MAX(INT(REAL(MRESI * 0.2)),10) SEGADJ,MTRESU ENDIF MTYRES(MRESI) = MMM IVARES(MRESI) = IRET IF(MMM.EQ.'FLOTTANT') THEN if(nbesc.ne.0) SEGACT,IPILOC XFLRES(MRESI)=XIFLOT(IRET) if(nbesc.ne.0) SEGDES,IPILOC ENDIF GOTO 432 ENDIF C On repasse MRESI dans MTRESU.NRESI MTRESU.NRESI = MRESI LECTAB=0 ** write(6,*) 'respro mbloc mtresu',mbloc,mtresu END
© Cast3M 2003 - Tous droits réservés.
Mentions légales