From 07f6d9c1aadfa04092385161d5427a2f1471f42f Mon Sep 17 00:00:00 2001 From: Quentin Rodier <quentin.rodier@meteo.fr> Date: Fri, 29 Mar 2019 09:31:20 +0100 Subject: [PATCH] Quentin 29/03/2019 correction of order + initilization of salt modes with respect to correct version of salt routines sent (4/02/2019 instead of 1/02/2019) --- src/MNH/init_salt.f90 | 2 +- src/MNH/modd_salt.f90 | 4 ++-- src/MNH/saltlfin.f90 | 30 +++++++++--------------------- src/SURFEX/modd_slt_surf.F90 | 2 +- 4 files changed, 13 insertions(+), 25 deletions(-) diff --git a/src/MNH/init_salt.f90 b/src/MNH/init_salt.f90 index de95ce681..8576133e9 100644 --- a/src/MNH/init_salt.f90 +++ b/src/MNH/init_salt.f90 @@ -42,7 +42,7 @@ XINIRADIUS_SLT= (/0.009, 0.021, 0.045, 0.115, 0.415/) !Initial, standard deviation from Ova et al., 2014 XINISIG_SLT = (/ 1.37, 1.5, 1.42, 1.53, 1.85 /) !Minimum allowed number concentration for any mode (#/m3) -XN0MIN_SLT = (/1.e1 , 1.e1, 1.e1, 1., 1.e-4 /) +XN0MIN_SLT = (/1. , 1., 1., 1., 1. /) ELSE IF ( NMODE_SLT == 3) THEN diff --git a/src/MNH/modd_salt.f90 b/src/MNH/modd_salt.f90 index 907b95672..769ca39f1 100644 --- a/src/MNH/modd_salt.f90 +++ b/src/MNH/modd_salt.f90 @@ -68,7 +68,7 @@ CHARACTER(LEN=6),DIMENSION(15), PARAMETER :: YPSALT_INI = & 'SLTM04','SLTM34','SLTM64',& 'SLTM05','SLTM35','SLTM65' /) -INTEGER, DIMENSION(5),PARAMETER :: JPSALTORDER = (/3, 2, 1, 5, 4/) +INTEGER, DIMENSION(5),PARAMETER :: JPSALTORDER = (/1, 2, 3, 4, 5/) !Test Thomas (definir rayons et sigma ici si on veut desactiver initialisation MACC) @@ -79,7 +79,7 @@ REAL,DIMENSION(5) :: XINIRADIUS_SLT= (/0.009, 0.021, 0.045, 0.115, 0.415/) !Initial, standard deviation from Ova et al., 2014 REAL,DIMENSION(5) :: XINISIG_SLT = (/ 1.37, 1.5, 1.42, 1.53, 1.85 /) !Minimum allowed number concentration for any mode (#/m3) -REAL,DIMENSION(5) :: XN0MIN_SLT = (/1.e1 , 1.e1, 1.e1, 1., 1.e-4 /) +REAL,DIMENSION(5) :: XN0MIN_SLT = (/1. , 1., 1., 1., 1. /) !Test Thomas diff --git a/src/MNH/saltlfin.f90 b/src/MNH/saltlfin.f90 index 3b637b278..e99be7c7a 100644 --- a/src/MNH/saltlfin.f90 +++ b/src/MNH/saltlfin.f90 @@ -101,7 +101,7 @@ INTEGER :: IMOMENTS !-Marine INTEGER :: JI, JJ, JN, JK ! loop counter INTEGER :: IMODEIDX ! index mode -REAL, PARAMETER :: ZN_SALT=0.1 ! particles of sea salt/cm3 {air} +REAL, PARAMETER :: ZN_SALT=1E4 ! multiplcative factor for X0MIN REAL, PARAMETER :: ZCLM=800. ! Marine Salt layer (m) REAL :: ZN_SALTN ! @@ -182,30 +182,18 @@ DO JN=1,NMODE_SLT !+Marine : (reprendre XN0MIN_SLT de modd_salt.f90). ! Pas plus simple de fixer une dimension à ZN_SALT qui dépend de JN pour ne pas ! avoir à rappeler le schéma d'émission? - IF(NMODE_SLT == 5)THEN - - - IF (JN == 1) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 2) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 3) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 4) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 5) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - + IF (JN == 1) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 2) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 3) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 4) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 5) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT ELSE -! IF (JN == 1) ZN_SALTN = 1E-4 * ZN_SALT *1E6 -! IF (JN == 2) ZN_SALTN = 1. * ZN_SALT *1E6 -! IF (JN == 3) ZN_SALTN = 10 * ZN_SALT *1E6 - - IF (JN == 1) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 2) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - IF (JN == 3) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT *1E6 - + IF (JN == 1) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 2) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT + IF (JN == 3) ZN_SALTN = XN0MIN_SLT(JPSALTORDER(JN)) * ZN_SALT END IF - - !-Marine - DO JK=1, SIZE(PSV,3) DO JJ=1, SIZE(PSV,2) DO JI=1, SIZE(PSV,1) diff --git a/src/SURFEX/modd_slt_surf.F90 b/src/SURFEX/modd_slt_surf.F90 index 589cfb655..5a1c91c90 100644 --- a/src/SURFEX/modd_slt_surf.F90 +++ b/src/SURFEX/modd_slt_surf.F90 @@ -15,7 +15,7 @@ REAL, PARAMETER :: XDENSITY_SLT = 2.1e3 ! [kg/m3] density of sea salt REAL, PARAMETER :: XMOLARWEIGHT_SLT = 58.e-3 ! [kg/mol] molar weight sea salt ! INTEGER, PARAMETER :: NEMISMODES_MAX=5 -INTEGER, DIMENSION(NEMISMODES_MAX), PARAMETER :: JORDER_SLT=(/3,2,1,5,4/) !Dust modes in order of importance +INTEGER, DIMENSION(NEMISMODES_MAX), PARAMETER :: JORDER_SLT=(/1,2,3,4,5/) !Dust modes in order of importance !Set emission related parameters REAL,DIMENSION(NEMISMODES_MAX) :: XEMISRADIUS_INI_SLT ! number madian radius initialization for sea salt mode (um) REAL,DIMENSION(NEMISMODES_MAX) :: XEMISSIG_INI_SLT ! dispersion initialization for sea salt mode -- GitLab