From 6f9297de34384d3c87f9cff56e14a16f084519c6 Mon Sep 17 00:00:00 2001
From: Quentin Rodier <quentin.rodier@meteo.fr>
Date: Wed, 26 Jan 2022 12:01:34 +0100
Subject: [PATCH] Quentin 26/01/2022: Merge turb.F90 MNH->COMMON CALL ABORT for
 _ll routines for AROME + move TPFILE I/O type to aro_turb_mnh

---
 src/arome/aux/mode_argslist_ll.F90    |  5 ++-
 src/arome/aux/mode_io_field_write.F90 |  1 +
 src/arome/aux/mode_ll.F90             |  2 +
 src/arome/aux/shuman.F90              |  9 +++++
 src/arome/ext/aro_turb_mnh.F90        |  9 ++++-
 src/common/turb/modi_turb.F90         |  6 +--
 src/common/turb/turb.F90              | 56 +++++++++++++--------------
 7 files changed, 51 insertions(+), 37 deletions(-)

diff --git a/src/arome/aux/mode_argslist_ll.F90 b/src/arome/aux/mode_argslist_ll.F90
index 42eaf543e..ed5c4f179 100644
--- a/src/arome/aux/mode_argslist_ll.F90
+++ b/src/arome/aux/mode_argslist_ll.F90
@@ -5,8 +5,8 @@ CONTAINS
 !
   SUBROUTINE CLEANLIST_ll(TPLIST)
 IMPLICIT NONE
-
     TYPE(LIST_ll),  POINTER :: TPLIST ! List of fields
+    CALL ABORT
   END SUBROUTINE CLEANLIST_ll
 !
   SUBROUTINE ADD3DFIELD_ll(TPLIST, PFIELD, HNAME)
@@ -17,5 +17,6 @@ IMPLICIT NONE
   !                                              of fields
     character(len=*), intent(in) :: HNAME ! Name of the field to be added
   !
-  END SUBROUTINE ADD3DFIELD_ll
+   CALL ABORT  
+END SUBROUTINE ADD3DFIELD_ll
 END MODULE MODE_ARGSLIST_ll
diff --git a/src/arome/aux/mode_io_field_write.F90 b/src/arome/aux/mode_io_field_write.F90
index 39e6f7fec..e1ea4aef4 100644
--- a/src/arome/aux/mode_io_field_write.F90
+++ b/src/arome/aux/mode_io_field_write.F90
@@ -10,6 +10,7 @@ SUBROUTINE IO_FIELD_WRITE(TPFILE,TZFIELD,PFIELD)
     TYPE(TFIELDDATA), INTENT(IN)          :: TZFIELD
     REAL, DIMENSION(:,:,:),    INTENT(IN) :: PFIELD   ! array containing the data field
     !
+    CALL ABORT
 END SUBROUTINE IO_FIELD_WRITE
 END MODULE MODE_IO_FIELD_WRITE
 
diff --git a/src/arome/aux/mode_ll.F90 b/src/arome/aux/mode_ll.F90
index d3626160c..a71daecfa 100644
--- a/src/arome/aux/mode_ll.F90
+++ b/src/arome/aux/mode_ll.F90
@@ -12,12 +12,14 @@ CONTAINS
   KYOR=1+JPHEXT
   KXEND=KSIZE1-JPHEXT
   KYEND=KSIZE2-JPHEXT
+  CALL ABORT
   END SUBROUTINE GET_INDICE_ll
 
   SUBROUTINE UPDATE_HALO_ll(TPLIST, KINFO)
   USE MODD_ARGSLIST_ll, ONLY : LIST_ll  
   TYPE(LIST_ll), POINTER :: TPLIST ! pointer to the list of fields to be updated
   INTEGER                :: KINFO  ! return status
+  CALL ABORT
   END SUBROUTINE UPDATE_HALO_ll
 
 LOGICAL FUNCTION LNORTH_ll()
diff --git a/src/arome/aux/shuman.F90 b/src/arome/aux/shuman.F90
index 47109f11e..4aaa97995 100644
--- a/src/arome/aux/shuman.F90
+++ b/src/arome/aux/shuman.F90
@@ -88,6 +88,7 @@ PMXF=PA
 !END DO
 !
 !PMXF(IIU,:,:)    = PMXF(2*JPHEXT,:,:)
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
 !
 !-------------------------------------------------------------------------------
 !
@@ -182,6 +183,8 @@ PMXM=PA
 !
 !PMXM(1,:,:)    = PMXM(IIU-2*JPHEXT+1,:,:)
 !
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
+
 !-------------------------------------------------------------------------------
 !
 IF (LHOOK) CALL DR_HOOK('MXM',1,ZHOOK_HANDLE)
@@ -370,6 +373,7 @@ PMYM=PA
 !
 !PMYM(:,1,:)    = PMYM(:,IJU-2*JPHEXT+1,:)
 !
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
 !-------------------------------------------------------------------------------
 !
 IF (LHOOK) CALL DR_HOOK('MYM',1,ZHOOK_HANDLE)
@@ -622,6 +626,7 @@ DO JI=1,IIU-1
 END DO
 !
 !PDXF(IIU,:,:)    = PDXF(2*JPHEXT,:,:)
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
 !
 !-------------------------------------------------------------------------------
 !
@@ -713,6 +718,7 @@ END DO
 !
 PDXM(1,:,:)    =  PDXM(IIU-2*JPHEXT+1,:,:)
 !
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
 !-------------------------------------------------------------------------------
 !
 IF (LHOOK) CALL DR_HOOK('DXM',1,ZHOOK_HANDLE)
@@ -803,6 +809,8 @@ END DO
 !
 !PDYF(:,IJU,:)    = PDYF(:,2*JPHEXT,:)
 !
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
+
 !-------------------------------------------------------------------------------
 !
 IF (LHOOK) CALL DR_HOOK('DYF',1,ZHOOK_HANDLE)
@@ -892,6 +900,7 @@ DO JJ=2,IJU
 END DO
 !
 PDYM(:,1,:)    =  PDYM(:,IJU-2*JPHEXT+1,:)
+CALL ABORT ! AROME SHOULD NOT CALLED HORIZONTAL FINITE DIFFERENCE
 !
 !-------------------------------------------------------------------------------
 !
diff --git a/src/arome/ext/aro_turb_mnh.F90 b/src/arome/ext/aro_turb_mnh.F90
index 8b484ac36..d9609464f 100644
--- a/src/arome/ext/aro_turb_mnh.F90
+++ b/src/arome/ext/aro_turb_mnh.F90
@@ -71,6 +71,7 @@
 USE MODD_CONF
 USE MODD_CST
 USE MODD_PARAMETERS
+USE MODD_IO, ONLY: TFILEDATA
 USE MODD_BUDGET, ONLY: NBUDGET_RI, TBUDGETDATA
 !
 USE MODI_TURB
@@ -175,7 +176,8 @@ TYPE(TLDDH),   INTENT(IN), TARGET      :: YDLDDH
 TYPE(TMDDH),   INTENT(IN), TARGET      :: YDMDDH
 !
 !
- TYPE(TBUDGETDATA), DIMENSION(NBUDGET_RI) :: YLBUDGET !NBUDGET_RI is the one with the highest number needed for turb
+TYPE(TBUDGETDATA), DIMENSION(NBUDGET_RI) :: YLBUDGET !NBUDGET_RI is the one with the highest number needed for turb
+TYPE(TFILEDATA) :: ZTFILE !I/O for MesoNH
 !*       0.2   Declarations of local variables :
 !
 INTEGER :: JRR,JSV       ! Loop index for the moist and scalar variables
@@ -258,6 +260,9 @@ IKE=KKU-JPVEXT_TURB*KKL
 ! Numero du modele si grid nestind, toujours egal a 1
 IMI=1
 
+! Fichier I/O pour MesoNH (non-utilise dans AROME)
+ZTFILE%LOPENED=.FALSE.
+
 ! Type de condition � la limite. En 1D, sans importance. A etudier en 3D.
 HLBCX(:)='CYCL'
 HLBCY(:)='CYCL'
@@ -415,7 +420,7 @@ CALL TURB (KLEV+2,1,KKL,IMI, KRR, KRRL, KRRI, HLBCX, HLBCY, ISPLIT,IMI, &
    & OTURB_FLX,OTURB_DIAG,OSUBG_COND,ORMC01,    &
    & HTURBDIM,HTURBLEN,'NONE','NONE', CL,           &
    & HMF_UPDRAFT,ZIMPL,                                    &
-   & 2*PTSTEP,                                               &
+   & 2*PTSTEP,ZTFILE,                                      &
    & ZDXX,ZDYY,ZDZZ,ZDZX,ZDZY,ZZZ,          &
    & ZDIRCOSXW,ZDIRCOSYW,ZDIRCOSZW,ZCOSSLOPE,ZSINSLOPE,    &
    & PRHODJ,PTHVREF,PRHODREF,                              &
diff --git a/src/common/turb/modi_turb.F90 b/src/common/turb/modi_turb.F90
index 5f255c4b6..032c25750 100644
--- a/src/common/turb/modi_turb.F90
+++ b/src/common/turb/modi_turb.F90
@@ -8,7 +8,7 @@ INTERFACE
               & KSPLIT,KMODEL_CL, &
               & OTURB_FLX,OTURB_DIAG,OSUBG_COND,ORMC01,    &
               & HTURBDIM,HTURBLEN,HTOM,HTURBLEN_CL,HINST_SFU,         &
-              & HMF_UPDRAFT,PIMPL,PTSTEP,                             &
+              & HMF_UPDRAFT,PIMPL,PTSTEP,TPFILE,                      &
               & PDXX,PDYY,PDZZ,PDZX,PDZY,PZZ,          &
               & PDIRCOSXW,PDIRCOSYW,PDIRCOSZW,PCOSSLOPE,PSINSLOPE,    &
               & PRHODJ,PTHVREF,PRHODREF,                              &
@@ -25,7 +25,7 @@ INTERFACE
               & PFLXZTHVMF,PWTH,PWRC,PWSV,PDP,PTP,PTPMF,PTDIFF,PTDISS,&
               & YDDDH,YDLDDH,YDMDDH,                                  &
               & TBUDGETS, KBUDGETS,                                   &
-              & PTR,PDISS,PEDR,PLEM,TPFILE                            ) 
+              & PTR,PDISS,PEDR,PLEM                                   ) 
 !
 USE DDH_MIX, ONLY  : TYP_DDH
 USE YOMLDDH, ONLY  : TLDDH
@@ -60,6 +60,7 @@ CHARACTER(LEN=1)      , INTENT(IN)   ::  HINST_SFU    ! temporal location of the
                                                       ! surface friction flux
 REAL,                   INTENT(IN)   ::  PIMPL        ! degree of implicitness
 REAL,                   INTENT(IN)   ::  PTSTEP       ! Timestep
+TYPE(TFILEDATA),        INTENT(IN)   ::  TPFILE       ! Output file for MesoNH
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)   :: PDXX,PDYY,PDZZ,PDZX,PDZY
                                         ! metric coefficients
@@ -151,7 +152,6 @@ REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PTR   ! Transport production o
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PDISS ! Dissipation of TKE
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PEDR  ! EDR
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PLEM  ! Mixing length
-TYPE(TFILEDATA),        INTENT(IN),  OPTIONAL  :: TPFILE! Output file for MesoNH
 !
 !-------------------------------------------------------------------------------
 !
diff --git a/src/common/turb/turb.F90 b/src/common/turb/turb.F90
index f0be472cb..e13203dac 100644
--- a/src/common/turb/turb.F90
+++ b/src/common/turb/turb.F90
@@ -8,7 +8,7 @@
               & OTURB_FLX,OTURB_DIAG,OSUBG_COND,ORMC01,    &
               & HTURBDIM,HTURBLEN,HTOM,HTURBLEN_CL,HINST_SFU,         &
               & HMF_UPDRAFT,PIMPL,   &
-              & PTSTEP,PDXX,PDYY,PDZZ,PDZX,PDZY,PZZ,           &
+              & PTSTEP,TPFILE, PDXX,PDYY,PDZZ,PDZX,PDZY,PZZ,           &
               & PDIRCOSXW,PDIRCOSYW,PDIRCOSZW,PCOSSLOPE,PSINSLOPE,    &
               & PRHODJ,PTHVREF,PRHODREF,                              &
               & PSFTH,PSFRV,PSFSV,PSFU,PSFV,                          &
@@ -24,7 +24,7 @@
               & PFLXZTHVMF,PWTH,PWRC,PWSV,PDP,PTP,PTPMF,PTDIFF,PTDISS,&
               & YDDDH,YDLDDH,YDMDDH,                                  &
               & TBUDGETS, KBUDGETS,                                   &
-              & PTR,PDISS,PEDR,PLEM,TPFILE                            )
+              & PTR,PDISS,PEDR,PLEM                            )
 !     #################################################################
 !
 !
@@ -302,7 +302,7 @@ REAL,                   INTENT(IN)   ::  PIMPL        ! degree of implicitness
 REAL,                   INTENT(IN)   ::  PTSTEP       ! timestep 
 !
 CHARACTER(LEN=4),       INTENT(IN)   ::  HMF_UPDRAFT  ! Type of Mass Flux Scheme
-
+TYPE(TFILEDATA),        INTENT(IN)   ::  TPFILE       ! Output file
 !
 REAL, DIMENSION(:,:,:), INTENT(IN)   :: PDXX,PDYY,PDZZ,PDZX,PDZY
                                         ! metric coefficients
@@ -397,7 +397,6 @@ REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PTR   ! Transport production o
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PDISS ! Dissipation of TKE
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PEDR  ! EDR
 REAL, DIMENSION(:,:,:), INTENT(OUT), OPTIONAL  :: PLEM  ! Mixing length
-TYPE(TFILEDATA),        INTENT(IN),  OPTIONAL  :: TPFILE! Output file for MesoNH
 !
 !
 !-------------------------------------------------------------------------------
@@ -456,7 +455,6 @@ REAL                :: ZALPHA       ! work coefficient :
 REAL :: ZTIME1, ZTIME2
 REAL, DIMENSION(SIZE(PUT,1),SIZE(PUT,2),SIZE(PUT,3))::  ZSHEAR, ZDUDZ, ZDVDZ
 TYPE(TFIELDDATA) :: TZFIELD
-TYPE(TFILEDATA)  :: TZFILE ! File type to write fields for MesoNH
 !
 !*      1.PRELIMINARIES
 !         -------------
@@ -467,8 +465,6 @@ TYPE(TFILEDATA)  :: TZFILE ! File type to write fields for MesoNH
 REAL(KIND=JPRB) :: ZHOOK_HANDLE
 IF (LHOOK) CALL DR_HOOK('TURB',0,ZHOOK_HANDLE)
 !
-IF(PRESENT(TPFILE)) TZFILE = TPFILE
-!
 IF (LHARAT .AND. HTURBDIM /= '1DIM') THEN
   CALL ABOR1('LHARATU only implemented for option HTURBDIM=1DIM!')
 ENDIF
@@ -567,7 +563,7 @@ IF (KRRL >=1) THEN
   END IF
 !
 !
-  IF ( TZFILE%LOPENED .AND. OTURB_DIAG ) THEN
+  IF ( TPFILE%LOPENED .AND. OTURB_DIAG ) THEN
     TZFIELD%CMNHNAME   = 'ATHETA'
     TZFIELD%CSTDNAME   = ''
     TZFIELD%CLONGNAME  = 'ATHETA'
@@ -578,7 +574,7 @@ IF (KRRL >=1) THEN
     TZFIELD%NTYPE      = TYPEREAL
     TZFIELD%NDIMS      = 3
     TZFIELD%LTIMEDEP   = .TRUE.
-    CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZATHETA)
+    CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZATHETA)
 ! 
     TZFIELD%CMNHNAME   = 'AMOIST'
     TZFIELD%CSTDNAME   = ''
@@ -590,7 +586,7 @@ IF (KRRL >=1) THEN
     TZFIELD%NTYPE      = TYPEREAL
     TZFIELD%NDIMS      = 3
     TZFIELD%LTIMEDEP   = .TRUE.
-    CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZAMOIST)
+    CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZAMOIST)
   END IF
 !
 ELSE
@@ -868,11 +864,11 @@ ENDIF
 !          -----------------
 !
 IF( LBUDGET_U )  CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_U ), 'VTURB', PRUS(:, :, :)    )
-IF( LBUDGET_v )  CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_V ), 'VTURB', PRVS(:, :, :)    )
-IF( LBUDGET_w )  CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_W ), 'VTURB', PRWS(:, :, :)    )
+IF( LBUDGET_V )  CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_V ), 'VTURB', PRVS(:, :, :)    )
+IF( LBUDGET_W )  CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_W ), 'VTURB', PRWS(:, :, :)    )
 
-IF( LBUDGET_th ) THEN
-  IF( KRRI >= 1 .and. KRRL >= 1 ) THEN
+IF( LBUDGET_TH ) THEN
+  IF( KRRI >= 1 .AND. KRRL >= 1 ) THEN
     CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_TH), 'VTURB', PRTHLS(:, :, :) + ZLVOCPEXNM(:, :, :) * PRRS(:, :, :, 2) &
                                                                           + ZLSOCPEXNM(:, :, :) * PRRS(:, :, :, 4) )
   ELSE IF( KRRL >= 1 ) THEN
@@ -882,8 +878,8 @@ IF( LBUDGET_th ) THEN
   END IF
 END IF
 
-IF( LBUDGET_rv ) THEN
-  IF( KRRI >= 1 .and. KRRL >= 1 ) THEN
+IF( LBUDGET_RV ) THEN
+  IF( KRRI >= 1 .AND. KRRL >= 1 ) THEN
     CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RV), 'VTURB', PRRS(:, :, :, 1) - PRRS(:, :, :, 2) - PRRS(:, :, :, 4) )
   ELSE IF( KRRL >= 1 ) THEN
     CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RV), 'VTURB', PRRS(:, :, :, 1) - PRRS(:, :, :, 2) )
@@ -892,10 +888,10 @@ IF( LBUDGET_rv ) THEN
   END IF
 END IF
 
-IF( LBUDGET_rc ) CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RC), 'VTURB', PRRS  (:, :, :, 2) )
-IF( LBUDGET_ri ) CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RI), 'VTURB', PRRS  (:, :, :, 4) )
+IF( LBUDGET_RC ) CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RC), 'VTURB', PRRS  (:, :, :, 2) )
+IF( LBUDGET_RI ) CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_RI), 'VTURB', PRRS  (:, :, :, 4) )
 
-IF( LBUDGET_sv ) THEN
+IF( LBUDGET_SV ) THEN
   DO JSV = 1, NSV
     CALL BUDGET_STORE_INIT( TBUDGETS(NBUDGET_SV1 - 1 + JSV), 'VTURB', PRSVS(:, :, :, JSV) )
   END DO
@@ -904,7 +900,7 @@ END IF
 CALL TURB_VER(KKA,KKU,KKL,KRR, KRRL, KRRI,               &
           OTURB_FLX,                                     &
           HTURBDIM,HTOM,PIMPL,ZEXPL,                     &
-          PTSTEP,TZFILE,                                 &
+          PTSTEP,TPFILE,                                 &
           PDXX,PDYY,PDZZ,PDZX,PDZY,PDIRCOSZW,PZZ,        &
           PCOSSLOPE,PSINSLOPE,                           &
           PRHODJ,PTHVREF,                                &
@@ -1073,7 +1069,7 @@ CALL TKE_EPS_SOURCES(KKA,KKU,KKL,KMI,PTKET,ZLM,ZLEPS,PDP,ZTRH,       &
                    & PRHODJ,PDZZ,PDXX,PDYY,PDZX,PDZY,PZZ,            &
                    & PTSTEP,PIMPL,ZEXPL,                         &
                    & HTURBLEN,HTURBDIM,                              &
-                   & TZFILE,OTURB_DIAG,           &
+                   & TPFILE,OTURB_DIAG,           &
                    & PTP,PRTKES,PRTHLS,ZCOEF_DISS,PTDIFF,PTDISS,&
                    & TBUDGETS,KBUDGETS,&
                    & PEDR=PEDR)
@@ -1095,7 +1091,7 @@ ENDIF
 !*      7. STORES SOME INFORMATIONS RELATED TO THE TURBULENCE SCHEME
 !          ---------------------------------------------------------
 !
-IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
+IF ( OTURB_DIAG .AND. TPFILE%LOPENED ) THEN
 ! 
 ! stores the mixing length
 ! 
@@ -1109,7 +1105,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
   TZFIELD%NTYPE      = TYPEREAL
   TZFIELD%NDIMS      = 3
   TZFIELD%LTIMEDEP   = .TRUE.
-  CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZLM)
+  CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZLM)
 !
   IF (KRR /= 0) THEN
 !
@@ -1125,7 +1121,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
     TZFIELD%NTYPE      = TYPEREAL
     TZFIELD%NDIMS      = 3
     TZFIELD%LTIMEDEP   = .TRUE.
-    CALL IO_FIELD_WRITE(TZFILE,TZFIELD,PTHLT)
+    CALL IO_FIELD_WRITE(TPFILE,TZFIELD,PTHLT)
 !
 ! stores the conservative mixing ratio
 !
@@ -1139,7 +1135,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
     TZFIELD%NTYPE      = TYPEREAL
     TZFIELD%NDIMS      = 3
     TZFIELD%LTIMEDEP   = .TRUE.
-    CALL IO_FIELD_WRITE(TZFILE,TZFIELD,PRT(:,:,:,1))
+    CALL IO_FIELD_WRITE(TPFILE,TZFIELD,PRT(:,:,:,1))
    END IF
 END IF
 !
@@ -1784,7 +1780,7 @@ ENDIF
 !              -----------------------------------------------
 !
 ! Impression before modification of the mixing length
-IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
+IF ( OTURB_DIAG .AND. TPFILE%LOPENED ) THEN
   TZFIELD%CMNHNAME   = 'LM_CLEAR_SKY'
   TZFIELD%CSTDNAME   = ''
   TZFIELD%CLONGNAME  = 'LM_CLEAR_SKY'
@@ -1795,7 +1791,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
   TZFIELD%NTYPE      = TYPEREAL
   TZFIELD%NDIMS      = 3
   TZFIELD%LTIMEDEP   = .TRUE.
-  CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZLM)
+  CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZLM)
 ENDIF
 !
 ! Amplification of the mixing length when the criteria are verified
@@ -1810,7 +1806,7 @@ WHERE (PCEI(:,:,:) == -1.) ZLM(:,:,:) = ZLM_CLOUD(:,:,:)
 !*       5.    IMPRESSION
 !              ----------
 !
-IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
+IF ( OTURB_DIAG .AND. TPFILE%LOPENED ) THEN
   TZFIELD%CMNHNAME   = 'COEF_AMPL'
   TZFIELD%CSTDNAME   = ''
   TZFIELD%CLONGNAME  = 'COEF_AMPL'
@@ -1821,7 +1817,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
   TZFIELD%NTYPE      = TYPEREAL
   TZFIELD%NDIMS      = 3
   TZFIELD%LTIMEDEP   = .TRUE.
-  CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZCOEF_AMPL)
+  CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZCOEF_AMPL)
   !
   TZFIELD%CMNHNAME   = 'LM_CLOUD'
   TZFIELD%CSTDNAME   = ''
@@ -1832,7 +1828,7 @@ IF ( OTURB_DIAG .AND. TZFILE%LOPENED ) THEN
   TZFIELD%NGRID      = 1
   TZFIELD%NTYPE      = TYPEREAL
   TZFIELD%NDIMS      = 3
-  CALL IO_FIELD_WRITE(TZFILE,TZFIELD,ZLM_CLOUD)
+  CALL IO_FIELD_WRITE(TPFILE,TZFIELD,ZLM_CLOUD)
   !
 ENDIF
 !
-- 
GitLab