From 210159a24c088dda90367fab5241e09bf3172a59 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Riette?= <sebastien.riette@meteo.fr>
Date: Wed, 13 Dec 2023 13:27:06 +0100
Subject: [PATCH] S. Riette 13 Dec 2023: enable simple precision for testprogs

---
 .../ice_adjust/getdata_ice_adjust_mod.F90     |  43 +++---
 .../rain_ice/getdata_rain_ice_mod.F90         |  59 ++++----
 .../rain_ice_old/getdata_rain_ice_old_mod.F90 |  57 ++++----
 src/testprogs/shallow/getdata_shallow_mod.F90 | 105 +++++++-------
 src/testprogs/support/arrays_manip.F90        |  31 ++--
 src/testprogs/turb_mnh/getdata_turb_mod.F90   | 135 +++++++++---------
 6 files changed, 218 insertions(+), 212 deletions(-)

diff --git a/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90 b/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90
index 5cad30115..4554d32df 100644
--- a/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90
+++ b/src/testprogs/ice_adjust/getdata_ice_adjust_mod.F90
@@ -2,6 +2,7 @@ MODULE GETDATA_ICE_ADJUST_MOD
 
 USE OMP_LIB
 USE ARRAYS_MANIP, ONLY: SETUP, REPLICATE, NPROMIZE, INTERPOLATE, SET
+USE PARKIND1, ONLY: JPRD
 
 CONTAINS
 
@@ -58,27 +59,27 @@ REAL, INTENT(OUT), ALLOCATABLE   :: PHLI_HCF_OUT_B (:,:,:)
 REAL, INTENT(OUT), ALLOCATABLE   :: ZRS_B          (:,:,:,:) 
 REAL, INTENT(OUT), ALLOCATABLE   :: ZZZ_B          (:,:,:)   
 
-REAL, ALLOCATABLE   :: PRHODJ         (:,:,:)   
-REAL, ALLOCATABLE   :: PEXNREF        (:,:,:)   
-REAL, ALLOCATABLE   :: PRHODREF       (:,:,:)   
-REAL, ALLOCATABLE   :: PPABSM         (:,:,:)   
-REAL, ALLOCATABLE   :: PTHT           (:,:,:)   
-REAL, ALLOCATABLE   :: PSIGS          (:,:,:)   
-REAL, ALLOCATABLE   :: PMFCONV        (:,:,:)   
-REAL, ALLOCATABLE   :: PRC_MF         (:,:,:)   
-REAL, ALLOCATABLE   :: PRI_MF         (:,:,:)   
-REAL, ALLOCATABLE   :: PCF_MF         (:,:,:)   
-REAL, ALLOCATABLE   :: PTHS           (:,:,:)   
-REAL, ALLOCATABLE   :: PRS            (:,:,:,:) 
-REAL, ALLOCATABLE   :: PRS_OUT        (:,:,:,:) 
-REAL, ALLOCATABLE   :: PSRCS_OUT      (:,:,:)   
-REAL, ALLOCATABLE   :: PCLDFR_OUT     (:,:,:)   
-REAL, ALLOCATABLE   :: PHLC_HRC_OUT   (:,:,:)   
-REAL, ALLOCATABLE   :: PHLC_HCF_OUT   (:,:,:)   
-REAL, ALLOCATABLE   :: PHLI_HRI_OUT   (:,:,:)   
-REAL, ALLOCATABLE   :: PHLI_HCF_OUT   (:,:,:)   
-REAL, ALLOCATABLE   :: ZRS            (:,:,:,:) 
-REAL, ALLOCATABLE   :: ZZZ            (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODJ         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PEXNREF        (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODREF       (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PPABSM         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHT           (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PSIGS          (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PMFCONV        (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRC_MF         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRI_MF         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PCF_MF         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHS           (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRS            (:,:,:,:) 
+REAL(KIND=JPRD), ALLOCATABLE   :: PRS_OUT        (:,:,:,:) 
+REAL(KIND=JPRD), ALLOCATABLE   :: PSRCS_OUT      (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PCLDFR_OUT     (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLC_HRC_OUT   (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLC_HCF_OUT   (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLI_HRI_OUT   (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLI_HCF_OUT   (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRS            (:,:,:,:) 
+REAL(KIND=JPRD), ALLOCATABLE   :: ZZZ            (:,:,:)   
 
 INTEGER, INTENT(IN) :: NPROMA, NGPBLKS
 INTEGER :: NGPTOT
diff --git a/src/testprogs/rain_ice/getdata_rain_ice_mod.F90 b/src/testprogs/rain_ice/getdata_rain_ice_mod.F90
index 5fd1e2642..eef252b68 100644
--- a/src/testprogs/rain_ice/getdata_rain_ice_mod.F90
+++ b/src/testprogs/rain_ice/getdata_rain_ice_mod.F90
@@ -1,6 +1,7 @@
 MODULE GETDATA_RAIN_ICE_MOD
 
 USE ARRAYS_MANIP, ONLY: SETUP, REPLICATE, NPROMIZE, INTERPOLATE, SET
+USE PARKIND1, ONLY: JPRD
 
 CONTAINS
 
@@ -62,35 +63,35 @@ REAL, INTENT(OUT), ALLOCATABLE   :: PFPR_B         (:,:,:,:)
 REAL, INTENT(OUT), ALLOCATABLE   :: PFPR_OUT_B     (:,:,:,:)
 
 LOGICAL, ALLOCATABLE   :: LLMICRO     (:,:,:)
-REAL, ALLOCATABLE   :: PEXNREF        (:,:,:)
-REAL, ALLOCATABLE   :: PDZZ           (:,:,:)
-REAL, ALLOCATABLE   :: PRHODJ         (:,:,:)   
-REAL, ALLOCATABLE   :: PRHODREF       (:,:,:)   
-REAL, ALLOCATABLE   :: PEXNREF2       (:,:,:)
-REAL, ALLOCATABLE   :: PPABSM         (:,:,:)   
-REAL, ALLOCATABLE   :: PCIT           (:,:,:)
-REAL, ALLOCATABLE   :: PCLDFR         (:,:,:)
-REAL, ALLOCATABLE   :: PHLC_HRC       (:,:,:)
-REAL, ALLOCATABLE   :: PHLC_HCF       (:,:,:)
-REAL, ALLOCATABLE   :: PHLI_HRI       (:,:,:)
-REAL, ALLOCATABLE   :: PHLI_HCF       (:,:,:)
-REAL, ALLOCATABLE   :: PTHT           (:,:,:)
-REAL, ALLOCATABLE   :: PRT            (:,:,:,:)
-REAL, ALLOCATABLE   :: PTHS           (:,:,:)
-REAL, ALLOCATABLE   :: PRS            (:,:,:,:)
-REAL, ALLOCATABLE   :: PSIGS          (:,:,:)
-REAL, ALLOCATABLE   :: PSEA           (:,:)
-REAL, ALLOCATABLE   :: PTOWN          (:,:)
-REAL, ALLOCATABLE   :: PCIT_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRS_OUT        (:,:,:,:)
-REAL, ALLOCATABLE   :: ZINPRC_OUT     (:,:)
-REAL, ALLOCATABLE   :: PINPRR_OUT     (:,:)
-REAL, ALLOCATABLE   :: PEVAP_OUT      (:,:,:)
-REAL, ALLOCATABLE   :: PINPRS_OUT     (:,:)
-REAL, ALLOCATABLE   :: PINPRG_OUT     (:,:)
-REAL, ALLOCATABLE   :: ZINDEP_OUT     (:,:)
-REAL, ALLOCATABLE   :: ZRAINFR_OUT    (:,:,:)
-REAL, ALLOCATABLE   :: PFPR_OUT       (:,:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEXNREF        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDZZ           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODJ         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODREF       (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PEXNREF2       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PPABSM         (:,:,:)   
+REAL(KIND=JPRD), ALLOCATABLE   :: PCIT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PCLDFR         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLC_HRC       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLC_HCF       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLI_HRI       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PHLI_HCF       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRT            (:,:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHS           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRS            (:,:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSIGS          (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSEA           (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTOWN          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PCIT_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRS_OUT        (:,:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZINPRC_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PINPRR_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEVAP_OUT      (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PINPRS_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PINPRG_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZINDEP_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRAINFR_OUT    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PFPR_OUT       (:,:,:,:)
 
 
 INTEGER :: IPROMA, ISIZE
diff --git a/src/testprogs/rain_ice_old/getdata_rain_ice_old_mod.F90 b/src/testprogs/rain_ice_old/getdata_rain_ice_old_mod.F90
index e327f692a..b4a0254d0 100644
--- a/src/testprogs/rain_ice_old/getdata_rain_ice_old_mod.F90
+++ b/src/testprogs/rain_ice_old/getdata_rain_ice_old_mod.F90
@@ -2,6 +2,7 @@ MODULE GETDATA_RAIN_ICE_OLD_MOD
 
 USE OMP_LIB
 USE ARRAYS_MANIP, ONLY: SETUP, REPLICATE, NPROMIZE, INTERPOLATE, SET
+USE PARKIND1, ONLY: JPRD
 USE ISO_FORTRAN_ENV, ONLY: OUTPUT_UNIT
 
 CONTAINS
@@ -85,41 +86,41 @@ REAL, ALLOCATABLE, DIMENSION(:,:,:,:), INTENT(OUT) :: PFPR_B, PFPR_OUT_B
 LOGICAL, ALLOCATABLE, DIMENSION(:,:,:), INTENT(OUT) :: ODMICRO
 
 
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PDZZ
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PRHODJ
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PRHODREF
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PEXNREF
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PPABSM
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PCIT, PCIT_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PCLDFR
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PDZZ
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PRHODJ
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PRHODREF
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PEXNREF
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PPABSM
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PCIT, PCIT_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PCLDFR
 
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PICLDFR
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PSSIO
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PSSIU
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PIFR
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PICLDFR
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PSSIO
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PSSIU
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PIFR
 
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PTHT
-REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PRT
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PTHS, PTHS_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PRS,  PRS_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PTHT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:,:) :: PRT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PTHS, PTHS_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:,:) :: PRS,  PRS_OUT
 
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PSIGS
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PSEA
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PTOWN
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PSIGS
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PSEA
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PTOWN
 
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PICENU
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PKGN_ACON
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PKGN_SBGR
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PICENU
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PKGN_ACON
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PKGN_SBGR
 
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: ZINPRC_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PINPRR_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:,:)   :: PEVAP_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PINPRS_OUT
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PINPRG_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: ZINPRC_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PINPRR_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:)   :: PEVAP_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PINPRS_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PINPRG_OUT
 
-REAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: PFPR_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:,:,:) :: PFPR_OUT
 
-REAL, ALLOCATABLE, DIMENSION(:,:)     :: PINPRH_OUT
+REAL(KIND=JPRD), ALLOCATABLE, DIMENSION(:,:)     :: PINPRH_OUT
 
 INTEGER :: NGPTOT
 
diff --git a/src/testprogs/shallow/getdata_shallow_mod.F90 b/src/testprogs/shallow/getdata_shallow_mod.F90
index e54c18689..4d01ff6fb 100644
--- a/src/testprogs/shallow/getdata_shallow_mod.F90
+++ b/src/testprogs/shallow/getdata_shallow_mod.F90
@@ -1,6 +1,7 @@
 MODULE GETDATA_SHALLOW_MOD
 
 USE ARRAYS_MANIP, ONLY: SETUP, REPLICATE, NPROMIZE, INTERPOLATE, SET
+USE PARKIND1, ONLY: JPRD
 
 CONTAINS
 
@@ -126,59 +127,59 @@ INTEGER, INTENT(OUT), ALLOCATABLE:: IKETL_OUT_B       (:,:)
 INTEGER, INTENT(OUT), ALLOCATABLE:: IKCTL_OUT_B       (:,:)
 
 !Inputs to read
-REAL, ALLOCATABLE   :: PDZZF     (:,:,:)
-REAL, ALLOCATABLE   :: PZZ       (:,:,:)
-REAL, ALLOCATABLE   :: PRHODJ    (:,:,:)
-REAL, ALLOCATABLE   :: PRHODREF  (:,:,:)
-REAL, ALLOCATABLE   :: PPABSM    (:,:,:)
-REAL, ALLOCATABLE   :: PEXNM     (:,:,:)
-REAL, ALLOCATABLE   :: PSFTH     (:,:)
-REAL, ALLOCATABLE   :: PSFRV     (:,:)
-REAL, ALLOCATABLE   :: PTHM      (:,:,:)
-REAL, ALLOCATABLE   :: PRM       (:,:,:,:) !(KLON, 1, KLEV, KRR)
-REAL, ALLOCATABLE   :: PUM       (:,:,:)
-REAL, ALLOCATABLE   :: PVM       (:,:,:)
-REAL, ALLOCATABLE   :: PTKEM     (:,:,:)
-REAL, ALLOCATABLE   :: PSVM      (:,:,:,:) !(KLON,1,KLEV,KSV)
-REAL, ALLOCATABLE   :: PTHL_UP   (:,:,:)
-REAL, ALLOCATABLE   :: PRT_UP    (:,:,:)
-REAL, ALLOCATABLE   :: PRV_UP    (:,:,:)
-REAL, ALLOCATABLE   :: PRC_UP    (:,:,:)
-REAL, ALLOCATABLE   :: PRI_UP    (:,:,:)
-REAL, ALLOCATABLE   :: PU_UP     (:,:,:)
-REAL, ALLOCATABLE   :: PV_UP     (:,:,:)
-REAL, ALLOCATABLE   :: PTHV_UP   (:,:,:)
-REAL, ALLOCATABLE   :: PW_UP     (:,:,:)
-REAL, ALLOCATABLE   :: PFRAC_UP  (:,:,:)
-REAL, ALLOCATABLE   :: PEMF      (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDZZF     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PZZ       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODJ    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODREF  (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PPABSM    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEXNM     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFTH     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFRV     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHM      (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRM       (:,:,:,:) !(KLON, 1, KLEV, KRR)
+REAL(KIND=JPRD), ALLOCATABLE   :: PUM       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PVM       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTKEM     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSVM      (:,:,:,:) !(KLON,1,KLEV,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHL_UP   (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRT_UP    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRV_UP    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRC_UP    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRI_UP    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PU_UP     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PV_UP     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHV_UP   (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PW_UP     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PFRAC_UP  (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEMF      (:,:,:)
 !Expected values to read
-REAL, ALLOCATABLE   :: PDUDT_MF_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PDVDT_MF_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PDTHLDT_MF_OUT   (:,:,:)
-REAL, ALLOCATABLE   :: PDRTDT_MF_OUT    (:,:,:)
-REAL, ALLOCATABLE   :: PDSVDT_MF_OUT    (:,:,:,:) !(KLON,1,KLEV,KSV)
-REAL, ALLOCATABLE   :: PSIGMF_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRC_MF_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRI_MF_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PCF_MF_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PFLXZTHVMF_OUT   (:,:,:)
-REAL, ALLOCATABLE   :: ZFLXZTHMF_OUT    (:,:,:)
-REAL, ALLOCATABLE   :: ZFLXZRMF_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: ZFLXZUMF_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: ZFLXZVMF_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PTHL_UP_OUT      (:,:,:)
-REAL, ALLOCATABLE   :: PRT_UP_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRV_UP_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRC_UP_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PRI_UP_OUT       (:,:,:)
-REAL, ALLOCATABLE   :: PU_UP_OUT        (:,:,:)
-REAL, ALLOCATABLE   :: PV_UP_OUT        (:,:,:)
-REAL, ALLOCATABLE   :: PTHV_UP_OUT      (:,:,:)
-REAL, ALLOCATABLE   :: PW_UP_OUT        (:,:,:)
-REAL, ALLOCATABLE   :: PFRAC_UP_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PEMF_OUT         (:,:,:)
-REAL, ALLOCATABLE   :: ZDETR_OUT        (:,:,:)
-REAL, ALLOCATABLE   :: ZENTR_OUT        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDUDT_MF_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDVDT_MF_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDTHLDT_MF_OUT   (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDRTDT_MF_OUT    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDSVDT_MF_OUT    (:,:,:,:) !(KLON,1,KLEV,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSIGMF_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRC_MF_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRI_MF_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PCF_MF_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PFLXZTHVMF_OUT   (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZFLXZTHMF_OUT    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZFLXZRMF_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZFLXZUMF_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZFLXZVMF_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHL_UP_OUT      (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRT_UP_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRV_UP_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRC_UP_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRI_UP_OUT       (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PU_UP_OUT        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PV_UP_OUT        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHV_UP_OUT      (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PW_UP_OUT        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PFRAC_UP_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEMF_OUT         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDETR_OUT        (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZENTR_OUT        (:,:,:)
 INTEGER, ALLOCATABLE:: IKLCL_OUT        (:,:)
 INTEGER, ALLOCATABLE:: IKETL_OUT        (:,:)
 INTEGER, ALLOCATABLE:: IKCTL_OUT        (:,:)
diff --git a/src/testprogs/support/arrays_manip.F90 b/src/testprogs/support/arrays_manip.F90
index d50341bfd..bdafafd8a 100644
--- a/src/testprogs/support/arrays_manip.F90
+++ b/src/testprogs/support/arrays_manip.F90
@@ -2,6 +2,7 @@ MODULE ARRAYS_MANIP
 
 USE OMP_LIB
 USE IEEE_ARITHMETIC, ONLY : IEEE_SIGNALING_NAN, IEEE_VALUE
+USE PARKIND1, ONLY: JPRD
 
 INTERFACE REPLICATE
   MODULE PROCEDURE REPLICATER1
@@ -47,7 +48,7 @@ SUBROUTINE REPLICATER3 (KOFF, P)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KOFF
-REAL, INTENT(INOUT)    :: P (:,:,:)
+REAL(KIND=JPRD), INTENT(INOUT)    :: P (:,:,:)
 
 INTEGER :: I, J
 
@@ -62,7 +63,7 @@ SUBROUTINE REPLICATER2 (KOFF, P)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KOFF
-REAL, INTENT(INOUT)    :: P (:,:)
+REAL(KIND=JPRD), INTENT(INOUT)    :: P (:,:)
 
 INTEGER :: I, J
 
@@ -92,7 +93,7 @@ SUBROUTINE REPLICATER1 (KOFF, P)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KOFF
-REAL, INTENT(INOUT)    :: P (:)
+REAL(KIND=JPRD), INTENT(INOUT)    :: P (:)
 
 INTEGER :: I, J
 
@@ -153,7 +154,7 @@ SUBROUTINE NPROMIZER2 (KPROMA, PI, PO)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KPROMA
-REAL, INTENT (IN)  :: PI (:,:) 
+REAL(KIND=JPRD), INTENT (IN)  :: PI (:,:) 
 REAL, INTENT (OUT) :: PO (:,:)
 
 INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA, IBL
@@ -184,7 +185,7 @@ SUBROUTINE NPROMIZER3 (KPROMA, PI, PO)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KPROMA
-REAL, INTENT (IN)  :: PI (:,:,:) 
+REAL(KIND=JPRD), INTENT (IN)  :: PI (:,:,:) 
 REAL, INTENT (OUT) :: PO (:,:,:)
 
 INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA, IBL
@@ -215,7 +216,7 @@ SUBROUTINE NPROMIZER4 (KPROMA, PI, PO)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KPROMA
-REAL, INTENT (IN)  :: PI (:,:,:,:) 
+REAL(KIND=JPRD), INTENT (IN)  :: PI (:,:,:,:) 
 REAL, INTENT (OUT) :: PO (:,:,:,:)
 
 INTEGER :: I, J, IGPBLK, IGPTOT, IGP, JLON, JIDIA, JFDIA, IBL
@@ -277,10 +278,10 @@ SUBROUTINE INTERPOLATER3 (KFLEVG, KOFF, P)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KFLEVG, KOFF
-REAL, INTENT(INOUT), ALLOCATABLE :: P (:,:,:)
-REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), &
-         & LBOUND (P, 2):UBOUND (P, 2), &
-         & LBOUND (P, 3):UBOUND (P, 3))
+REAL(KIND=JPRD), INTENT(INOUT), ALLOCATABLE :: P (:,:,:)
+REAL(KIND=JPRD) :: Z (LBOUND (P, 1):UBOUND (P, 1), &
+                    & LBOUND (P, 2):UBOUND (P, 2), &
+                    & LBOUND (P, 3):UBOUND (P, 3))
 INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2
 REAL :: ZWA, ZWB, ZLEV1, ZLEV2
 
@@ -321,11 +322,11 @@ SUBROUTINE INTERPOLATER4 (KFLEVG, KOFF, P)
 IMPLICIT NONE
 
 INTEGER, INTENT(IN) :: KFLEVG, KOFF
-REAL, INTENT(INOUT), ALLOCATABLE :: P (:,:,:,:)
-REAL :: Z (LBOUND (P, 1):UBOUND (P, 1), &
-         & LBOUND (P, 2):UBOUND (P, 2), &
-         & LBOUND (P, 3):UBOUND (P, 3), &
-         & LBOUND (P, 4):UBOUND (P, 4))
+REAL(KIND=JPRD), INTENT(INOUT), ALLOCATABLE :: P (:,:,:,:)
+REAL(KIND=JPRD) :: Z (LBOUND (P, 1):UBOUND (P, 1), &
+                    & LBOUND (P, 2):UBOUND (P, 2), &
+                    & LBOUND (P, 3):UBOUND (P, 3), &
+                    & LBOUND (P, 4):UBOUND (P, 4))
 INTEGER :: ILEV1A, ILEV1B, ILEV2, NLEV1, NLEV2
 REAL :: ZWA, ZWB, ZLEV1, ZLEV2
 
diff --git a/src/testprogs/turb_mnh/getdata_turb_mod.F90 b/src/testprogs/turb_mnh/getdata_turb_mod.F90
index 7dce09991..984af87df 100644
--- a/src/testprogs/turb_mnh/getdata_turb_mod.F90
+++ b/src/testprogs/turb_mnh/getdata_turb_mod.F90
@@ -1,6 +1,7 @@
 MODULE GETDATA_TURB_MOD
 
 USE ARRAYS_MANIP, ONLY: SETUP, REPLICATE, NPROMIZE, INTERPOLATE, SET
+USE PARKIND1, ONLY: JPRD
 
 CONTAINS
 
@@ -139,74 +140,74 @@ REAL, INTENT(OUT), ALLOCATABLE   :: PDRRTS_TURB_OUT_B  (:,:,:)
 REAL, INTENT(OUT), ALLOCATABLE   :: ZDRSVS_TURB_OUT_B  (:,:,:,:) !(KLON,1,KLEV+2,KSV)
 
 !Inputs to read
-REAL, ALLOCATABLE   :: ZDXX               (:,:,:)
-REAL, ALLOCATABLE   :: ZDYY               (:,:,:)
-REAL, ALLOCATABLE   :: ZDZZ               (:,:,:)
-REAL, ALLOCATABLE   :: ZDZX               (:,:,:)
-REAL, ALLOCATABLE   :: ZDZY               (:,:,:)
-REAL, ALLOCATABLE   :: ZZZ                (:,:,:)
-REAL, ALLOCATABLE   :: ZDIRCOSXW          (:,:)
-REAL, ALLOCATABLE   :: ZDIRCOSYW          (:,:)
-REAL, ALLOCATABLE   :: ZDIRCOSZW          (:,:)
-REAL, ALLOCATABLE   :: ZCOSSLOPE          (:,:)
-REAL, ALLOCATABLE   :: ZSINSLOPE          (:,:)
-REAL, ALLOCATABLE   :: PRHODJ             (:,:,:)
-REAL, ALLOCATABLE   :: PTHVREF            (:,:,:)
-REAL, ALLOCATABLE   :: PSFTH              (:,:)
-REAL, ALLOCATABLE   :: PSFRV              (:,:)
-REAL, ALLOCATABLE   :: PSFU               (:,:)
-REAL, ALLOCATABLE   :: PSFV               (:,:)
-REAL, ALLOCATABLE   :: PSFSV              (:,:,:) !(KLON, 1, KSV)
-REAL, ALLOCATABLE   :: PPABSM             (:,:,:)
-REAL, ALLOCATABLE   :: PUM                (:,:,:)
-REAL, ALLOCATABLE   :: PVM                (:,:,:)
-REAL, ALLOCATABLE   :: PWM                (:,:,:)
-REAL, ALLOCATABLE   :: PTKEM              (:,:,:)
-REAL, ALLOCATABLE   :: ZSVM               (:,:,:,:) !(KLON,1,KLEV+2,KSV)
-REAL, ALLOCATABLE   :: PSRCM              (:,:,:)
-REAL, ALLOCATABLE   :: PLENGTHM           (:,:,:)
-REAL, ALLOCATABLE   :: PLENGTHH           (:,:,:)
-REAL, ALLOCATABLE   :: MFMOIST            (:,:,:)
-REAL, ALLOCATABLE   :: ZBL_DEPTH          (:,:)
-REAL, ALLOCATABLE   :: ZSBL_DEPTH         (:,:)
-REAL, ALLOCATABLE   :: ZCEI               (:,:,:)
-REAL, ALLOCATABLE   :: PTHM               (:,:,:)
-REAL, ALLOCATABLE   :: ZRM                (:,:,:,:) !(KLON,1,KLEV+2,KRR)
-REAL, ALLOCATABLE   :: PRUS               (:,:,:)
-REAL, ALLOCATABLE   :: PRVS               (:,:,:)
-REAL, ALLOCATABLE   :: PRWS               (:,:,:)
-REAL, ALLOCATABLE   :: PRTHS              (:,:,:)
-REAL, ALLOCATABLE   :: ZRRS               (:,:,:,:) !(KLON,1,KLEV+2,KRR)
-REAL, ALLOCATABLE   :: ZRSVS              (:,:,:,:) !(KLON,1,KLEV+2,KSV)
-REAL, ALLOCATABLE   :: PRTKES_OUT         (:,:,:)
-REAL, ALLOCATABLE   :: PFLXZTHVMF         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDXX               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDYY               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDZZ               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDZX               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDZY               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZZZ                (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDIRCOSXW          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDIRCOSYW          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDIRCOSZW          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZCOSSLOPE          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZSINSLOPE          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRHODJ             (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHVREF            (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFTH              (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFRV              (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFU               (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFV               (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSFSV              (:,:,:) !(KLON, 1, KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PPABSM             (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PUM                (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PVM                (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PWM                (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTKEM              (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZSVM               (:,:,:,:) !(KLON,1,KLEV+2,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSRCM              (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PLENGTHM           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PLENGTHH           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: MFMOIST            (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZBL_DEPTH          (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZSBL_DEPTH         (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZCEI               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHM               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRM                (:,:,:,:) !(KLON,1,KLEV+2,KRR)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRUS               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRVS               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRWS               (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRTHS              (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRRS               (:,:,:,:) !(KLON,1,KLEV+2,KRR)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRSVS              (:,:,:,:) !(KLON,1,KLEV+2,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRTKES_OUT         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PFLXZTHVMF         (:,:,:)
 !Expected values to read
-REAL, ALLOCATABLE   :: ZBL_DEPTH_OUT      (:,:)
-REAL, ALLOCATABLE   :: ZSBL_DEPTH_OUT     (:,:)
-REAL, ALLOCATABLE   :: PTHM_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: ZRM_OUT            (:,:,:,:) !(KLON,1,KLEV+2,KRR)
-REAL, ALLOCATABLE   :: PRUS_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: PRVS_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: PRWS_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: PRTHS_OUT          (:,:,:)
-REAL, ALLOCATABLE   :: ZRRS_OUT           (:,:,:,:) !(KLON,1,KLEV+2,KRR)
-REAL, ALLOCATABLE   :: ZRSVS_OUT          (:,:,:,:) !(KLON,1,KLEV+2,KSV)
-REAL, ALLOCATABLE   :: PRTKES_OUT_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PSIGS_OUT          (:,:,:)
-REAL, ALLOCATABLE   :: ZWTH_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: ZWRC_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: ZWSV_OUT           (:,:,:,:) !(KLON,1,KLEV+2,KSV)
-REAL, ALLOCATABLE   :: PDP_OUT            (:,:,:)
-REAL, ALLOCATABLE   :: PTP_OUT            (:,:,:)
-REAL, ALLOCATABLE   :: PTDIFF_OUT         (:,:,:)
-REAL, ALLOCATABLE   :: PTDISS_OUT         (:,:,:)
-REAL, ALLOCATABLE   :: PEDR_OUT           (:,:,:)
-REAL, ALLOCATABLE   :: PTPMF_OUT          (:,:,:)
-REAL, ALLOCATABLE   :: PDRUS_TURB_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PDRVS_TURB_OUT     (:,:,:)
-REAL, ALLOCATABLE   :: PDRTHLS_TURB_OUT   (:,:,:)
-REAL, ALLOCATABLE   :: PDRRTS_TURB_OUT    (:,:,:)
-REAL, ALLOCATABLE   :: ZDRSVS_TURB_OUT    (:,:,:,:) !(KLON,1,KLEV+2,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZBL_DEPTH_OUT      (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZSBL_DEPTH_OUT     (:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTHM_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRM_OUT            (:,:,:,:) !(KLON,1,KLEV+2,KRR)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRUS_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRVS_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRWS_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRTHS_OUT          (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRRS_OUT           (:,:,:,:) !(KLON,1,KLEV+2,KRR)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZRSVS_OUT          (:,:,:,:) !(KLON,1,KLEV+2,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PRTKES_OUT_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PSIGS_OUT          (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZWTH_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZWRC_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZWSV_OUT           (:,:,:,:) !(KLON,1,KLEV+2,KSV)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDP_OUT            (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTP_OUT            (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTDIFF_OUT         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTDISS_OUT         (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PEDR_OUT           (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PTPMF_OUT          (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDRUS_TURB_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDRVS_TURB_OUT     (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDRTHLS_TURB_OUT   (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: PDRRTS_TURB_OUT    (:,:,:)
+REAL(KIND=JPRD), ALLOCATABLE   :: ZDRSVS_TURB_OUT    (:,:,:,:) !(KLON,1,KLEV+2,KSV)
 
 INTEGER, INTENT(IN) :: NPROMA, NGPBLKS
 INTEGER :: NGPTOT
-- 
GitLab