        PROGRAM OLR_NOANN

C  SUPPRIME LE CYCLE ANUEL DES DONNEES DE L'OLR
C  STOCKEES A L'EQUATEUR

C---------------------
C  0. DECLARATIONS
C---------------------

        IMPLICIT NONE

C  nan: annee, nandeb: annee de début, nanfin=année de fin

        integer nan,nandeb,nanfin
        parameter (nandeb=1979,NANFIN=2003)

c nday: nbr de triades dans l'année, iday jour de la triade

        integer nday, iday
        parameter (nday=122)

c nlon: nbr de longitudes, ilon longitude
    
        integer nlon,ilon
        parameter (nlon=144)

c zolr, zann: olr et cycle annuel de l'olr

        real zolr(nlon),zann(nlon,nday)

C------------------------------------------------
C 1. INITIALISATIONS OUVERTURES DES FICHIER D'E/S
C------------------------------------------------

       do 1 iday=1,nday
       do 1 ilon=1,nlon
        zann(ilon,iday)=0.
 1     continue
   

       open(10,file='../input/olr_equ_7903.fmt',
     C         form='formatted')

       open(20,file='../output/olr_equ_7903.noa',
     C         form='formatted')

C------------------------------------------------
C 2. LECTURE DES DONNES, CALCUL DU CYCLE ANNUEL
C------------------------------------------------

      do 2 nan=nandeb,nanfin
      do 2 iday=1,nday
      read(10,*)(zolr(ilon),ilon=1,nlon)
      do 2 ilon=1,nlon
      zann(ilon,iday)=zann(ilon,iday)+zolr(ilon)/float(nanfin-nandeb+1)
  2   continue

      close(10)

C-------------------------------------------------
C 3. STOCKAGE DES DONNEES SANS CYCLE ANNUEL
C------------------------------------------------

       open(10,file='../input/olr_equ_7903.fmt',
     C         form='formatted')
       do 3 nan=nandeb,nanfin
       do 3 iday=1,nday
         read(10,*)(zolr(ilon),ilon=1,nlon)
         do ilon=1,nlon
         zolr(ilon)=zolr(ilon)-zann(ilon,iday)
         enddo
       write(20,200)(zolr(ilon),ilon=1,nlon)
 3    continue

 200  FORMAT(144(f6.1))
C-----------------------------------------------
C    FIN
     
      close(10)

      STOP 
      END  

