Ignore:
Timestamp:
Mar 23, 2021, 4:14:07 PM (3 years ago)
Author:
lmdz-users
Message:

Modifications from Thibaut to create an ESM with interactive CO2 + INCA aerosols

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/phytrac_mod.F90

    r3861 r3865  
    5656  SUBROUTINE phytrac_init()
    5757    USE dimphy
    58     USE infotrac_phy, ONLY: nbtr, type_trac
     58    USE infotrac_phy, ONLY: nbtr, nqINCA, type_trac
    5959    USE tracco2i_mod, ONLY: tracco2i_init
    6060    IMPLICIT NONE
     
    8181    CASE('co2i')
    8282       !   -- CO2 interactif --
     83       CALL tracco2i_init()
     84    CASE('inco')
    8385       CALL tracco2i_init()
    8486    END SELECT
     
    122124    USE phys_cal_mod, only : hour
    123125    USE dimphy
    124     USE infotrac_phy, ONLY: nbtr, type_trac, conv_flg, solsym, pbl_flg
     126    USE infotrac_phy, ONLY: nbtr, nqINCA, type_trac, conv_flg, solsym, pbl_flg
    125127    USE mod_grid_phy_lmdz
    126128    USE mod_phys_lmdz_para
     
    505507          iflag_vdf_trac= 1
    506508          iflag_con_trac= 1
     509       CASE('inco')
     510          source(:,1) = 0.                          ! from CO2i
     511          source(:,2:nbtr)=init_source(:,:)         ! from INCA
     512          aerosol(1) = .FALSE.                      ! from CO2i
     513          CALL tracinca_init(aerosol(2:nbtr),lessivage)     ! from INCA
     514          pbl_flg(1) = 1              ! From CO2i
     515          iflag_the_trac= 1           ! From CO2i
     516          iflag_vdf_trac= 1           ! From CO2i
     517          iflag_con_trac= 1           ! From CO2i
    507518#ifdef CPP_StratAer
    508519       CASE('coag')
     
    571582                !--co2 tracers are not scavenged
    572583                flag_cvltr(it)=.FALSE.
    573 
     584             CASE('inco')     ! Add ThL
     585                flag_cvltr(it)=.FALSE.
    574586#ifdef CPP_StratAer
    575587             CASE('coag')
     
    614626       write(lunout,*)  'flag_cvltr    = ', flag_cvltr
    615627
    616        IF (lessivage .AND. type_trac .EQ. 'inca') THEN
     628       IF (lessivage .AND. (type_trac .EQ. 'inca' .OR. type_trac .EQ. 'inco')) THEN     ! Mod ThL
    617629          CALL abort_physic('phytrac', 'lessivage=T config_inca=inca impossible',1)
    618630!          STOP
     
    666678       !   -- sign convention : positive into the atmosphere
    667679
     680       CALL tracco2i(pdtphys, debutphy, &
     681            xlat, xlon, pphis, pphi, &
     682            t_seri, pplay, paprs, tr_seri, source)
     683    CASE('inco')      ! Add ThL
    668684       CALL tracco2i(pdtphys, debutphy, &
    669685            xlat, xlon, pphis, pphi, &
     
    11041120            tau_aero, piz_aero, cg_aero,        ccm,       &
    11051121            rfname,                                        &
    1106             tr_seri,  source)     
    1107        
    1108        
     1122            tr_seri,  source)
     1123    ELSEIF (type_trac == 'inco') THEN       ! Add ThL
     1124       CALL tracinca(&
     1125            nstep,    julien,   gmtime,         lafin,     &
     1126            pdtphys,  t_seri,   paprs,          pplay,     &
     1127            pmfu,     upwd,     ftsol,  pctsrf, pphis,     &
     1128            pphi,     albsol,   sh,    ch,     rh,        &
     1129            cldfra,   rneb,     diafra,         cldliq,    &
     1130            itop_con, ibas_con, pmflxr,         pmflxs,    &
     1131            prfl,     psfl,     aerosol_couple, flxmass_w, &
     1132            tau_aero, piz_aero, cg_aero,        ccm,       &
     1133            rfname,                                        &
     1134            tr_seri(:,:,2:nbtr),  source(:,2:nbtr))     ! Difference with case 'inca' 
    11091135    ENDIF
    11101136    !=============================================================
Note: See TracChangeset for help on using the changeset viewer.