Ignore:
Timestamp:
Jul 28, 2025, 7:23:15 PM (7 days ago)
Author:
aborella
Message:

Merge with trunk r5789

Location:
LMDZ6/branches/contrails
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/contrails

  • LMDZ6/branches/contrails/libf/phylmd/ecrad/lmdz/radiation_setup.f90

    r5268 r5791  
    11MODULE RADIATION_SETUP
    22
    3 ! RADIATION_SETUP - Setting up modular radiation scheme
    4 !
    5 ! AUTHOR
    6 ! ------
    7 !   Robin Hogan, ECMWF
    8 !   Original: 2015-09-16
    9 !
    10 ! MODIFICATIONS
    11 ! -------------
    12 !   Abderrahmane Idelkadi LMD, juillet 2023
    13 !
    14 !-----------------------------------------------------------------------
     3  ! RADIATION_SETUP - Setting up modular radiation scheme
     4  !
     5  ! AUTHOR
     6  ! ------
     7  !   Robin Hogan, ECMWF
     8  !   Original: 2015-09-16
     9  !
     10  ! MODIFICATIONS
     11  ! -------------
     12  !   Abderrahmane Idelkadi LMD, juillet 2023
     13  !
     14  !-----------------------------------------------------------------------
    1515
    1616  USE PARKIND1,         ONLY : JPRB
     
    5252  ! to print lots of information during the setup stage (default is
    5353  ! no).
    54 ! AI At the end of the routine, the parameters are read in namelist
    55 !   
     54  ! AI At the end of the routine, the parameters are read in namelist
     55  !
    5656  SUBROUTINE SETUP_RADIATION_SCHEME(LOUTPUT,file_name,rad_config,driver_config)
    5757
    58 !    USE radiation_config, ONLY : config_type, &
    59 !        &                       ISolverMcICA, ISolverSpartacus, &
    60 !        &                       ILiquidModelSlingo, ILiquidModelSOCRATES, &
    61 !        &                       IIceModelFu, IIceModelBaran, &
    62 !        &                       IOverlapExponentialRandom
     58    !    USE radiation_config, ONLY : config_type, &
     59    !        &                       ISolverMcICA, ISolverSpartacus, &
     60    !        &                       ILiquidModelSlingo, ILiquidModelSOCRATES, &
     61    !        &                       IIceModelFu, IIceModelBaran, &
     62    !        &                       IOverlapExponentialRandom
    6363    USE mod_phys_lmdz_para
    64      
     64
    6565    USE YOMHOOK,  ONLY : LHOOK, DR_HOOK
    6666    USE YOMLUN,   ONLY : NULOUT, NULERR
    6767    USE YOESRTWN, ONLY : NMPSRTM
    6868
    69  !   USE radiation_interface,      ONLY : setup_radiation
    70  !   USE setup_config_from_lmdz,   ONLY : driver_config_type
     69    !   USE radiation_interface,      ONLY : setup_radiation
     70    !   USE setup_config_from_lmdz,   ONLY : driver_config_type
    7171
    7272    ! Whether or not to provide information on the radiation scheme
     
    9090
    9191    ! Configure verbosity of setup of radiation scheme
    92  
     92
    9393    print*,'********** Dans radiation_setup *****************'
    9494
    95 ! AI ATTENTION (parameters read in namelist file)
    96 !    file_name="namelist_ecrad"
    97     call rad_config%read(file_name=file_name)
    98     call driver_config%read(file_name)
    99 
    100     ! Use configuration data to set-up radiation scheme, including
    101     ! reading scattering datafiles
    102     CALL setup_radiation(rad_config)
     95    rad_config%i_aerosol_type_map(1:13) = (/ &
     96         &  -1, &
     97         &  -2, &
     98         &  -3, &
     99         &  -4, &
     100         &  -5, &
     101         &  -6, &
     102         &  -7, &
     103         &   1, &
     104         &   2, &
     105         &   3, &
     106         &  -8, &
     107         &  -9, &
     108         &   4 /)
    103109
    104110    ! Populate the mapping between the 14 RRTM shortwave bands and the
     
    108114    ! results...
    109115    ! Note that NMPSRTM(:)=(/  6, 6, 5, 5, 5, 5, 5, 4, 4, 3, 2, 2, 1, 6 /)
    110 ! AI (6 albedo SW bands)
     116    ! AI (6 albedo SW bands)
    111117    call rad_config%define_sw_albedo_intervals(6, &
    112        &  [0.25e-6_jprb, 0.44e-6_jprb, 0.69e-6_jprb, &
    113        &   1.19e-6_jprb, 2.38e-6_jprb], [1,2,3,4,5,6])
     118         &  [0.25e-6_jprb, 0.44e-6_jprb, 0.69e-6_jprb, &
     119         &   1.19e-6_jprb, 2.38e-6_jprb], [1,2,3,4,5,6])
    114120    ! Likewise between the 16 RRTM longwave bands and the 2 emissivity
    115121    ! inputs (info taken from rrtm_ecrt_140gp_mcica.F90) representing
    116122    ! outside and inside the window region of the spectrum
    117 !     rad_config%i_emiss_from_band_lw = (/ 1,1,1,1,1,2,2,2,1,1,1,1,1,1,1,1 /)
    118 ! AI ATTENTION ?????
    119 !!    call rad_config%define_lw_emiss_intervals(3, &
    120 !!         &  (/ 8.0e-6_jprb,13.0e-6_jprb /),  (/ 1,2,1 /))
     123    !     rad_config%i_emiss_from_band_lw = (/ 1,1,1,1,1,2,2,2,1,1,1,1,1,1,1,1 /)
     124    ! AI ATTENTION ?????
     125    !!    call rad_config%define_lw_emiss_intervals(3, &
     126    !!         &  (/ 8.0e-6_jprb,13.0e-6_jprb /),  (/ 1,2,1 /))
    121127
    122 !    ! Get spectral weightings for UV and PAR
     128    ! AI ATTENTION (parameters read in namelist file)
     129    !    file_name="namelist_ecrad"
     130    call rad_config%read(file_name=file_name)
     131    call driver_config%read(file_name)
     132    call rad_config%print(iverbose = 2)
     133
     134    ! Use configuration data to set-up radiation scheme, including
     135    ! reading scattering datafiles
     136    CALL setup_radiation(rad_config)
     137
     138    !    ! Get spectral weightings for UV and PAR
    123139    call rad_config%get_sw_weights(0.2e-6_jprb, 0.4415e-6_jprb, &
    124140         &  NWEIGHT_UV, IBAND_UV, WEIGHT_UV, 'ultraviolet')
     
    127143         &  'photosynthetically active radiation, PAR')
    128144
    129      rad_config%i_aerosol_type_map(1:13) = (/ &
    130            &  -1, &
    131            &  -2, &
    132            &  -3, &
    133            &  -4, &
    134            &  -5, &
    135            &  -6, &
    136            &  -7, &
    137            &   1, &
    138            &   2, &
    139            &   3, &
    140            &  -8, &
    141            &  -9, &
    142            &   4 /)
    143 
    144 
    145145    IF (LHOOK) CALL DR_HOOK('RADIATION_SETUP:SETUP_RADIATION_SCHEME',1,ZHOOK_HANDLE)
    146146
Note: See TracChangeset for help on using the changeset viewer.