Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90	(revision 2974)
@@ -157,8 +157,9 @@
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   ht_0               !: refernce depth at t-       points (meters)
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   hu_0   , hv_0      !: refernce depth at u- and v-points (meters)
-   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e1ur   , e2vr      !: scale factor coeffs at U--V points
+   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e2_1u  , e1_2v     !: scale factor coeffs at U--V points
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e12t   , e12t_1    !: horizontal cell surface and inverse  at T    points
    REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e12u   , e12u_1    !: horizontal cell surface and inverse  at U    points
-   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e12v_1 , e12f_1    !: inverse horizontal cell surface      at V--F   points
+   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e12v   , e12v_1    !: horizontal cell surface and inverse  at V    points
+   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   e12f   , e12f_1    !: inverse horizontal cell surface      at V--F   points
 
    INTEGER, PUBLIC ::   nla10              !: deepest    W level Above  ~10m (nlb10 - 1)
@@ -293,8 +294,9 @@
 #endif
          !
-      ALLOCATE( hu  (jpi,jpj) , hur   (jpi,jpj) , hu_0  (jpi,jpj) , ht_0  (jpi,jpj) ,     &
-         &      hv  (jpi,jpj) , hvr   (jpi,jpj) , hv_0  (jpi,jpj) ,                       &
-         &      e1ur(jpi,jpj) , e2vr  (jpi,jpj) , e12t  (jpi,jpj) , e12t_1(jpi,jpj) ,     &
-         &      e12u(jpi,jpj) , e12u_1(jpi,jpj) , e12v_1(jpi,jpj) , e12f_1(jpi,jpj) , STAT=ierr(6)  )
+      ALLOCATE( hu   (jpi,jpj) , hur   (jpi,jpj) , hu_0(jpi,jpj) , ht_0  (jpi,jpj) ,     &
+         &      hv   (jpi,jpj) , hvr   (jpi,jpj) , hv_0(jpi,jpj) ,                       &
+         &      e2_1u(jpi,jpj) , e1_2v (jpi,jpj) , e12t(jpi,jpj) , e12t_1(jpi,jpj) ,     &
+         &      e12u (jpi,jpj) , e12u_1(jpi,jpj) , e12v(jpi,jpj) , e12v_1(jpi,jpj) ,     &
+         &      e12f (jpi,jpj) , e12f_1(jpi,jpj) ,                                   STAT=ierr(6)  )
          !
       ALLOCATE( gdept_0(jpk) , gdepw_0(jpk) ,                                     &
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90	(revision 2974)
@@ -90,12 +90,16 @@
       END IF
       !
-      ! - ML - Used in domvvl and traldf_(lab/bilap/iso) but could be usefull in many other modules
+      ! - ML - Used in dom_vvl_sf_nxt and lateral diffusion routines
+      !        but could be usefull in many other routines
       e12t  (:,:) = e1t(:,:) * e2t(:,:)
       e12u  (:,:) = e1u(:,:) * e2u(:,:)
-      e12u_1(:,:) = 0.5 / e12u(:,:)
-      e12v_1(:,:) = 0.5 / ( e1v(:,:) * e2v(:,:) )
-      e12f_1(:,:) = 0.5 / ( e1f(:,:) * e2f(:,:) )
-      e1ur  (:,:) = e2u(:,:) / e1u(:,:)
-      e2vr  (:,:) = e1v(:,:) / e2v(:,:)
+      e12v  (:,:) = e1v(:,:) * e2v(:,:)
+      e12f  (:,:) = e1f(:,:) * e2f(:,:)
+      e12t_1(:,:) = 1. / e12t(:,:)
+      e12u_1(:,:) = 1. / e12u(:,:)
+      e12v_1(:,:) = 1. / e12v(:,:)
+      e12f_1(:,:) = 1. / e12f(:,:)
+      e2_1u (:,:) = e2u(:,:) / e1u(:,:)
+      e1_2v (:,:) = e1v(:,:) / e2v(:,:)
       !
       hu(:,:) = 0.e0                           ! Ocean depth at U- and V-points
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90	(revision 2974)
@@ -308,6 +308,6 @@
             DO jj = 1, jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  un_td(ji,jj,jk) = ahe3 * umask(ji,jj,jk) * e1ur(ji,jj) * ( e3t_t_b(ji,jj,jk) - e3t_t_b(ji+1,jj  ,jk) )
-                  vn_td(ji,jj,jk) = ahe3 * vmask(ji,jj,jk) * e2vr(ji,jj) * ( e3t_t_b(ji,jj,jk) - e3t_t_b(ji  ,jj+1,jk) )
+                  un_td(ji,jj,jk) = ahe3 * umask(ji,jj,jk) * e2_1u(ji,jj) * ( e3t_t_b(ji,jj,jk) - e3t_t_b(ji+1,jj  ,jk) )
+                  vn_td(ji,jj,jk) = ahe3 * vmask(ji,jj,jk) * e1_2v(ji,jj) * ( e3t_t_b(ji,jj,jk) - e3t_t_b(ji  ,jj+1,jk) )
                   zwu(ji,jj) = zwu(ji,jj) + un_td(ji,jj,jk)
                   zwv(ji,jj) = zwv(ji,jj) + vn_td(ji,jj,jk)
@@ -332,5 +332,5 @@
             END DO
          END DO
-         ! d - thickness diffusion equivalent transport: boundary conditions
+         ! d - thickness diffusion transport: boundary conditions
          !     (stored for tracer advction and continuity equation)
          CALL lbc_lnk( un_td , 'U' , -1.)
@@ -557,7 +557,7 @@
             DO jj = 2, jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  pe3_out(ji,jj,jk) = umask(ji,jj,jk) * e12u_1(ji,jj)                                          &
-                     &                  * (   e12t(ji  ,jj) * ( pe3_in(ji  ,jj,jk) - fse3t_0(ji  ,jj,jk) )     &
-                     &                      + e12t(ji+1,jj) * ( pe3_in(ji+1,jj,jk) - fse3t_0(ji+1,jj,jk) ) )
+                  pe3_out(ji,jj,jk) = 0.5 * umask(ji,jj,jk) * e12u_1(ji,jj)                                      &
+                     &                    * (   e12t(ji  ,jj) * ( pe3_in(ji  ,jj,jk) - fse3t_0(ji  ,jj,jk) )     &
+                     &                        + e12t(ji+1,jj) * ( pe3_in(ji+1,jj,jk) - fse3t_0(ji+1,jj,jk) ) )
                END DO
             END DO
@@ -573,7 +573,7 @@
             DO jj = 1, jpjm1
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  pe3_out(ji,jj,jk) = umask(ji,jj,jk) * e12v_1(ji,jj)                                          &
-                     &                  * (   e12t(ji,jj  ) * ( pe3_in(ji,jj  ,jk) - fse3t_0(ji,jj  ,jk) )     &
-                     &                      + e12t(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - fse3t_0(ji,jj+1,jk) ) )
+                  pe3_out(ji,jj,jk) = 0.5 * vmask(ji,jj,jk) * e12v_1(ji,jj)                                      &
+                     &                    * (   e12t(ji,jj  ) * ( pe3_in(ji,jj  ,jk) - fse3t_0(ji,jj  ,jk) )     &
+                     &                        + e12t(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - fse3t_0(ji,jj+1,jk) ) )
                END DO
             END DO
@@ -589,7 +589,7 @@
             DO jj = 1, jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  pe3_out(ji,jj,jk) = umask(ji,jj,jk) * umask(ji,jj+1,jk) * e12f_1(ji,jj)                      &
-                     &                  * (   e12u(ji,jj  ) * ( pe3_in(ji,jj  ,jk) - fse3u_0(ji,jj  ,jk) )     &
-                     &                      + e12u(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - fse3u_0(ji,jj+1,jk) ) )
+                  pe3_out(ji,jj,jk) = 0.5 * umask(ji,jj,jk) * umask(ji,jj+1,jk) * e12f_1(ji,jj)                  &
+                     &                    * (   e12u(ji,jj  ) * ( pe3_in(ji,jj  ,jk) - fse3u_0(ji,jj  ,jk) )     &
+                     &                        + e12u(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - fse3u_0(ji,jj+1,jk) ) )
                END DO
             END DO
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilap.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilap.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilap.F90	(revision 2974)
@@ -107,6 +107,6 @@
             DO jj = 1, jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  zeeu(ji,jj) = e1ur(ji,jj) * fse3u_n(ji,jj,jk) * umask(ji,jj,jk)
-                  zeev(ji,jj) = e2vr(ji,jj) * fse3v_n(ji,jj,jk) * vmask(ji,jj,jk)
+                  zeeu(ji,jj) = e2_1u(ji,jj) * fse3u_n(ji,jj,jk) * umask(ji,jj,jk)
+                  zeev(ji,jj) = e1_2v(ji,jj) * fse3v_n(ji,jj,jk) * vmask(ji,jj,jk)
                END DO
             END DO
@@ -130,5 +130,5 @@
             DO jj = 2, jpjm1                 ! Second derivative (divergence) time the eddy diffusivity coefficient
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t_n(ji,jj,jk) )
+                  zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   zlt(ji,jj) = fsahtt(ji,jj,jk) * zbtr * (   ztu(ji,jj,jk) - ztu(ji-1,jj,jk)   &
                      &                                     + ztv(ji,jj,jk) - ztv(ji,jj-1,jk)   )
@@ -148,5 +148,5 @@
                DO ji = fs_2, fs_jpim1   ! vector opt.
                   ! horizontal diffusive trends
-                  zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t_n(ji,jj,jk) )
+                  zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   ztra = zbtr * (  ztu(ji,jj,jk) - ztu(ji-1,jj,jk) + ztv(ji,jj,jk) - ztv(ji,jj-1,jk)  )
                   ! add it to the general tracer trends
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilapg.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilapg.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_bilapg.F90	(revision 2974)
@@ -207,6 +207,6 @@
             DO jj = 1, jpjm1
                DO ji = 1, jpim1
-                  zabe1 = e2u(ji,jj) * fse3u(ji,jj,jk) / e1u(ji,jj)
-                  zabe2 = e1v(ji,jj) * fse3v(ji,jj,jk) / e2v(ji,jj)
+                  zabe1 = e2_1u(ji,jj) * fse3u_n(ji,jj,jk)
+                  zabe2 = e1_2v(ji,jj) * fse3v_n(ji,jj,jk)
                   
                   zmku = 1./MAX( tmask(ji+1,jj,jk  )+tmask(ji,jj,jk+1)   &
@@ -275,5 +275,5 @@
             DO jk = 2, jpkm1
                DO ji = 2, jpim1
-                  zcof0 = e1t(ji,jj) * e2t(ji,jj) / fse3w(ji,jj,jk)   &
+                  zcof0 = e12t(ji,jj) / fse3w_n(ji,jj,jk)   &
                      &     * (  wslpi(ji,jj,jk) * wslpi(ji,jj,jk)        &
                      &        + wslpj(ji,jj,jk) * wslpj(ji,jj,jk)  )
@@ -306,5 +306,5 @@
                   DO ji = 2, jpim1
                      ! eddy coef. divided by the volume element
-                     zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) )
+                     zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                      ! vertical divergence
                      ztav = fsahtt(ji,jj,jk) * ( zftw(ji,jk) - zftw(ji,jk+1) )
@@ -318,5 +318,5 @@
                   DO ji = 2, jpim1
                      ! inverse of the volume element
-                     zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) )
+                     zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                      ! vertical divergence
                      ztav = zftw(ji,jk) - zftw(ji,jk+1)
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso.F90	(revision 2974)
@@ -172,6 +172,6 @@
             DO jj = 1 , jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  zabe1 = ( fsahtu(ji,jj,jk) + pahtb0 ) * e1ur(ji,jj) * fse3u_n(ji,jj,jk)
-                  zabe2 = ( fsahtv(ji,jj,jk) + pahtb0 ) * e2vr(ji,jj) * fse3v_n(ji,jj,jk)
+                  zabe1 = ( fsahtu(ji,jj,jk) + pahtb0 ) * e2_1u(ji,jj) * fse3u_n(ji,jj,jk)
+                  zabe2 = ( fsahtv(ji,jj,jk) + pahtb0 ) * e1_2v(ji,jj) * fse3v_n(ji,jj,jk)
                   !
                   zmsku = 1. / MAX(  tmask(ji+1,jj,jk  ) + tmask(ji,jj,jk+1)   &
@@ -197,5 +197,5 @@
             DO jj = 2 , jpjm1
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t_n(ji,jj,jk) )
+                  zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   ztra = zbtr * ( zftu(ji,jj,jk) - zftu(ji-1,jj,jk) + zftv(ji,jj,jk) - zftv(ji,jj-1,jk)  )
                   pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + ztra
@@ -282,5 +282,5 @@
             DO jj = 2, jpjm1
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  zbtr = 1.0 / ( e1t(ji,jj) * e2t(ji,jj) * fse3t_n(ji,jj,jk) )
+                  zbtr = 1.0 / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   ztra = (  ztfw(ji,jj,jk) - ztfw(ji,jj,jk+1)  ) * zbtr
                   pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + ztra
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso_grif.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso_grif.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso_grif.F90	(revision 2974)
@@ -159,12 +159,12 @@
                DO jj = 1, jpjm1
                   DO ji = 1, fs_jpim1
-                     ze3wr = 1._wp / fse3w(ji+ip,jj,jk+kp)
-                     zbu   = 0.25_wp * e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk)
+                     ze3wr = 1._wp / fse3w_n(ji+ip,jj,jk+kp)
+                     zbu   = 0.25_wp * e12u(ji,jj) * fse3u_n(ji,jj,jk)
                      zah   = fsahtu(ji,jj,jk)                                  !  fsaht(ji+ip,jj,jk)
                      zslope_skew = triadi_g(ji+ip,jj,jk,1-ip,kp)
-                     zslope2 = zslope_skew - ( fsdept(ji+1,jj,jk) - fsdept(ji ,jj ,jk) ) * ze1ur * umask(ji,jj,jk+kp)
+                     zslope2 = zslope_skew - ( fsdept_n(ji+1,jj,jk) - fsdept_n(ji ,jj ,jk) ) * ze1ur * umask(ji,jj,jk+kp)
                      zslope2 = zslope2 *zslope2
                      ah_wslp2(ji+ip,jj,jk+kp) = ah_wslp2(ji+ip,jj,jk+kp)    &
-                        &                     + zah * ( zbu * ze3wr / ( e1t(ji+ip,jj) * e2t(ji+ip,jj) ) ) * zslope2
+                        &                     + zah * ( zbu * ze3wr / ( e12t(ji+ip,jj) ) ) * zslope2
                      IF( ln_traldf_gdia ) THEN
                         zaei_slp = fsaeiw(ji+ip,jj,jk) * zslope_skew        !fsaeit(ji+ip,jj,jk)*zslope_skew
@@ -182,12 +182,12 @@
                DO jj = 1, jpjm1
                   DO ji=1,fs_jpim1
-                     ze3wr = 1.0_wp / fse3w(ji,jj+jp,jk+kp)
-                     zbv   = 0.25_wp * e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk)
+                     ze3wr = 1.0_wp / fse3w_n(ji,jj+jp,jk+kp)
+                     zbv   = 0.25_wp * e12v(ji,jj) * fse3v_n(ji,jj,jk)
                      zah   = fsahtu(ji,jj,jk)                                       !fsaht(ji,jj+jp,jk)
                      zslope_skew = triadj_g(ji,jj+jp,jk,1-jp,kp)
-                     zslope2 = zslope_skew - ( fsdept(ji,jj+1,jk) - fsdept(ji,jj,jk) ) * ze2vr * vmask(ji,jj,jk+kp)
+                     zslope2 = zslope_skew - ( fsdept_n(ji,jj+1,jk) - fsdept_n(ji,jj,jk) ) * ze2vr * vmask(ji,jj,jk+kp)
                      zslope2 = zslope2 * zslope2
                      ah_wslp2(ji,jj+jp,jk+kp) = ah_wslp2(ji,jj+jp,jk+kp)   &
-                        &                     + zah * ( zbv * ze3wr / ( e1t(ji,jj+jp) * e2t(ji,jj+jp) ) ) * zslope2
+                        &                     + zah * ( zbv * ze3wr / ( e12t(ji,jj+jp) ) ) * zslope2
                      IF( ln_traldf_gdia ) THEN
                         zaei_slp = fsaeiw(ji,jj+jp,jk) * zslope_skew     !fsaeit(ji,jj+jp,jk)*zslope_skew
@@ -255,10 +255,10 @@
                         ze1ur = 1._wp / e1u(ji,jj)
                         zdxt = zdit(ji,jj,jk) * ze1ur
-                        ze3wr = 1._wp / fse3w(ji+ip,jj,jk+kp)
+                        ze3wr = 1._wp / fse3w_n(ji+ip,jj,jk+kp)
                         zdzt  = zdkt(ji+ip,jj,kp) * ze3wr
                         zslope_skew = triadi_g(ji+ip,jj,jk,1-ip,kp)
                         zslope_iso  = triadi(ji+ip,jj,jk,1-ip,kp)
 
-                        zbu = 0.25_wp * e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk)
+                        zbu = 0.25_wp * e12u(ji,jj) * fse3u_n(ji,jj,jk)
                         zah = fsahtu(ji,jj,jk)   !*umask(ji,jj,jk+kp)         !fsaht(ji+ip,jj,jk)           ===>>  ????
                         zah_slp  = zah * zslope_iso
@@ -277,9 +277,9 @@
                         ze2vr = 1._wp / e2v(ji,jj)
                         zdyt = zdjt(ji,jj,jk) * ze2vr
-                        ze3wr = 1._wp / fse3w(ji,jj+jp,jk+kp)
+                        ze3wr = 1._wp / fse3w_n(ji,jj+jp,jk+kp)
                         zdzt = zdkt(ji,jj+jp,kp) * ze3wr
                         zslope_skew = triadj_g(ji,jj+jp,jk,1-jp,kp)
                         zslope_iso  = triadj(ji,jj+jp,jk,1-jp,kp)
-                        zbv = 0.25_wp * e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk)
+                        zbv = 0.25_wp * e12v(ji,jj) * fse3v_n(ji,jj,jk)
                         zah = fsahtv(ji,jj,jk)        !*vmask(ji,jj,jk+kp)         !fsaht(ji,jj+jp,jk)
                         zah_slp = zah * zslope_iso
@@ -295,5 +295,5 @@
             DO jj = 2 , jpjm1
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  zbtr = 1._wp / ( e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) )
+                  zbtr = 1._wp / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + zbtr * (   zftu(ji-1,jj,jk) - zftu(ji,jj,jk)   &
                      &                                           + zftv(ji,jj-1,jk) - zftv(ji,jj,jk)   )
@@ -307,5 +307,5 @@
                DO ji = fs_2, fs_jpim1   ! vector opt.
                   pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + (  ztfw(ji,jj,jk+1) - ztfw(ji,jj,jk)  )   &
-                     &                                / ( e1t(ji,jj) * e2t(ji,jj) * fse3t(ji,jj,jk) )
+                     &                                / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                END DO
             END DO
Index: branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_lap.F90
===================================================================
--- branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_lap.F90	(revision 2970)
+++ branches/2011/dev_r2739_LOCEAN8_ZTC/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_lap.F90	(revision 2974)
@@ -90,6 +90,6 @@
             DO jj = 1, jpjm1
                DO ji = 1, fs_jpim1   ! vector opt.
-                  zabe1 = fsahtu(ji,jj,jk) * umask(ji,jj,jk) * e1ur(ji,jj) * fse3u_n(ji,jj,jk)
-                  zabe2 = fsahtv(ji,jj,jk) * vmask(ji,jj,jk) * e2vr(ji,jj) * fse3v_n(ji,jj,jk)
+                  zabe1 = fsahtu(ji,jj,jk) * umask(ji,jj,jk) * e2_1u(ji,jj) * fse3u_n(ji,jj,jk)
+                  zabe2 = fsahtv(ji,jj,jk) * vmask(ji,jj,jk) * e1_2v(ji,jj) * fse3v_n(ji,jj,jk)
                   ztu(ji,jj,jk) = zabe1 * ( ptb(ji+1,jj  ,jk,jn) - ptb(ji,jj,jk,jn) )
                   ztv(ji,jj,jk) = zabe2 * ( ptb(ji  ,jj+1,jk,jn) - ptb(ji,jj,jk,jn) )
@@ -103,9 +103,9 @@
                      ikv = mbkv(ji,jj)
                      IF( iku == jk ) THEN
-                        zabe1 = fsahtu(ji,jj,iku) * umask(ji,jj,iku) * e1ur(ji,jj) * fse3u_n(ji,jj,iku)
+                        zabe1 = fsahtu(ji,jj,iku) * umask(ji,jj,iku) * e2_1u(ji,jj) * fse3u_n(ji,jj,iku)
                         ztu(ji,jj,jk) = zabe1 * pgu(ji,jj,jn)
                      ENDIF
                      IF( ikv == jk ) THEN
-                        zabe2 = fsahtv(ji,jj,ikv) * vmask(ji,jj,ikv) * e2vr(ji,jj) * fse3v_n(ji,jj,ikv)
+                        zabe2 = fsahtv(ji,jj,ikv) * vmask(ji,jj,ikv) * e1_2v(ji,jj) * fse3v_n(ji,jj,ikv)
                         ztv(ji,jj,jk) = zabe2 * pgv(ji,jj,jn)
                      ENDIF
@@ -119,5 +119,5 @@
             DO jj = 2, jpjm1
                DO ji = fs_2, fs_jpim1   ! vector opt.
-                  zbtr = 1._wp / ( e1t(ji,jj) *e2t(ji,jj) * fse3t_n(ji,jj,jk) )
+                  zbtr = 1._wp / ( e12t(ji,jj) * fse3t_n(ji,jj,jk) )
                   ! horizontal diffusive trends added to the general tracer trends
                   pta(ji,jj,jk,jn) = pta(ji,jj,jk,jn) + zbtr * (  ztu(ji,jj,jk) - ztu(ji-1,jj,jk)   &
