diff --git a/src/MNH/default_desfmn.f90 b/src/MNH/default_desfmn.f90 index 1a4ddac57f519fe8d14ee469b8deb79196fc90f5..91c2592775a53b7f22142796f6f71bc2aab26e52 100644 --- a/src/MNH/default_desfmn.f90 +++ b/src/MNH/default_desfmn.f90 @@ -1106,12 +1106,12 @@ IF (KMI == 1) THEN OWARM = .TRUE. LACTI = .TRUE. ORAIN = .TRUE. - OSEDC = .TRUE. + OSEDC = .FALSE. OACTIT = .FALSE. LBOUND = .FALSE. ! - CINI_CCN = 'XXX' - CTYPE_CCN(:) = 'X' + CINI_CCN = 'AER' + CTYPE_CCN(:) = 'M' ! YAERDIFF = 0.0 YAERHEIGHT = 2000. @@ -1128,8 +1128,8 @@ IF (KMI == 1) THEN LAERO_MASS = .FALSE. ! LCCN_HOM = .TRUE. - CCCN_MODES = '' - XCCN_CONC(:)=0. + CCCN_MODES = 'COPT' + XCCN_CONC(:)=300. ENDIF ! IF (KMI == 1) THEN diff --git a/src/MNH/ini_lima_cold_mixed.f90 b/src/MNH/ini_lima_cold_mixed.f90 index a2c98df44230c9dcd9d78309f205e37094ff8944..8054f4171c4b4e40f5f4b471f68480ce69f7e923 100644 --- a/src/MNH/ini_lima_cold_mixed.f90 +++ b/src/MNH/ini_lima_cold_mixed.f90 @@ -133,19 +133,19 @@ SELECT CASE (CPRISTINE_ICE_LIMA) CASE('PLAT') XAI = 0.82 ! Plates XBI = 2.5 ! Plates - XC_I = 800. ! Plates + XC_I = 747. ! Plates XDI = 1.0 ! Plates XC1I = 1./XPI ! Plates CASE('COLU') XAI = 2.14E-3 ! Columns XBI = 1.7 ! Columns - XC_I = 2.1E5 ! Columns + XC_I = 1.96E5 ! Columns XDI = 1.585 ! Columns XC1I = 0.8 ! Columns CASE('BURO') XAI = 44.0 ! Bullet rosettes XBI = 3.0 ! Bullet rosettes - XC_I = 4.3E5 ! Bullet rosettes + XC_I = 4.E5 ! Bullet rosettes XDI = 1.663 ! Bullet rosettes XC1I = 0.5 ! Bullet rosettes END SELECT @@ -163,7 +163,7 @@ XF1IS = 0.28 ! XAS = 0.02 XBS = 1.9 -XCS = 5.1 +XCS = 5. XDS = 0.27 ! XCCS = 5.0 @@ -178,7 +178,7 @@ XC1S = 1./XPI ! XAG = 19.6 ! Lump graupel case XBG = 2.8 ! Lump graupel case -XCG = 124. ! Lump graupel case +XCG = 122. ! Lump graupel case XDG = 0.66 ! Lump graupel case ! XCCG = 5.E5 @@ -196,7 +196,7 @@ XC1G = 1./2. ! XAH = 470. XBH = 3.0 -XCH = 207. +XCH = 201. XDH = 0.64 ! !XCCH = 5.E-4 @@ -274,7 +274,9 @@ XLBDAS_MAX = ( ZCONC_MAX/XCCS )**(1./XCXS) !* 3.1 Exponent of the fall-speed air density correction ! IKB = 1 + JPVEXT -ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) +! Correction +! ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) +ZRHO00 = 1.2041 ! at P=1013.25hPa and T=20°C ! !* 3.2 Constants for sedimentation ! diff --git a/src/MNH/ini_lima_warm.f90 b/src/MNH/ini_lima_warm.f90 index 53748aa7ae0ee56d803e9b99b40d843ee4e4a0d7..613e899ff56fc36fe20dc6cceaaef437a64e5380 100644 --- a/src/MNH/ini_lima_warm.f90 +++ b/src/MNH/ini_lima_warm.f90 @@ -94,8 +94,8 @@ LOGICAL :: GFLAG ! Logical flag for printing the constatnts on the output ! XAC = (XPI/6.0)*XRHOLW XBC = 3.0 -XCC = XRHOLW*XG/(18.0*1.816E-5) ! Stokes flow (Pruppacher p 322 for T=293K) -XCC = XRHOLW*XG/(18.0*1.7E-5) ! Stokes flow (Pruppacher p 322 for T=273K) +XCC = XRHOLW*XG/(18.0*1.816E-5) ! Stokes flow (Pruppacher eq. 10-138 for T=293K) +!XCC = XRHOLW*XG/(18.0*1.7E-5) ! Stokes flow (Pruppacher eq. 10-138 for T=273K) XDC = 2.0 ! XF0C = 1.00 @@ -169,7 +169,9 @@ XLBEXR = 1.0/XBR !* 4.1 Exponent of the fall-speed air density correction ! IKB = 1 + JPVEXT -ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) +! Correction +!ZRHO00 = XP00/(XRD*XTHVREFZ(IKB)) +ZRHO00 = 1.2041 ! at P=1013.25hPa and T=20°C ! !* 4.2 Constants for sedimentation ! diff --git a/src/MNH/lima_cold_sedimentation.f90 b/src/MNH/lima_cold_sedimentation.f90 index dc65c211c3882effc4641344821eca2cc0a66289..de72fd6f3175a31c6b94738cb19c1a04aa105c13 100644 --- a/src/MNH/lima_cold_sedimentation.f90 +++ b/src/MNH/lima_cold_sedimentation.f90 @@ -180,6 +180,10 @@ ZRTMIN(:) = XRTMIN(:) / PTSTEP ! ZTSPLITG= PTSTEP / FLOAT(KSPLITG) ! +PINPRS(:,:) = 0. +PINPRG(:,:) = 0. +PINPRH(:,:) = 0. +! ! ################################ ! Compute the sedimentation fluxes ! ################################ @@ -281,9 +285,7 @@ DO JN = 1 , KSPLITG ZWSEDR(:,:,IKB) = 0.0 END IF ! - IF( JN.EQ.1 ) THEN - PINPRS(:,:) = ZWSEDR(:,:,IKB)/XRHOLW ! in m/s - END IF + PINPRS(:,:) = PINPRS(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITG ! in m/s ! !* 2.23 for graupeln ! @@ -308,9 +310,7 @@ DO JN = 1 , KSPLITG ZWSEDR(:,:,IKB) = 0.0 END IF ! - IF( JN.EQ.1 ) THEN - PINPRG(:,:) = ZWSEDR(:,:,IKB)/XRHOLW ! in m/s - END IF + PINPRG(:,:) = PINPRG(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITG ! in m/s ! !* 2.23 for hail ! @@ -335,9 +335,7 @@ DO JN = 1 , KSPLITG ZWSEDR(:,:,IKB) = 0.0 END IF ! - IF( JN.EQ.1 ) THEN - PINPRH(:,:) = ZWSEDR(:,:,IKB)/XRHOLW ! in m/s - END IF + PINPRH(:,:) = PINPRH(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITG ! in m/s ! !* 2.24 End of sedimentation ! diff --git a/src/MNH/lima_warm_sedim.f90 b/src/MNH/lima_warm_sedim.f90 index 416291ed8b7485d74c287c877aee8710bec4dd5d..fc67bd955f97c2406f3cbbab09c3b4284742acb6 100644 --- a/src/MNH/lima_warm_sedim.f90 +++ b/src/MNH/lima_warm_sedim.f90 @@ -208,6 +208,10 @@ IKE=SIZE(PZZ,3) - JPVEXT ! ZTSPLITR= PTSTEP / FLOAT(KSPLITR) ! +PINPRC(:,:) = 0. +PINPRR(:,:) = 0. +PINPRR3D(:,:,:) = 0. +! IF (OSEDC) THEN ZWLBDA(:,:,:) = 0. ZRAY(:,:,:) = 0. @@ -312,7 +316,7 @@ DO JN = 1 , KSPLITR DEALLOCATE(ZTCC) DEALLOCATE(ZLBDC) ! - PINPRC(:,:) = ZWSEDR(:,:,IKB)/XRHOLW ! in m/s + PINPRC(:,:) = PINPRC(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITR ! in m/s ELSE ZWSEDR(:,:,IKB) = 0.0 END IF ! OSEDC @@ -366,10 +370,8 @@ DO JN = 1 , KSPLITR ZWSEDR(:,:,IKB) = 0.0 END IF ! max PRRS > ZRTMIN(3) ! - IF( JN.EQ.1 ) THEN - PINPRR(:,:) = ZWSEDR(:,:,IKB)/XRHOLW ! in m/s - PINPRR3D(:,:,:) = ZWSEDR(:,:,:)/XRHOLW ! in m/s - END IF + PINPRR(:,:) = PINPRR(:,:) + ZWSEDR(:,:,IKB)/XRHOLW/KSPLITR ! in m/s + PINPRR3D(:,:,:) = PINPRR3D(:,:,:) + ZWSEDR(:,:,:)/XRHOLW/KSPLITR ! in m/s ! DEALLOCATE(ZRHODREF) DEALLOCATE(ZZW1) diff --git a/src/MNH/modd_param_lima.f90 b/src/MNH/modd_param_lima.f90 index 6c838bb173d36dc19d4b0893c1d1e6c23b6bf2f6..cf0a66ff2ae63e4ef0b6c242378afabf1288872d 100644 --- a/src/MNH/modd_param_lima.f90 +++ b/src/MNH/modd_param_lima.f90 @@ -175,7 +175,9 @@ REAL, SAVE :: XT_SUTH_A = 110.4 ![K] Sutherland Temperature for Air REAL, SAVE :: XMFPA0 = 6.6E-08 ![m] Mean Free Path of Air under standard conditions ! REAL, SAVE :: XVISCW = 1.0E-3 ![Pa.s] water viscosity at 20°C -REAL, SAVE :: XRHO00 = 1.292 !rho on the floor [Kg/m**3] +! Correction +!REAL, SAVE :: XRHO00 = 1.292 !rho on the floor [Kg/m**3] +REAL, SAVE :: XRHO00 = 1.2041 !rho at P=1013.25 and T=20°C ! REAL,SAVE :: XCEXVT ! air density fall speed correction ! diff --git a/src/MNH/set_conc_lima.f90 b/src/MNH/set_conc_lima.f90 index 05c0094055a41479230323c94c5d89da71e36720..0a76b46aa020e5bcac20ffacf41f6a5b0faf85cd 100644 --- a/src/MNH/set_conc_lima.f90 +++ b/src/MNH/set_conc_lima.f90 @@ -119,7 +119,7 @@ IF (LWARM) THEN ! ! droplets ! - ZCONCC = 300 ! droplet concentration set at 300 cm-3 + ZCONCC = 300.E6 ! droplet concentration set at 300 cm-3 WHERE ( PRT(:,:,:,2) > XRTMIN(2) ) PSVT(:,:,:,NSV_LIMA_NC) = ZCONCC PSVT(:,:,:,NSV_LIMA_CCN_ACTI) = ZCONCC @@ -162,9 +162,12 @@ IF (LCOLD) THEN ! ZCONCI = 100.E3 ! maximum ice concentration set at 100/L WHERE ( PRT(:,:,:,4) > XRTMIN(4) ) - PSVT(:,:,:,NSV_LIMA_NI) = MIN( PRHODREF(:,:,:) / & - ( XRHOLI * XAI*(10.E-06)**XBI * PRT(:,:,:,4) ), & - ZCONCI ) +! +! PSVT(:,:,:,NSV_LIMA_NI) = MIN( PRHODREF(:,:,:) / & +! ( XRHOLI * XAI*(10.E-06)**XBI * PRT(:,:,:,4) ), & +! ZCONCI ) +! Correction + PSVT(:,:,:,NSV_LIMA_NI) = MIN(PRT(:,:,:,4)/(XAI*(10.E-06)**XBI),ZCONCI ) PSVT(:,:,:,NSV_LIMA_IFN_NUCL) = PSVT(:,:,:,NSV_LIMA_NI) END WHERE WHERE ( PRT(:,:,:,4) <= XRTMIN(4) )