Changeset 4601 for LMDZ6/trunk/libf/phylmdiso
- Timestamp:
- Jul 1, 2023, 12:07:30 AM (20 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90
r4594 r4601 126 126 127 127 #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 129 131 #endif 130 132 … … 1414 1416 #ifdef CPP_StratAer 1415 1417 CALL strataer_init 1418 CALL strataer_nuc_init 1419 CALL strataer_emiss_init 1416 1420 #endif 1417 1421 … … 1599 1603 piz_aero(:,:,:,:) = 0. 1600 1604 cg_aero(:,:,:,:) = 0. 1605 d_q_ch4(:,:) = 0. 1601 1606 1602 1607 config_inca='none' ! default … … 1610 1615 piz_aero(:,:,:,:) = 1. 1611 1616 cg_aero(:,:,:,:) = 0. 1617 d_q_ch4(:,:) = 0. 1612 1618 1613 1619 IF (aerosol_couple .AND. (config_inca /= "aero" & … … 6154 6160 ! 6155 6161 ! 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 6156 6207 6157 6208 !=============================================================== … … 6744 6795 qql2(:)=qql2(:)+(q_seri(:,k)+ql_seri(:,k)+qs_seri(:,k))*zmasse(:,k) 6745 6796 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 6746 6811 DO i = 1, klon 6747 6812 !--compute ratio of what q+ql should be with conservation to what it is
Note: See TracChangeset
for help on using the changeset viewer.