diff --git a/src/MNH/advection_metsv.f90 b/src/MNH/advection_metsv.f90
index 408861cddf11554929925b44c84373269cecc515..2fb15696cd9d74119630c9de594ec0d5822d458b 100644
--- a/src/MNH/advection_metsv.f90
+++ b/src/MNH/advection_metsv.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -47,7 +47,8 @@ REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT , PSVT
                                                   ! Variables at t
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PTHVREF   ! Virtual Temperature
                                           ! of the reference state
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRTHS, PRTKES
 REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRRS , PRSVS
@@ -234,7 +235,8 @@ REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT , PSVT
                                                   ! Variables at t
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PTHVREF   ! Virtual Temperature
                                           ! of the reference state
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRTHS, PRTKES
 REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRRS , PRSVS
diff --git a/src/MNH/advection_uvw.f90 b/src/MNH/advection_uvw.f90
index 3603c22ca0b935ac55e11644635fbd3502227c36..d41bc35c86f224576704faab43781eb571343d82 100644
--- a/src/MNH/advection_uvw.f90
+++ b/src/MNH/advection_uvw.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -31,7 +31,8 @@ REAL,                     INTENT(IN)    :: PTSTEP
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT
                                                   ! Variables at t
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODJ
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRUS , PRVS, PRWS
                                                   ! Sources terms 
@@ -143,7 +144,8 @@ REAL,                     INTENT(IN)    :: PTSTEP
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT
                                                   ! Variables at t
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODJ               
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRUS , PRVS, PRWS
                                                   ! Sources terms
diff --git a/src/MNH/advection_uvw_cen.f90 b/src/MNH/advection_uvw_cen.f90
index 69f0e1206c52e35695b8a082796e26fa83e3b721..ddd55cc8b7d46a5e4223029112fa3ea1498bc774 100644
--- a/src/MNH/advection_uvw_cen.f90
+++ b/src/MNH/advection_uvw_cen.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 2013-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 2013-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -30,7 +30,8 @@ REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUM, PVM, PWM
                                                   ! Variables at t-dt
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDUM, PDVM, PDWM
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT, PRHODJ
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRUS , PRVS  , PRWS
                                                   ! Sources terms 
@@ -133,7 +134,8 @@ REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUM, PVM, PWM
                                                   ! Variables at t-dt
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDUM, PDVM, PDWM
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT, PRHODJ
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ,PDZX,PDZY
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PDZX,PDZY
                                                   !  metric coefficients
 REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRUS , PRVS  , PRWS
                                                   ! Sources terms 
diff --git a/src/MNH/conjgrad.f90 b/src/MNH/conjgrad.f90
index c38478a7f0c16fea7b06d7ca1a24578e60f4d7f6..f80d9042eb4db6acafd3b1e15a98c7265bc6a682 100644
--- a/src/MNH/conjgrad.f90
+++ b/src/MNH/conjgrad.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -18,12 +18,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
@@ -147,12 +147,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
diff --git a/src/MNH/conresol.f90 b/src/MNH/conresol.f90
index 61ae8417aa1a7f3ebc75644c4ca936b9e12c9e50..d7493a23e800f84cb8b5613a24dab5683d55c33e 100644
--- a/src/MNH/conresol.f90
+++ b/src/MNH/conresol.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1999-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1999-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -18,12 +18,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual pot. temp. at time t
@@ -146,12 +146,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual pot. temp. at time t
diff --git a/src/MNH/conresolz.f90 b/src/MNH/conresolz.f90
index ad63b26a572ca49ca7a8db16cc178ad1753f39fe..fb1dc51bdd99c4550ac05f760a3b9ef8ebcd11df 100644
--- a/src/MNH/conresolz.f90
+++ b/src/MNH/conresolz.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1999-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1999-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -20,12 +20,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual pot. temp. at time t
@@ -156,12 +156,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual pot. temp. at time t
diff --git a/src/MNH/contrav.f90 b/src/MNH/contrav.f90
index edb6dcd24337c1ac6e2c4c1d0ad0f0747fa7896f..be1726c65c51d625538769cd37a9d70987b1f535 100644
--- a/src/MNH/contrav.f90
+++ b/src/MNH/contrav.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -21,8 +21,8 @@ REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PRWT       ! Cartesian comp along z
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX       ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY       ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ       ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZX       ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZY       ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY     ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRUCT      ! Contrav comp along x-bar
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRVCT      ! Contrav comp along y-bar
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRWCT      ! Contrav comp along z-bar
@@ -43,8 +43,8 @@ REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PRWT       ! Cartesian comp along z
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX       ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY       ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ       ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZX       ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZY       ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX       ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY       ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRUCT      ! Contrav comp along x-bar
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRVCT      ! Contrav comp along y-bar
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRWCT      ! Contrav comp along z-bar
@@ -151,8 +151,8 @@ REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PRWT     ! Cartesian comp along z
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX     ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY     ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZX     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY     ! Metric coefficients
 !
 !
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRUCT    ! Contrav comp along x-bar
@@ -554,8 +554,8 @@ REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PRWT     ! Cartesian comp along z
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX     ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY     ! Metric coefficients
 REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZX     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY     ! Metric coefficients
 !
 !
 REAL, DIMENSION(:,:,:),  INTENT(OUT)   ::  PRUCT    ! Contrav comp along x-bar
diff --git a/src/MNH/gdiv.f90 b/src/MNH/gdiv.f90
index 1ae26eddfe5067825a40df141381cc574532764b..445c1d90809a861d2db6fc3bb085dd75319193e7 100644
--- a/src/MNH/gdiv.f90
+++ b/src/MNH/gdiv.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -16,12 +16,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 ! 
-                                                 ! Metric coefficients:       
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:       
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
                                                  ! Field components
 REAL, DIMENSION(:,:,:), INTENT(INOUT)  :: PU        ! along x             
@@ -40,12 +40,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:       
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
                                                  ! Field components
 REAL, DIMENSION(:,:,:), INTENT(INOUT)  :: PU        ! along x
@@ -139,12 +139,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 ! 
-                                                 ! Metric coefficients:       
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:       
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
                                                  ! Field components
 REAL, DIMENSION(:,:,:), INTENT(INOUT)  :: PU        ! along x             
@@ -410,12 +410,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:       
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
                                                  ! Field components
 REAL, DIMENSION(:,:,:), INTENT(INOUT)  :: PU        ! along x
diff --git a/src/MNH/ini_elecn.f90 b/src/MNH/ini_elecn.f90
index 27ed168cdda2b4f23db4406621869b9161434049..1489ba1af8c26f75a239e04265df6024d392624f 100644
--- a/src/MNH/ini_elecn.f90
+++ b/src/MNH/ini_elecn.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 2009-2019 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 2009-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -20,12 +20,12 @@ CHARACTER (LEN=4), INTENT(IN) :: HCLOUD   ! microphysics scheme
 TYPE(TFILEDATA),   INTENT(IN) :: TPINIFILE! Initial file
 REAL,              INTENT(IN) :: PTSTEP   ! Time STEP
 !
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ     ! height z
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX    ! metric coefficient dxx
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY    ! metric coefficient dyy
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ    ! metric coefficient dzz
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZX    ! metric coefficient dzx
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZY    ! metric coefficient dzy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PZZ     ! height z
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX    ! metric coefficient dxx
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY    ! metric coefficient dyy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ    ! metric coefficient dzz
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX    ! metric coefficient dzx
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY    ! metric coefficient dzy
 !
 END SUBROUTINE INI_ELEC_n
 END INTERFACE
@@ -130,12 +130,12 @@ CHARACTER (LEN=4), INTENT(IN) :: HCLOUD   ! microphysics scheme
 TYPE(TFILEDATA),   INTENT(IN) :: TPINIFILE! Initial file
 REAL,              INTENT(IN) :: PTSTEP   ! Time STEP
 !
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ     ! height z
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX    ! metric coefficient dxx
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY    ! metric coefficient dyy
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ    ! metric coefficient dzz
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZX    ! metric coefficient dzx
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZY    ! metric coefficient dzy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PZZ     ! height z
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX    ! metric coefficient dxx
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY    ! metric coefficient dyy
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ    ! metric coefficient dzz
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX    ! metric coefficient dzx
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY    ! metric coefficient dzy
 !
 !*       0.2   declarations of local variables
 !
diff --git a/src/MNH/ini_field_elec.f90 b/src/MNH/ini_field_elec.f90
index c5dcbb79a30d93761faecc41871205996584c396..49206a1d8d43a3d95d1fc8b59a8e2d74f7fc8f7e 100644
--- a/src/MNH/ini_field_elec.f90
+++ b/src/MNH/ini_field_elec.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 2002-2020 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 2002-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -11,12 +11,12 @@ INTERFACE
 !
       SUBROUTINE INI_FIELD_ELEC (PDXX, PDYY, PDZZ, PDZX, PDZY, PZZ)
 !
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDXX     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDYY     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZZ     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZX     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZY     ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PZZ      ! vertical grid
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PZZ      ! vertical grid
 !
 END SUBROUTINE INI_FIELD_ELEC
 END INTERFACE
@@ -85,12 +85,12 @@ IMPLICIT NONE
 !
 !*	0.1	Declaration of dummy arguments
 !
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDXX  ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDYY  ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZZ  ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZX  ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PDZY  ! Metric coefficients
-REAL, DIMENSION(:,:,:),  INTENT(IN) ::  PZZ   ! vertical grid
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDXX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDYY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PDZZ     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZX     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(INOUT) ::  PDZY     ! Metric coefficients
+REAL, DIMENSION(:,:,:),  INTENT(IN)    ::  PZZ      ! vertical grid
 !
 !*	0.2	Declaration of local variables
 !
diff --git a/src/MNH/lap_m.f90 b/src/MNH/lap_m.f90
index f1936c828237a3c61b7f54fcb0ab6ee86376396a..5eceef4f0dcd0905c8c1e60b995ef9e4b44d08d1 100644
--- a/src/MNH/lap_m.f90
+++ b/src/MNH/lap_m.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 2007-2020 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 2007-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -17,12 +17,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density_reference * J
 !
@@ -119,12 +119,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 !
diff --git a/src/MNH/pressure_in_prep.f90 b/src/MNH/pressure_in_prep.f90
index 6219e352f27f06e8a418d8073fdd8aed4031802d..e5d004e09378e6d12cd12d1fe1db3f6aea8e3d53 100644
--- a/src/MNH/pressure_in_prep.f90
+++ b/src/MNH/pressure_in_prep.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1998-2020 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1998-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
@@ -11,11 +11,11 @@ INTERFACE
 !
       SUBROUTINE PRESSURE_IN_PREP(PDXX,PDYY,PDZX,PDZY,PDZZ)
 !
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDXX     ! metric coefficient dxx
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDYY     ! metric coefficient dyy 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZX     ! metric coefficient dzx 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZY     ! metric coefficient dzy 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZZ     ! metric coefficient dzz  
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDXX     ! metric coefficient dxx
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDYY     ! metric coefficient dyy 
+REAL,DIMENSION(:,:,:), INTENT(INOUT) :: PDZX     ! metric coefficient dzx 
+REAL,DIMENSION(:,:,:), INTENT(INOUT) :: PDZY     ! metric coefficient dzy 
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDZZ     ! metric coefficient dzz  
 !
 END SUBROUTINE PRESSURE_IN_PREP
 !
@@ -97,11 +97,11 @@ IMPLICIT NONE
 !*       0.1   Declaration of dummy arguments
 !              ------------------------------
 !
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDXX     ! metric coefficient dxx
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDYY     ! metric coefficient dyy 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZX     ! metric coefficient dzx 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZY     ! metric coefficient dzy 
-REAL,DIMENSION(:,:,:), INTENT(IN) :: PDZZ     ! metric coefficient dzz  
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDXX     ! metric coefficient dxx
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDYY     ! metric coefficient dyy 
+REAL,DIMENSION(:,:,:), INTENT(INOUT) :: PDZX     ! metric coefficient dzx 
+REAL,DIMENSION(:,:,:), INTENT(INOUT) :: PDZY     ! metric coefficient dzy 
+REAL,DIMENSION(:,:,:), INTENT(IN)    :: PDZZ     ! metric coefficient dzz  
 !
 !*       0.2   Declaration of local variables
 !              ------------------------------
diff --git a/src/MNH/pressurez.f90 b/src/MNH/pressurez.f90
index 5d6a7a860bed9a8c9e8e869b07f170a708c9cdeb..8413e2068bea392042f6d99ed2217d1e7ca70dfa 100644
--- a/src/MNH/pressurez.f90
+++ b/src/MNH/pressurez.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -39,7 +39,8 @@ REAL, INTENT(IN)    :: PRELAX                    ! relaxation coefficient for
 REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ     ! density of reference state
                                                  ! * J
 !
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX,PDYY,PDZZ,PDZX,PDZY ! metric coefficients
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX,PDZY ! metric coefficients
 !
 REAL, INTENT(IN) :: PDXHATM                     ! mean grid increment in the x
                                                 ! direction
@@ -293,7 +294,8 @@ REAL, INTENT(IN)    :: PRELAX                    ! relaxation coefficient for
 REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ     ! density of reference state
                                                  ! * J
 !
-REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX,PDYY,PDZZ,PDZX,PDZY ! metric coefficients
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX,PDYY,PDZZ
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX,PDZY ! metric coefficients
 !
 REAL, INTENT(IN) :: PDXHATM                     ! mean grid increment in the x
                                                 ! direction
diff --git a/src/MNH/qlap.f90 b/src/MNH/qlap.f90
index a16622cf669221a9e951fab6fe4ab913ec93fb05..4cd3f0fafbb42c52fc044450ea83177de415edde 100644
--- a/src/MNH/qlap.f90
+++ b/src/MNH/qlap.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -17,12 +17,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
@@ -44,12 +44,12 @@ REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PQLAP ! final divergence
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
@@ -165,12 +165,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
@@ -435,12 +435,12 @@ REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PQLAP ! final divergence
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at time t
diff --git a/src/MNH/richardson.f90 b/src/MNH/richardson.f90
index fbce9d7c3e566e6a7066ce50c69c4143ca101f53..b2a1d2f55266eda6f7002bd6a399d7ec97551702 100644
--- a/src/MNH/richardson.f90
+++ b/src/MNH/richardson.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2022 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -18,12 +18,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at 
@@ -148,12 +148,12 @@ IMPLICIT NONE
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX    ! x-direction LBC type 
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY    ! y-direction LBC type 
 !
-                                                 ! Metric coefficients:
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDXX      ! d*xx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDYY      ! d*yy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZX      ! d*zx 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZY      ! d*zy 
-REAL, DIMENSION(:,:,:), INTENT(IN)  :: PDZZ      ! d*zz
+                                                   ! Metric coefficients:
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX      ! d*xx 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY      ! d*yy 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX      ! d*zx 
+REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY      ! d*zy 
+REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ      ! d*zz
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHODJ    ! density of reference * J
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PTHETAV   ! virtual potential temp. at 
diff --git a/src/MNH/viscosity.f90 b/src/MNH/viscosity.f90
index 4a9607c8cd1a382362c1308ed60fd33cf28120b5..c909bd9b0b511d83e006129f28491f332b2ddac5 100644
--- a/src/MNH/viscosity.f90
+++ b/src/MNH/viscosity.f90
@@ -1,4 +1,4 @@
-!MNH_LIC Copyright 1994-2021 CNRS, Meteo-France and Universite Paul Sabatier
+!MNH_LIC Copyright 1994-2023 CNRS, Meteo-France and Universite Paul Sabatier
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
@@ -51,11 +51,11 @@ INTERFACE
 !
       REAL, DIMENSION(:,:), INTENT(IN) :: PDRAG ! Array -1/1 defining where the no-slipcondition is applied
 ! metric coefficients
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZX
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZY
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ
+     REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX
+     REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY
 !
 ! output source terms
      REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRUS, PRVS, PRWS
@@ -150,12 +150,12 @@ SUBROUTINE VISCOSITY(HLBCX, HLBCY, KRR, KSV, PNU, PPRANDTL,          &
 !
 !
 REAL, DIMENSION(:,:), INTENT(IN) :: PDRAG ! Array -1/1 defining where the no-slip condition is applied
-
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDXX
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDYY
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZZ
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZX
-     REAL, DIMENSION(:,:,:), INTENT(IN) :: PDZY
+! metric coefficients
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDXX
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDYY
+     REAL, DIMENSION(:,:,:), INTENT(IN)    :: PDZZ
+     REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZX
+     REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PDZY
 !
 ! output source terms
      REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PRUS, PRVS, PRWS