C ECDIFE SOURCE CHAT 12/07/27 21:15:00 7450 SUBROUTINE ECDIFE(NBAND,LMAX,ITAB,IFORM) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC CCOPTIO -INC CCFXDR external LONG DIMENSION ITAB(1) IF (LMAX.EQ.0) GO TO 1 DIMATT=DIMATT+LMAX+1 dimato=dimatt IF( DIMATT.GT.DIMFIC) THEN DIMATT=LMAX ll = long (nomfic) iprefi=iprefi+1 if(iprefi.ge.10000) then call erreur (945) return endif * write(6,*)' ecdife iprefi dimato dimfic',iprefi,dimato,dimfic write(6,*) ' lmax' , lmax if(iprefi.eq.1) THEN nomfic(ll+1:ll+2)='_1' ll=ll+2 elseif(iprefi.lt.10) then write(nomfic(ll:ll),fmt='(I1)')iprefi elseif(iprefi.lt.100) then if(iprefi.eq.10)ll = ll + 1 write(nomfic(ll-1:ll),fmt='(I2)')iprefi elseif(iprefi.lt.1000) then if(iprefi.eq.100) ll = ll + 1 write(nomfic(ll-2:ll),fmt='(I3)')iprefi elseif(iprefi.lt.10000) then if(iprefi.eq.1000) ll = ll + 1 write(nomfic(ll-3:ll),fmt='(I4)')iprefi else call erreur (1003) endif if (iform.ne.2) close (unit=nband) if (iform.eq.2) ios=IXDRCLOSE( ixdrw,.TRUE. ) if(iform.eq.1) then OPEN (UNIT=NBAND,STATUS='UNKNOWN',FILE=NOMFIC(1:ll), # IOSTAT=IOS,ERR=2000,FORM='FORMATTED') ELSEif (iform.eq.0) then OPEN (UNIT=NBAND,STATUS='UNKNOWN',FILE=NOMFIC(1:ll), # IOSTAT=IOS,ERR=2000,FORM='UNFORMATTED') elseif (iform.eq.2) then ios= initxdr(NOMFIC(1:ll),'w',.TRUE.) endif write(6,*) 'ecdife : Ouverture du fichier : ',nomfic(1:ll) write(6,*) ' dimfic , dimatold , dimatt ',dimfic,dimato, dimatt endif lmaxl=lmax do 10 j=0,0 IF (IFORM.EQ.1.AND.IONIVE.GE.4) # WRITE(NBAND,8000) (ITAB(I+j),I=1,LMAX) IF (IFORM.EQ.1.AND.IONIVE.LT.4) # WRITE(NBAND,8001) (ITAB(I+j),I=1,LMAX) IF (IFORM.EQ.0)WRITE(NBAND) (ITAB(I+j),I=1,LMAX) IF (iform.eq.2) ios=IXDRIMAT( ixdrw, lmaxl,itab(1)) 10 continue 8000 FORMAT(10I8) 8001 FORMAT(16I5) 1 RETURN 2000 continue MOTERR=NOMfic(1:ll) INTERR(1)=IOS CALL ERREUR(424) RETURN END