From 4a79e57358a3db96b40dbf59a6557edb56449a3d Mon Sep 17 00:00:00 2001
From: Quentin Rodier <quentin.rodier@meteo.fr>
Date: Wed, 30 Jun 2021 16:42:03 +0200
Subject: [PATCH] P.Tulet 30/06/2021: bugfix diag with chemistry variables : no
 time splitted needed at DIAG so SVT must be computed with XSVT and GSPLIT=F

---
 src/MNH/ch_monitorn.f90 | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/MNH/ch_monitorn.f90 b/src/MNH/ch_monitorn.f90
index d1ac4a1a6..6e817aa0f 100644
--- a/src/MNH/ch_monitorn.f90
+++ b/src/MNH/ch_monitorn.f90
@@ -609,10 +609,15 @@ ZDTSOLVER = PTSTEP / NCH_SUBSTEPS
 !
 IF (LORILAM) THEN
   ALLOCATE( ZSVT(SIZE(XSVT,1),SIZE(XSVT,2),SIZE(XSVT,3),SIZE(XSVT,4)) )
-
-  DO JSV = 1, SIZE(XSVT,4)
-    ZSVT(:,:,:,JSV) =  XRSVS(:,:,:,JSV) *PTSTEP / XRHODJ(:,:,:) 
-  END DO
+  IF (CPROGRAM /='DIAG  ') THEN
+    DO JSV = 1, SIZE(XSVT,4)
+      ZSVT(:,:,:,JSV) =  XRSVS(:,:,:,JSV) *PTSTEP / XRHODJ(:,:,:)
+    END DO
+  ELSE
+    DO JSV = 1, SIZE(XSVT,4)
+      ZSVT(:,:,:,JSV) =  XSVT(:,:,:,JSV)
+    END DO
+  END IF
   ZSVT(:,:,:,NSV_CHEMBEG:NSV_CHEMEND) = MAX(ZSVT(:,:,:,NSV_CHEMBEG:NSV_CHEMEND), XMNH_TINY)
   ZSVT(:,:,:,NSV_AERBEG:NSV_AEREND)   = MAX(ZSVT(:,:,:,NSV_AERBEG:NSV_AEREND), XMNH_TINY)
 !
@@ -640,9 +645,7 @@ SELECT CASE (CCH_TDISCRETIZATION)
 END SELECT
 !
 !
-IF (CPROGRAM=='DIAG  ') THEN
-  IF (LEN_TRIM(CSPEC_BU_DIAG)/=0.OR.LEN_TRIM(CSPEC_DIAG)/=0) GSPLIT=.FALSE.  ! Modif. for DIAG
-END IF
+IF (CPROGRAM=='DIAG  ') GSPLIT=.FALSE.  ! Modif. for DIAG
 !
 !
 !*       1.6   allocate tables
-- 
GitLab