!********************************************************************
!
      subroutine scalaire(front,v1, vout, zji, zjj, jp)
!
!********************************************************************
!
!     objet    : calcul de la projection d une variable
!                sur un mode vertical de la frontiere ouverte
!
!
!     appelant         : cal_coef
!                      :
!     appeles          :
!     canal d ecriture :
!     canal de lecture :
!     cle cpp          :
!                      :
!     variables in     :
!                      :
!     variables out    :
!                      :
!     variables inout  :
!
!***********************************************************

!jm A partir du fichier d Alice, mais beaucoup de modifications quand meme ...

!!
!! Arguments :
!! Variable a projeter             : v1
!! Variable en sortie (projection) : vout
!! Position en i sur la frontiere  : zji
!! Position en j sur la frontiere  : zjj
!! Numero du mode pour la projection : jp
!!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
use parameters
use comvars3d
use comvars2d
use comcfo
implicit none
!
!! declaration programme
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      integer,intent(in) :: zji,zjj,jp,front
      real(kind=rsh),dimension(1:kmax),intent(in)::v1
      real(kind=rlg),intent(out)::vout
      real(kind=rlg)::prec,cour
      integer :: jk

      vout=0.0
      if (front<3) then
      
         call obcch3_produit_scalaire(vout,v1,Mn_nord_sud(front,zji,:,jp))

      else
         
         call obcch3_produit_scalaire(vout,v1,Mn_est_ouest(front,zjj,:,jp))
	 
      endif
         
      end subroutine scalaire
