Ignore:
Timestamp:
Jul 1, 2023, 12:07:30 AM (11 months ago)
Author:
dcugnet
Message:

StratAer? commit, N. Lebas

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90

    r4594 r4601  
    126126
    127127#ifdef CPP_StratAer
    128     USE strataer_mod, ONLY: strataer_init
     128    USE strataer_local_var_mod
     129    USE strataer_nuc_mod, ONLY: strataer_nuc_init
     130    USE strataer_emiss_mod, ONLY: strataer_emiss_init
    129131#endif
    130132
     
    14141416#ifdef CPP_StratAer
    14151417       CALL strataer_init
     1418       CALL strataer_nuc_init
     1419       CALL strataer_emiss_init
    14161420#endif
    14171421
     
    15991603          piz_aero(:,:,:,:) = 0.
    16001604          cg_aero(:,:,:,:) = 0.
     1605          d_q_ch4(:,:) = 0.
    16011606
    16021607          config_inca='none' ! default
     
    16101615       piz_aero(:,:,:,:) = 1.
    16111616       cg_aero(:,:,:,:)  = 0.
     1617       d_q_ch4(:,:) = 0.
    16121618
    16131619       IF (aerosol_couple .AND. (config_inca /= "aero" &
     
    61546160    !
    61556161    !
     6162#ifdef CPP_StratAer
     6163    IF (ok_qemiss) THEN
     6164       flh2o=1
     6165       IF(flag_verbose_strataer) THEN
     6166          print *,'IN physiq_mod: ok_qemiss =yes (',ok_qemiss,'), flh2o=',flh2o
     6167          print *,'IN physiq_mod: flag_emit=',flag_emit,', nErupt=',nErupt
     6168          print *,'IN physiq_mod: nAerErupt=',nAerErupt
     6169       ENDIF
     6170       
     6171       SELECT CASE(flag_emit)
     6172       CASE(1) ! emission volc H2O dans LMDZ
     6173          DO ieru=1, nErupt
     6174             IF (year_cur==year_emit_vol(ieru).AND.&
     6175                  mth_cur==mth_emit_vol(ieru).AND.&
     6176                  day_cur>=day_emit_vol(ieru).AND.&
     6177                  day_cur<(day_emit_vol(ieru)+injdur)) THEN
     6178               
     6179                IF(flag_verbose_strataer) print *,'IN physiq_mod: date=',year_cur,mth_cur,day_cur
     6180                ! initialisation tendance q emission
     6181                d_q_emiss(:,:)=0.
     6182                ! daily injection mass emission - NL
     6183                m_H2O_emiss_vol_daily = m_H2O_emiss_vol(ieru)/(REAL(injdur)&
     6184                     *REAL(ponde_lonlat_vol(ieru)))
     6185                !
     6186                CALL STRATEMIT(pdtphys,pdtphys,latitude_deg,longitude_deg,t_seri,&
     6187                     pplay,paprs,tr_seri,&
     6188                     m_H2O_emiss_vol_daily,&
     6189                     xlat_min_vol(ieru),xlat_max_vol(ieru),&
     6190                     xlon_min_vol(ieru),xlon_max_vol(ieru),&
     6191                     altemiss_vol(ieru),&
     6192                     sigma_alt_vol(ieru),1,&
     6193                     1,nAerErupt+1,0)
     6194               
     6195                IF(flag_verbose_strataer) print *,'IN physiq_mod: min max d_q_emiss=',&
     6196                     minval(d_q_emiss),maxval(d_q_emiss)
     6197               
     6198                CALL add_phys_tend(du0, dv0, dt0, d_q_emiss, dql0, dqi0, dqbs0, paprs, &
     6199                     'q_emiss',abortphy,flag_inhib_tend,itap,0)
     6200                IF (abortphy==1) Print*,'ERROR ABORT TEND EMISS'
     6201             ENDIF
     6202          ENDDO
     6203          flh2o=0
     6204       END SELECT ! emission scenario (flag_emit)
     6205    ENDIF
     6206#endif
    61566207
    61576208!===============================================================
     
    67446795      qql2(:)=qql2(:)+(q_seri(:,k)+ql_seri(:,k)+qs_seri(:,k))*zmasse(:,k)
    67456796    ENDDO
     6797   
     6798#ifdef CPP_StratAer
     6799    IF (ok_qemiss) THEN
     6800       DO k = 1, klev
     6801          qql1(:) = qql1(:)+d_q_emiss(:,k)*zmasse(:,k)
     6802       ENDDO
     6803    ENDIF
     6804#endif
     6805    IF (ok_qch4) THEN
     6806       DO k = 1, klev
     6807          qql1(:) = qql1(:)+d_q_ch4_dtime(:,k)*zmasse(:,k)
     6808       ENDDO
     6809    ENDIF
     6810   
    67466811    DO i = 1, klon
    67476812      !--compute ratio of what q+ql should be with conservation to what it is
Note: See TracChangeset for help on using the changeset viewer.