From 2ff9ae2dd1395b6edf0f501aa9ee63c4f5a0e954 Mon Sep 17 00:00:00 2001 From: Quentin Rodier <quentin.rodier@meteo.fr> Date: Mon, 2 Mar 2020 18:48:52 +0100 Subject: [PATCH] Benoit V. 02/03/2020: minor corrections. Cleaning, respect the DOCTOR norm and remove a deallocate at a wrong location (write_budget) --- src/MNH/lima_inst_procs.f90 | 2 +- src/MNH/lima_warm.f90 | 36 +++++++++++++++++------------------- src/MNH/write_budget.f90 | 1 - 3 files changed, 18 insertions(+), 21 deletions(-) diff --git a/src/MNH/lima_inst_procs.f90 b/src/MNH/lima_inst_procs.f90 index fe22db3a8..a03eed7e3 100644 --- a/src/MNH/lima_inst_procs.f90 +++ b/src/MNH/lima_inst_procs.f90 @@ -95,7 +95,7 @@ SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE, !------------------------------------------------------------------------------- ! ! -USE MODD_PARAM_LIMA, ONLY : LCOLD, LNUCL, LMEYERS, LSNOW, LWARM, LACTI, LRAIN, LHHONI, NMOD_CCN, NMOD_IFN +USE MODD_PARAM_LIMA, ONLY : LCOLD, LWARM, LRAIN ! USE MODI_LIMA_DROPS_BREAK_UP USE MODI_LIMA_DROPS_HOM_FREEZING diff --git a/src/MNH/lima_warm.f90 b/src/MNH/lima_warm.f90 index 35961b3ba..a82361d91 100644 --- a/src/MNH/lima_warm.f90 +++ b/src/MNH/lima_warm.f90 @@ -222,10 +222,10 @@ REAL, DIMENSION(SIZE(PRHODREF,1),SIZE(PRHODREF,2),SIZE(PRHODREF,3)) & PCCS, & ! Cloud water C. source PCRS ! Rain water C. source ! -REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: PNFS ! CCN C. available source +REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: ZNFS ! CCN C. available source !used as Free ice nuclei for !HOMOGENEOUS nucleation of haze -REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: PNAS ! Cloud C. nuclei C. source +REAL, DIMENSION(:,:,:,:), ALLOCATABLE :: ZNAS ! Cloud C. nuclei C. source !used as Free ice nuclei for !IMMERSION freezing ! @@ -272,15 +272,15 @@ IF ( LWARM ) PCCS(:,:,:) = PSVS(:,:,:,NSV_LIMA_NC) IF ( LWARM .AND. LRAIN ) PCRS(:,:,:) = PSVS(:,:,:,NSV_LIMA_NR) ! IF ( NMOD_CCN .GE. 1 ) THEN - ALLOCATE( PNFS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),NMOD_CCN) ) - ALLOCATE( PNAS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),NMOD_CCN) ) - PNFS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) - PNAS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) + ALLOCATE( ZNFS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),NMOD_CCN) ) + ALLOCATE( ZNAS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),NMOD_CCN) ) + ZNFS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) + ZNAS(:,:,:,:) = PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) ELSE - ALLOCATE( PNFS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),1) ) - ALLOCATE( PNAS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),1) ) - PNFS(:,:,:,:) = 0. - PNAS(:,:,:,:) = 0. + ALLOCATE( ZNFS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),1) ) + ALLOCATE( ZNAS(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3),1) ) + ZNFS(:,:,:,:) = 0. + ZNAS(:,:,:,:) = 0. END IF ! !------------------------------------------------------------------------------- @@ -359,9 +359,9 @@ END IF IF (LACTI .AND. NMOD_CCN.GE.1) THEN ! CALL LIMA_WARM_NUCL (OACTIT, PTSTEP, KMI, TPFILE, OCLOSE_OUT,& - PRHODREF, PEXNREF, PPABST, ZT, ZTM, PW_NU, & + PRHODREF, PEXNREF, PPABST, ZT, PTHM, PW_NU, & PRCM, PRVT, PRCT, PRRT, & - PTHS, PRVS, PRCS, PCCS, PNFS, PNAS ) + PTHS, PRVS, PRCS, PCCS, ZNFS, ZNAS ) ! IF (LBUDGET_TH) CALL BUDGET (PTHS(:,:,:)*PRHODJ(:,:,:),4,'HENU_BU_RTH') IF (LBUDGET_RV) CALL BUDGET (PRVS(:,:,:)*PRHODJ(:,:,:),6,'HENU_BU_RRV') @@ -369,7 +369,7 @@ IF (LACTI .AND. NMOD_CCN.GE.1) THEN IF (LBUDGET_SV) THEN CALL BUDGET (PCCS(:,:,:)*PRHODJ(:,:,:),12+NSV_LIMA_NC,'HENU_BU_RSV') ! RCN DO JL=1, NMOD_CCN - CALL BUDGET ( PNFS(:,:,:,JL)*PRHODJ(:,:,:),12+NSV_LIMA_CCN_FREE+JL-1,'HENU_BU_RSV') + CALL BUDGET ( ZNFS(:,:,:,JL)*PRHODJ(:,:,:),12+NSV_LIMA_CCN_FREE+JL-1,'HENU_BU_RSV') END DO END IF ! @@ -451,14 +451,12 @@ IF ( LWARM ) PSVS(:,:,:,NSV_LIMA_NC) = PCCS(:,:,:) IF ( LWARM .AND. LRAIN ) PSVS(:,:,:,NSV_LIMA_NR) = PCRS(:,:,:) ! IF ( NMOD_CCN .GE. 1 ) THEN - PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) = PNFS(:,:,:,:) - PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) = PNAS(:,:,:,:) + PSVS(:,:,:,NSV_LIMA_CCN_FREE:NSV_LIMA_CCN_FREE+NMOD_CCN-1) = ZNFS(:,:,:,:) + PSVS(:,:,:,NSV_LIMA_CCN_ACTI:NSV_LIMA_CCN_ACTI+NMOD_CCN-1) = ZNAS(:,:,:,:) END IF ! -!++cb++ -IF (ALLOCATED(PNFS)) DEALLOCATE(PNFS) -IF (ALLOCATED(PNAS)) DEALLOCATE(PNAS) -!--cb-- +IF (ALLOCATED(ZNFS)) DEALLOCATE(ZNFS) +IF (ALLOCATED(ZNAS)) DEALLOCATE(ZNAS) ! !------------------------------------------------------------------------------- ! diff --git a/src/MNH/write_budget.f90 b/src/MNH/write_budget.f90 index c70ee075f..d9831e2b9 100644 --- a/src/MNH/write_budget.f90 +++ b/src/MNH/write_budget.f90 @@ -946,7 +946,6 @@ SELECT CASE (CBUTYPE) ZWORKT(:,:,:,1,1,JPROC) = ZWORKT(:,:,:,1,1,JPROC)* ZCONVERT(JPROC) & / ZWORK(:,:,:,1,1,1) END DO - DEALLOCATE(ZWORK) ENDIF DEALLOCATE(ZCONVERT) ! -- GitLab