diff --git a/src/OCE/DYN/dynhpg.F90 b/src/OCE/DYN/dynhpg.F90
index 3b4ead089572d66acf4cf983da0224b85cc1578c..c901905a677351ed001723285422b79c638a5e0a 100644
--- a/src/OCE/DYN/dynhpg.F90
+++ b/src/OCE/DYN/dynhpg.F90
@@ -760,11 +760,11 @@ CONTAINS
       !-------------------------------------------------------------
 ! *** AY note: ssh(ji,jj,Kmm) + gde3w(ji,jj,1) = e3w(ji,jj,1,Kmm)
       DO_2D( 0, 1, 0, 1)
-         z_rho_k(ji,jj,1) =  grav * ( ssh(ji,jj,Kmm) + gde3w(ji,jj,1) )                        & 
-            &                     * (  rhd(ji,jj,1)                                        &
-            &                     + 0.5_wp * (   rhd    (ji,jj,2) - rhd    (ji,jj,1) ) &
-            &                              * (   ssh   (ji,jj,Kmm) + gde3w(ji,jj,1) )          &
-            &                              / ( - gde3w(ji,jj,2) + gde3w(ji,jj,1) )  )
+         z_rho_k(ji,jj,1) =  grav * gdept(ji,jj,1,Kmm)                             & 
+            &                     * (             rhd(ji,jj,1)                     &
+            &                         -0.5_wp * ( rhd(ji,jj,2) - rhd(ji,jj,1) )    &
+            &                              * gdept(ji,jj,1,Kmm) / e3w(ji,jj,2,Kmm) &
+            &                       )
       END_2D
 
       !--------------------------------------------------------------