anchor.diff:                  eta(i,j) = temp5
               end do
   
  -            ! Priodicit
  +            ! Periodicite
               do j = 1, pasy
                   eta(1,j) = eta(pasx,j)
                   eta(pasx+1,j) = eta(2,j)      
  
positive.code: ! ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  !                       Fluides gophysiques  v14         (11.04.96)
  !                       -------------------------
  !   . Red Black
  !   . Calcul des vitesses
  !   . Sauvegarde tous les X pas de temps
  ! ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  
  program NIHOUL
  
      implicit none
  
      ! Declarations
  
      double precision, parameter :: U = 1D-1
      double precision, parameter :: g = 1D-2
      double precision, parameter :: f = 1D-4
  
      integer, parameter :: pasx  = 31
      !integer, parameter :: pasx2 = 32    
      integer, parameter :: pasy  = 31
  
      integer :: Nmax
      logical :: fin
      integer :: i, j, n, compt, startj, start, nsave, fsave, saveu
      double precision :: pi, h0, L, T, Lx, Ly, Bu, Ro, Et, w
      double precision :: dx, dy, dt, tol, kmoy
      !double precision :: x(pasx2), y(pasx)
      double precision, allocatable :: x(:), y(:)
      
      double precision :: temp1, temp2, temp3, temp4, temp5, erreur
      double precision :: d1, d2, d3
      double precision :: aeta1, aeta2     
      
      !double precision :: eta(pasx2,pasy), b(pasx2,pasy), q(pasx2,pasy)
      !double precision :: jacob(pasx2,pasy), deta(pasx2,2)
      !double precision :: leta(pasx2,pasy), v1(pasx2,pasy), v2(pasx2,pasy)
      double precision, allocatable :: eta(:,:), b(:,:), q(:,:)
      double precision, allocatable :: jacob(:,:), deta(:,:)
      double precision, allocatable :: leta(:,:), v1(:,:), v2(:,:)
  
      ! dynamic arrays
      allocate( x(pasx+1) )
      allocate( y(pasx) )
  
      allocate( eta(pasx+1, pasy) )
      allocate( b(pasx+1, pasy) )
      allocate( q(pasx+1, pasy) )
  
      allocate( jacob(pasx+1, pasy) )
      allocate( deta(pasx+1, 2) )
  
      allocate( leta(pasx+1, pasy) )
      allocate( v1(pasx+1, pasy) )
      allocate( v2(pasx+1, pasy) )
  
      ! Donnees
  
  
negative.code:                              - Ro*(temp2*temp5 - temp1*temp4)
                  end do
  
                  ! periodicite
  
                  do j = 1, pasy
                      v1(pasx+1,j) = v1(2,j)
  