diff --git a/src/MNH/ice4_slow.f90 b/src/MNH/ice4_slow.f90 index e527e0f878e30cabfcfd78a4347821886552f4ec..15d0cd78e495cb255015fb6ed29fbfdb5361c748 100644 --- a/src/MNH/ice4_slow.f90 +++ b/src/MNH/ice4_slow.f90 @@ -5,7 +5,7 @@ !----------------------------------------------------------------- MODULE MODI_ICE4_SLOW INTERFACE -SUBROUTINE ICE4_SLOW(KSIZE, LDSOFT, HSUBG_AUCV_RI, PCOMPUTE, PRHODREF, PT,& +SUBROUTINE ICE4_SLOW(KSIZE, LDSOFT, PCOMPUTE, PRHODREF, PT,& &PSSI, PLVFACT, PLSFACT, & &PRVT, PRCT, PRIT, PRST, PRGT,& &PLBDAS, PLBDAG,& @@ -15,7 +15,6 @@ SUBROUTINE ICE4_SLOW(KSIZE, LDSOFT, HSUBG_AUCV_RI, PCOMPUTE, PRHODREF, PT,& IMPLICIT NONE INTEGER, INTENT(IN) :: KSIZE LOGICAL, INTENT(IN) :: LDSOFT -CHARACTER(LEN=80), INTENT(IN) :: HSUBG_AUCV_RI REAL, DIMENSION(KSIZE), INTENT(IN) :: PCOMPUTE REAL, DIMENSION(KSIZE), INTENT(IN) :: PRHODREF ! Reference density REAL, DIMENSION(KSIZE), INTENT(IN) :: PT ! Temperature @@ -47,7 +46,7 @@ REAL, DIMENSION(KSIZE), INTENT(INOUT) :: PA_RG END SUBROUTINE ICE4_SLOW END INTERFACE END MODULE MODI_ICE4_SLOW -SUBROUTINE ICE4_SLOW(KSIZE, LDSOFT, HSUBG_AUCV_RI, PCOMPUTE, PRHODREF, PT, & +SUBROUTINE ICE4_SLOW(KSIZE, LDSOFT, PCOMPUTE, PRHODREF, PT, & &PSSI, PLVFACT, PLSFACT, & &PRVT, PRCT, PRIT, PRST, PRGT, & &PLBDAS, PLBDAG, & @@ -82,7 +81,6 @@ IMPLICIT NONE ! INTEGER, INTENT(IN) :: KSIZE LOGICAL, INTENT(IN) :: LDSOFT -CHARACTER(LEN=80), INTENT(IN) :: HSUBG_AUCV_RI REAL, DIMENSION(KSIZE), INTENT(IN) :: PCOMPUTE REAL, DIMENSION(KSIZE), INTENT(IN) :: PRHODREF ! Reference density REAL, DIMENSION(KSIZE), INTENT(IN) :: PT ! Temperature diff --git a/src/MNH/ice4_tendencies.f90 b/src/MNH/ice4_tendencies.f90 index 9b49d531b8cafe00e00b2da0b59c932b6486065c..49cd599235d8a67c664bd2710e7864adc0a82123 100644 --- a/src/MNH/ice4_tendencies.f90 +++ b/src/MNH/ice4_tendencies.f90 @@ -500,7 +500,7 @@ IF(KSIZE>0) THEN ENDIF ! ! -CALL ICE4_SLOW(KSIZE, ODSOFT, HSUBG_AUCV_RI, PCOMPUTE, PRHODREF, ZT, & +CALL ICE4_SLOW(KSIZE, ODSOFT, PCOMPUTE, PRHODREF, ZT, & &PSSI, PLVFACT, PLSFACT, & &ZRVT, ZRCT, ZRIT, ZRST, ZRGT, & &ZLBDAS, ZLBDAG, & diff --git a/src/MNH/lima_adjust.f90 b/src/MNH/lima_adjust.f90 index 404b7e731e45cd60a0e5ab8acf599fa0e2be3a89..949fabf42b62e7240d2806dc6eaada110ff037f0 100644 --- a/src/MNH/lima_adjust.f90 +++ b/src/MNH/lima_adjust.f90 @@ -9,12 +9,12 @@ ! INTERFACE ! - SUBROUTINE LIMA_ADJUST(KRR, KMI, TPFILE, HRAD, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV,& - PPABST, PZZ, PDTHRAD, PW_NU, & - PRT, PRS, PSVT, PSVS, & - PTHS, PSRCS, PCLDFR, PICEFR, PPRCFR, PRC_MF, PCF_MF) + SUBROUTINE LIMA_ADJUST(KRR, KMI, TPFILE, & + OSUBG_COND, PTSTEP, & + PRHODREF, PRHODJ, PEXNREF, PPABSM, & + PPABST, & + PRT, PRS, PSVT, PSVS, & + PTHS, PSRCS, PCLDFR ) ! USE MODD_IO, ONLY: TFILEDATA USE MODD_NSV, only: NSV_LIMA_BEG @@ -22,28 +22,16 @@ USE MODD_NSV, only: NSV_LIMA_BEG INTEGER, INTENT(IN) :: KRR ! Number of moist variables INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file -CHARACTER(len=4), INTENT(IN) :: HTURBDIM ! Dimensionality of the - ! turbulence scheme -CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name LOGICAL, INTENT(IN) :: OSUBG_COND ! Switch for Subgrid ! Condensation -LOGICAL :: OSIGMAS ! Switch for Sigma_s: - ! use values computed in CONDENSATION - ! or that from turbulence scheme REAL, INTENT(IN) :: PTSTEP ! Time step -REAL, INTENT(IN) :: PSIGQSAT ! coeff applied to qsat variance contribution ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Dry density of the ! reference state REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Dry density * Jacobian REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABSM ! Absolute Pressure at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSIGS ! Sigma_s at time t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PMFCONV ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! Absolute Pressure at t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PDTHRAD ! Radiative temperature tendency -REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for ! REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! m.r. at t ! @@ -59,10 +47,6 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRCS ! Second-order flux ! s'rc'/2Sigma_s2 at time t+1 ! multiplied by Lambda_3 REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCLDFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PICEFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PPRCFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRC_MF! Convective Mass Flux liquid mixing ratio -REAL, DIMENSION(:,:,:), INTENT(IN) :: PCF_MF! Convective Mass Flux Cloud fraction ! END SUBROUTINE LIMA_ADJUST ! @@ -70,14 +54,14 @@ END INTERFACE ! END MODULE MODI_LIMA_ADJUST ! -! ########################################################################## - SUBROUTINE LIMA_ADJUST(KRR, KMI, TPFILE, HRAD, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV,& - PPABST, PZZ, PDTHRAD, PW_NU, & - PRT, PRS, PSVT, PSVS, & - PTHS, PSRCS, PCLDFR, PICEFR, PPRCFR, PRC_MF, PCF_MF) -! ########################################################################## +! ########################################################### + SUBROUTINE LIMA_ADJUST(KRR, KMI, TPFILE, & + OSUBG_COND, PTSTEP, & + PRHODREF, PRHODJ, PEXNREF, PPABSM, & + PPABST, & + PRT, PRS, PSVT, PSVS, & + PTHS, PSRCS, PCLDFR ) +! ########################################################### ! !!**** *MIMA_ADJUST* - compute the fast microphysical sources !! @@ -192,28 +176,16 @@ IMPLICIT NONE INTEGER, INTENT(IN) :: KRR ! Number of moist variables INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file -CHARACTER(len=4), INTENT(IN) :: HTURBDIM ! Dimensionality of the - ! turbulence scheme -CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name LOGICAL, INTENT(IN) :: OSUBG_COND ! Switch for Subgrid ! Condensation -LOGICAL :: OSIGMAS ! Switch for Sigma_s: - ! use values computed in CONDENSATION - ! or that from turbulence scheme REAL, INTENT(IN) :: PTSTEP ! Time step -REAL, INTENT(IN) :: PSIGQSAT ! coeff applied to qsat variance contribution ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Dry density of the ! reference state REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODJ ! Dry density * Jacobian REAL, DIMENSION(:,:,:), INTENT(IN) :: PEXNREF ! Reference Exner function REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABSM ! Absolute Pressure at t-dt -REAL, DIMENSION(:,:,:), INTENT(IN) :: PSIGS ! Sigma_s at time t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PMFCONV ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PPABST ! Absolute Pressure at t -REAL, DIMENSION(:,:,:), INTENT(IN) :: PZZ ! -REAL, DIMENSION(:,:,:), INTENT(IN) :: PDTHRAD ! Radiative temperature tendency -REAL, DIMENSION(:,:,:), INTENT(IN) :: PW_NU ! updraft velocity used for ! REAL, DIMENSION(:,:,:,:), INTENT(IN) :: PRT ! m.r. at t ! @@ -229,18 +201,13 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRCS ! Second-order flux ! s'rc'/2Sigma_s2 at time t+1 ! multiplied by Lambda_3 REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCLDFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PICEFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PPRCFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(IN) :: PRC_MF! Convective Mass Flux liquid mixing ratio -REAL, DIMENSION(:,:,:), INTENT(IN) :: PCF_MF! Convective Mass Flux Cloud fraction ! ! !* 0.2 Declarations of local variables : ! ! 3D Microphysical variables REAL, DIMENSION(SIZE(PRHODJ,1),SIZE(PRHODJ,2),SIZE(PRHODJ,3)) & - :: PTHT, & - PRVT, & ! Water vapor m.r. at t + :: PRVT, & ! Water vapor m.r. at t PRCT, & ! Cloud water m.r. at t PRRT, & ! Rain water m.r. at t PRIT, & ! Cloud ice m.r. at t diff --git a/src/MNH/lima_adjust_split.f90 b/src/MNH/lima_adjust_split.f90 index 280d9f78bbeb86cdd0ad92c8825865b2d150c7ba..401048c3d4bfe870c94f08db0589a7e877aec7f2 100644 --- a/src/MNH/lima_adjust_split.f90 +++ b/src/MNH/lima_adjust_split.f90 @@ -9,11 +9,12 @@ ! INTERFACE ! - SUBROUTINE LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, HRAD, HCONDENS, HLAMBDA3, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV, PPABST, PZZ, PDTHRAD, PW_NU, & - PRT, PRS, PSVT, PSVS, & - PTHS, PSRCS, PCLDFR, PICEFR, PPRCFR, PRC_MF, PCF_MF ) + SUBROUTINE LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, HCONDENS, HLAMBDA3, & + OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & + PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV, & + PPABST, PZZ, PDTHRAD, PW_NU, & + PRT, PRS, PSVT, PSVS, & + PTHS, PSRCS, PCLDFR, PRC_MF, PCF_MF ) ! USE MODD_IO, ONLY: TFILEDATA USE MODD_NSV, only: NSV_LIMA_BEG @@ -21,17 +22,14 @@ USE MODD_NSV, only: NSV_LIMA_BEG INTEGER, INTENT(IN) :: KRR ! Number of moist variables INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file -CHARACTER(len=4), INTENT(IN) :: HTURBDIM ! Dimensionality of the - ! turbulence scheme -CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name -LOGICAL, INTENT(IN) :: OSUBG_COND ! Switch for Subgrid +CHARACTER(len=80), INTENT(IN) :: HCONDENS +CHARACTER(len=4), INTENT(IN) :: HLAMBDA3 ! formulation for lambda3 coeff +LOGICAL, INTENT(IN) :: OSUBG_COND ! Switch for Subgrid ! Condensation -LOGICAL, INTENT(IN) :: OSIGMAS ! Switch for Sigma_s: +LOGICAL, INTENT(IN) :: OSIGMAS ! Switch for Sigma_s: ! use values computed in CONDENSATION ! or that from turbulence scheme -CHARACTER(len=80), INTENT(IN) :: HCONDENS -CHARACTER(len=4), INTENT(IN) :: HLAMBDA3 ! formulation for lambda3 coeff -REAL, INTENT(IN) :: PTSTEP ! Time step +REAL, INTENT(IN) :: PTSTEP ! Time step REAL, INTENT(IN) :: PSIGQSAT ! coeff applied to qsat variance contribution ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Dry density of the @@ -60,8 +58,6 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRCS ! Second-order flux ! s'rc'/2Sigma_s2 at time t+1 ! multiplied by Lambda_3 REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCLDFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PICEFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PPRCFR ! Cloud fraction REAL, DIMENSION(:,:,:), INTENT(IN) :: PRC_MF! Convective Mass Flux liquid mixing ratio REAL, DIMENSION(:,:,:), INTENT(IN) :: PCF_MF! Convective Mass Flux Cloud fraction ! @@ -71,13 +67,14 @@ END INTERFACE ! END MODULE MODI_LIMA_ADJUST_SPLIT ! -! ########################################################################## - SUBROUTINE LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, HRAD, HCONDENS, HLAMBDA3, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV, PPABST, PZZ, PDTHRAD, PW_NU, & - PRT, PRS, PSVT, PSVS, & - PTHS, PSRCS, PCLDFR, PICEFR, PPRCFR, PRC_MF, PCF_MF ) -! ########################################################################## +! ########################################################################### + SUBROUTINE LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, HCONDENS, HLAMBDA3, & + OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & + PRHODREF, PRHODJ, PEXNREF, PPABSM, PSIGS, PMFCONV, & + PPABST, PZZ, PDTHRAD, PW_NU, & + PRT, PRS, PSVT, PSVS, & + PTHS, PSRCS, PCLDFR, PRC_MF, PCF_MF ) +! ########################################################################### ! !!**** *MIMA_ADJUST* - compute the fast microphysical sources !! @@ -183,16 +180,13 @@ IMPLICIT NONE INTEGER, INTENT(IN) :: KRR ! Number of moist variables INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file -CHARACTER(len=4), INTENT(IN) :: HTURBDIM ! Dimensionality of the - ! turbulence scheme -CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name +CHARACTER(len=80), INTENT(IN) :: HCONDENS +CHARACTER(len=4), INTENT(IN) :: HLAMBDA3 ! formulation for lambda3 coeff LOGICAL, INTENT(IN) :: OSUBG_COND ! Switch for Subgrid ! Condensation LOGICAL, INTENT(IN) :: OSIGMAS ! Switch for Sigma_s: ! use values computed in CONDENSATION ! or that from turbulence scheme -CHARACTER(len=80), INTENT(IN) :: HCONDENS -CHARACTER(len=4), INTENT(IN) :: HLAMBDA3 ! formulation for lambda3 coeff REAL, INTENT(IN) :: PTSTEP ! Time step REAL, INTENT(IN) :: PSIGQSAT ! coeff applied to qsat variance contribution ! @@ -222,8 +216,6 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRCS ! Second-order flux ! s'rc'/2Sigma_s2 at time t+1 ! multiplied by Lambda_3 REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PCLDFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PICEFR ! Cloud fraction -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PPRCFR ! Cloud fraction REAL, DIMENSION(:,:,:), INTENT(IN) :: PRC_MF! Convective Mass Flux liquid mixing ratio REAL, DIMENSION(:,:,:), INTENT(IN) :: PCF_MF! Convective Mass Flux Cloud fraction ! @@ -518,10 +510,10 @@ DO JITER =1,ITERMAX ZRV(:,:,:) = ZRV(:,:,:) - MAX(MIN(PRC_MF(:,:,:), ZRV(:,:,:)),0.) ZRC(:,:,:) = ZRC(:,:,:) + MAX(MIN(PRC_MF(:,:,:), ZRV(:,:,:)),0.) ZW_MF=0. - CALL LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, & + CALL LIMA_CCN_ACTIVATION (TPFILE, & PRHODREF, PEXNREF, PPABST, ZT, PDTHRAD, PW_NU+ZW_MF, & - PTHT, ZRV, ZRC, PCCT, PRRT, PNFT, PNAT, & - PCLDFR ) + PTHT, ZRV, ZRC, PCCT, PRRT, PNFT, PNAT, & + PCLDFR ) ! ELSE ! diff --git a/src/MNH/lima_ccn_activation.f90 b/src/MNH/lima_ccn_activation.f90 index c0990da97866d8cee65af3470c1449f11a906a8e..d4204f8f5f508ae7e435aa83068a2502656cc318 100644 --- a/src/MNH/lima_ccn_activation.f90 +++ b/src/MNH/lima_ccn_activation.f90 @@ -8,14 +8,12 @@ ! ############################### ! INTERFACE - SUBROUTINE LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, & + SUBROUTINE LIMA_CCN_ACTIVATION (TPFILE, & PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, & PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT, & PCLDFR ) USE MODD_IO, ONLY: TFILEDATA ! -REAL, INTENT(IN) :: PTSTEP ! Double Time step - ! (single if cold start) TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density @@ -41,7 +39,7 @@ END SUBROUTINE LIMA_CCN_ACTIVATION END INTERFACE END MODULE MODI_LIMA_CCN_ACTIVATION ! ############################################################################# - SUBROUTINE LIMA_CCN_ACTIVATION (PTSTEP, TPFILE, & + SUBROUTINE LIMA_CCN_ACTIVATION (TPFILE, & PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, & PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT, & PCLDFR ) @@ -119,8 +117,6 @@ IMPLICIT NONE ! !* 0.1 Declarations of dummy arguments : ! -REAL, INTENT(IN) :: PTSTEP ! Double Time step - ! (single if cold start) TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file ! REAL, DIMENSION(:,:,:), INTENT(IN) :: PRHODREF ! Reference density diff --git a/src/MNH/lima_notadjust.f90 b/src/MNH/lima_notadjust.f90 index 78dca60d9109703ada8c3888391641e7c0dab2dd..94ea1f4fdac0f3df7143f867cdd9e28740f8a5b6 100644 --- a/src/MNH/lima_notadjust.f90 +++ b/src/MNH/lima_notadjust.f90 @@ -9,15 +9,13 @@ ! INTERFACE ! - SUBROUTINE LIMA_NOTADJUST(KRR, KMI, KTCOUNT, TPFILE, HRAD, & - PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & - PTHT,PRT, PSVT, PTHS, PRS,PSVS, PCLDFR, PSRCS ) + SUBROUTINE LIMA_NOTADJUST(KMI, TPFILE, HRAD, & + PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & + PTHT,PRT, PSVT, PTHS, PRS,PSVS, PCLDFR, PSRCS ) ! USE MODD_IO, ONLY: TFILEDATA ! -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -INTEGER, INTENT(IN) :: KMI ! Model index -INTEGER, INTENT(IN) :: KTCOUNT ! Number of moist variables +INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name REAL, INTENT(IN) :: PTSTEP ! Double Time step @@ -48,11 +46,11 @@ END INTERFACE ! END MODULE MODI_LIMA_NOTADJUST ! -! ################################################################################ - SUBROUTINE LIMA_NOTADJUST(KRR, KMI, KTCOUNT, TPFILE, HRAD, & - PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & - PTHT,PRT, PSVT, PTHS, PRS,PSVS, PCLDFR, PSRCS ) -! ################################################################################ +! #################################################################################### + SUBROUTINE LIMA_NOTADJUST(KMI, TPFILE, HRAD, & + PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & + PTHT,PRT, PSVT, PTHS, PRS,PSVS, PCLDFR, PSRCS ) +! #################################################################################### ! !!**** * - compute pseudo-prognostic of supersaturation according to Thouron ! et al. 2012 @@ -105,9 +103,7 @@ IMPLICIT NONE !* 0.1 Declarations of dummy arguments : ! ! -INTEGER, INTENT(IN) :: KRR ! Number of moist variables -INTEGER, INTENT(IN) :: KMI ! Model index -INTEGER, INTENT(IN) :: KTCOUNT ! Number of moist variables +INTEGER, INTENT(IN) :: KMI ! Model index TYPE(TFILEDATA), INTENT(IN) :: TPFILE ! Output file CHARACTER(len=4), INTENT(IN) :: HRAD ! Radiation scheme name REAL, INTENT(IN) :: PTSTEP ! Double Time step diff --git a/src/MNH/lima_nucleation_procs.f90 b/src/MNH/lima_nucleation_procs.f90 index e0773e220884267704759bd22c1fc75f751edffe..122d4b3c867f2e98af5b9d6461a492df26a45e5e 100644 --- a/src/MNH/lima_nucleation_procs.f90 +++ b/src/MNH/lima_nucleation_procs.f90 @@ -167,7 +167,7 @@ IF ( LWARM .AND. LACTI .AND. NMOD_CCN >=1 ) THEN end if end if - CALL LIMA_CCN_ACTIVATION( PTSTEP, TPFILE, & + CALL LIMA_CCN_ACTIVATION( TPFILE, & PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, & PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT, PCLDFR ) if ( lbu_enable ) then diff --git a/src/MNH/resolved_cloud.f90 b/src/MNH/resolved_cloud.f90 index 3fbd94617e542666295f0cc9876d5c998355d4bd..30616e6c57314d97e5f5e032bf5f4b6e77d89c87 100644 --- a/src/MNH/resolved_cloud.f90 +++ b/src/MNH/resolved_cloud.f90 @@ -969,27 +969,26 @@ SELECT CASE ( HCLOUD ) !* 12.2 Perform the saturation adjustment ! IF (LSPRO) THEN - CALL LIMA_NOTADJUST (KRR, KMI, KTCOUNT,TPFILE, HRAD, & - PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & - PTHT,PRT, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PTHS,PRS, PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PCLDFR, PSRCS ) + CALL LIMA_NOTADJUST (KMI, TPFILE, HRAD, & + PTSTEP, PRHODJ, PPABSM, PPABST, PRHODREF, PEXNREF, PZZ, & + PTHT,PRT, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PTHS,PRS, PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PCLDFR, PSRCS ) ELSE IF (LPTSPLIT) THEN - CALL LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, HRAD, CCONDENS, CLAMBDA3, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABST, PSIGS, PMFCONV, PPABST, ZZZ, & - PDTHRAD, PW_ACT, & - PRT, PRS, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PTHS, PSRCS, PCLDFR, ZICEFR, ZPRCFR, PRC_MF, PCF_MF ) + CALL LIMA_ADJUST_SPLIT(KRR, KMI, TPFILE, CCONDENS, CLAMBDA3, & + OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & + PRHODREF, PRHODJ, PEXNREF, PPABST, PSIGS, PMFCONV, PPABST, ZZZ, & + PDTHRAD, PW_ACT, & + PRT, PRS, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PTHS, PSRCS, PCLDFR, PRC_MF, PCF_MF ) ELSE - CALL LIMA_ADJUST(KRR, KMI, TPFILE, HRAD, & - HTURBDIM, OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT, & - PRHODREF, PRHODJ, PEXNREF, PPABST, PSIGS, PMFCONV, PPABST, ZZZ, & - PDTHRAD, PW_ACT, & - PRT, PRS, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & - PTHS, PSRCS, PCLDFR, ZICEFR, ZPRCFR, PRC_MF, PCF_MF ) + CALL LIMA_ADJUST(KRR, KMI, TPFILE, & + OSUBG_COND, PTSTEP, & + PRHODREF, PRHODJ, PEXNREF, PPABST, PPABST, & + PRT, PRS, PSVT(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PSVS(:,:,:,NSV_LIMA_BEG:NSV_LIMA_END), & + PTHS, PSRCS, PCLDFR ) ENDIF ! END SELECT