      !       open(1,file='trace.plt') à ajouter à votre programme principal
      subroutine ecrit(x,uold,t,i)
      IMPLICIT NONE
      INCLUDE 'common.inc' 
      double precision uold(*),x(*),t,uex
      external uex
C NE PAS TOUCHER
C***********************************************************************************************************************
      INTEGER NNN,INDEX,J,Ra(1:1000),QU
      INTEGER DIR1,DIR2,INDEXMAX,I,K,YFILE
      CHARACTER*72 NUMERO,TMP,NOM1
      CHARACTER    VIRG,BACK
C***********************************************************************************************************************
      VIRG= ',' 
      BACK='\\'
      INDEXMAX = 10
c
c Decomposition d'un entier en decimale.
c
      NNN   = I
      INDEX = 1
c
10    IF(NNN .LT. 10) THEN
         Ra(INDEX)=NNN
      ELSE
        QU = NNN / 10
        Ra(INDEX) = NNN-10 * QU
        NNN = QU
        INDEX = INDEX + 1
        GO TO 10
      ENDIF
      DO 15 J=INDEX+1,INDEXMAX
           Ra(J) = 0
15    CONTINUE
c
c Transcription des decimales en caracteres
c
      NUMERO(1:1) = CHAR(ICHAR('0')+Ra(INDEXMAX))
      DO 20 J = 2,INDEXMAX
        K= J - 1
        TMP(1:J)=NUMERO(1:K)//CHAR(ICHAR('0')+Ra(INDEXMAX-J+1))
        NUMERO = TMP
 20   CONTINUE
c
c L'entier est maintenant en caracteres.
c
c Ouverture des fichiers ou sont stockee y et u
c
      NOM1     = 'sources/data/tmp.'//NUMERO(1:INDEXMAX)
      OPEN(11,FILE=NOM1)	
      DIR1 = 17
! 17 correspond au nombre de caractère  "sources/data/tmp." voir ligne 17. Donc si votre répertoire c'est juste "data/tmp.", il faut changer DIR1=17 par DIR1= 9     
c
c On prepare les fichiers Gnuplot; on rajoute des guillemets aux noms de fichiers
c
      NOM1   = '"'//NOM1(1:INDEXMAX+DIR1)//'"'
c
c Remplissage des fichiers gnuplot ou une seule courbe est tracee et on attend une seconde.
c
      DIR1 = DIR1 + 2


c
c Ecriture de la hauteur d'eau dans le fichier y.plt
c

      WRITE(1,98) ABS(t)
98    FORMAT('set title "T = ',F8.3)
      WRITE(1,*) 'set ylabel  "u"  font "Times-Roman, 18' 
      WRITE(1,*) 'set xlabel  "x"  font "Times-Roman, 18' 


      WRITE(1,*) 'plot ',NOM1(1:INDEXMAX+DIR1),
     & '   u 1:2 w l lw 3 title "u",',
     & '""   u 1:3 w l lw 3 title "uex"'
       IF (i.EQ.0) THEN 
        WRITE(1,*) 'pause -1 "Hit return to continue"'
       ENDIF
       
c On ecrit dans les fichiers 
c
      DO J = 2,N+1
        WRITE(11,*) x(J), uold(J),uex(x(j),t)
        WRITE(11,*) x(J+1), uold(J),uex(x(j+1),t)
      ENDDO

      RETURN
      END

