Ignore:
Timestamp:
Feb 6, 2015, 6:53:57 PM (10 years ago)
Author:
jescribano
Message:

Dust emission scheme changes: (1) Included possibility of use previous dust emission scheme (with 2 dust bins). (2) Parameter of Marticorena and Bergametti 1995 set to it's original value (2.61) for testing purposes with pdtphys=15min. (3) Cleaning ustar calculation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/LMDZ5_SPLA/libf/phylmd/precuremission.F

    r2175 r2196  
    107107      DO i=1, klon
    108108         IF (iregion_ind(i).GT.0) THEN
    109            source_tr(i,id_prec)=source_tr(i,id_prec) + fracso2emis
     109       IF(id_prec>0) source_tr(i,id_prec)=source_tr(i,id_prec)
     110     .             + fracso2emis
    110111     .             *scale_param_ind(iregion_ind(i))*lmt_so2ff_l(i)*1.e4
    111112     .             +scale_param_ind(iregion_ind(i))*lmt_so2ff_l(i)*1.e4
    112113     .                   *frach2sofso2            ! molec/m2/s
    113114c
    114            source_tr(i,id_fine)=source_tr(i,id_fine)+(1-fracso2emis)
     115      IF(id_fine>0) source_tr(i,id_fine)=
     116     .                source_tr(i,id_fine)+(1-fracso2emis)
    115117     .                *scale_param_ind(iregion_ind(i))*lmt_so2ff_l(i)
    116118     .                *1.e4*masse_ammsulfate/RNAVO  ! g/m2/s
    117119c
    118            flux_tr(i,id_prec)=flux_tr(i,id_prec) + (
     120       IF(id_prec>0)   flux_tr(i,id_prec)=flux_tr(i,id_prec) + (
    119121     .               scale_param_ind(iregion_ind(i))*(lmt_so2ff_l(i)+
    120122     .                lmt_so2ff_h(i))
     
    125127     .                )*1.e4/RNAVO*masse_s*1.e3          ! mgS/m2/s
    126128c
    127            flux_tr(i,id_fine)=flux_tr(i,id_fine)+(1-fracso2emis)
     129      IF(id_fine>0)  flux_tr(i,id_fine)=
     130     . flux_tr(i,id_fine)+(1-fracso2emis)
    128131     .               *scale_param_ind(iregion_ind(i))*(lmt_so2ff_l(i)+
    129132     .                lmt_so2ff_h(i))
    130133     .               *1.e4/RNAVO*masse_ammsulfate*1.e3    ! mgS/m2/s
    131134c
    132            flux_sparam_ind(i)=flux_sparam_ind(i)+ (1-fracso2emis)
     135      flux_sparam_ind(i)=flux_sparam_ind(i)+ (1-fracso2emis)
    133136     .               *scale_param_ind(iregion_ind(i))*(lmt_so2ff_l(i)+
    134137     .                lmt_so2ff_h(i))
     
    136139         ENDIF
    137140         IF (iregion_bb(i).GT.0) THEN
    138            source_tr(i,id_prec)= source_tr(i,id_prec) + fracso2emis
     141      IF(id_prec>0) source_tr(i,id_prec)=
     142     .                  source_tr(i,id_prec) + fracso2emis
    139143     .                 *scale_param_bb(iregion_bb(i))*lmt_so2bb_l(i)
    140144     .                   *(1.-pctsrf(i,is_oce))*1.e4
    141145c
    142            source_tr(i,id_fine)=source_tr(i,id_fine)+(1-fracso2emis)
     146      IF(id_fine>0)     source_tr(i,id_fine)=
     147     .                   source_tr(i,id_fine)+(1-fracso2emis)
    143148     .                  *scale_param_bb(iregion_bb(i))*lmt_so2bb_l(i)*
    144149     .                   (1.-pctsrf(i,is_oce))*1.e4*
    145150     .                   masse_ammsulfate/RNAVO  ! g/m2/s
    146151c
    147            flux_tr(i,id_prec)=flux_tr(i,id_prec) +
     152      IF(id_prec>0)     flux_tr(i,id_prec)=flux_tr(i,id_prec) +
    148153     .               (scale_param_bb(iregion_bb(i))*lmt_so2bb_l(i)
    149154     .                 +scale_param_bb(iregion_bb(i))*lmt_so2bb_h(i))
     
    151156     .                 *1.e4/RNAVO*masse_s*1.e3          ! mgS/m2/s
    152157c
    153            flux_tr(i,id_fine)=flux_tr(i,id_fine)+(1-fracso2emis)
     158      IF(id_fine>0) flux_tr(i,id_fine)=
     159     .                flux_tr(i,id_fine)+(1-fracso2emis)
    154160     .               *(scale_param_bb(iregion_bb(i))*lmt_so2bb_l(i)
    155161     .                +scale_param_bb(iregion_bb(i))*lmt_so2bb_h(i))
     
    168174     .               *1.e4/RNAVO*masse_ammsulfate*1.e3    ! mgS/m2/s
    169175         ENDIF
    170          source_tr(i,id_prec)=source_tr(i,id_prec) + fracso2emis
     176      IF(id_prec>0)   source_tr(i,id_prec)=source_tr(i,id_prec)
     177     .                 + fracso2emis
    171178     .                 *(lmt_so2ba(i)+lmt_so2nff(i))*1.e4
    172179     .                 +(lmt_h2sbio(i)
    173180     .                   +lmt_dms(i)+lmt_dmsbio(i))*1.e4            ! molec/m2/s
    174181c
    175          source_tr(i,id_fine)=source_tr(i,id_fine)+(1-fracso2emis)
     182      IF(id_fine>0)   source_tr(i,id_fine)=source_tr(i,id_fine)
     183     .                +(1-fracso2emis)
    176184     .                *(lmt_so2ba(i)+lmt_so2nff(i))*1.e4*
    177185     .                   masse_ammsulfate/RNAVO  ! g/m2/s
    178186c
    179          flux_tr(i,id_prec)=flux_tr(i,id_prec) + (lmt_h2sbio(i)
     187      IF(id_prec>0)   flux_tr(i,id_prec)=flux_tr(i,id_prec)
     188     .               + (lmt_h2sbio(i)
    180189     .               +lmt_so2volc_cont(i)+lmt_so2volc_expl(i)
    181190     .                 +(lmt_so2ba(i)+lmt_so2nff(i))*fracso2emis
     
    183192     .              *1.e4/RNAVO*masse_s*1.e3          ! mgS/m2/s
    184193c
    185          flux_tr(i,id_fine)=flux_tr(i,id_fine)+(1-fracso2emis)
     194      IF(id_fine>0)   flux_tr(i,id_fine)=flux_tr(i,id_fine)
     195     .               +(1-fracso2emis)
    186196     .               *(lmt_so2ba(i) + lmt_so2nff(i))
    187197     .               *1.e4/RNAVO*masse_ammsulfate*1.e3    ! mgS/m2/s
     
    208218      ENDDO
    209219      ENDDO
    210 
     220      IF(id_prec>0) THEN
    211221      DO i = 1, klon
    212222        tr_seri(i,kkk_cont(i),id_prec)=tr_seri(i,kkk_cont(i),id_prec) +
     
    215225     .               lmt_so2volc_expl(i)/zdz(i,kkk_expl(i))/100.*pdtphys
    216226      ENDDO
    217                                            
     227      ENDIF                                           
    218228c  Sources hautes de SO2     
    219229     
     
    226236c
    227237         IF (iregion_bb(i).GT.0) THEN
    228            tr_seri(i,k,id_prec)=tr_seri(i,k,id_prec) + fracso2emis
     238      IF(id_prec>0)   tr_seri(i,k,id_prec)=
     239     .              tr_seri(i,k,id_prec) + fracso2emis
    229240     .              *scale_param_bb(iregion_bb(i))*lmt_so2bb_h(i)
    230241     .              /zdz(i,k)/100.*pdtphys
    231242c
    232            tr_seri(i,k,id_fine)=tr_seri(i,k,id_fine) + (1.-fracso2emis)
     243      IF(id_fine>0)     tr_seri(i,k,id_fine)=tr_seri(i,k,id_fine)
     244     .              + (1.-fracso2emis)
    233245     .              *scale_param_bb(iregion_bb(i))*lmt_so2bb_h(i)
    234246     .              *masse_ammsulfate/RNAVO/zdz(i,k)/100.*pdtphys   !g/cm3
    235247         ENDIF
    236248         IF (iregion_ind(i).GT.0) THEN
    237            tr_seri(i,k,id_prec)=tr_seri(i,k,id_prec) + (fracso2emis
     249       IF(id_prec>0)  tr_seri(i,k,id_prec)=
     250     .              tr_seri(i,k,id_prec) + (fracso2emis
    238251     .              *scale_param_ind(iregion_ind(i))*lmt_so2ff_h(i)
    239252     .              + frach2sofso2
     
    241254     .              /zdz(i,k)/100.*pdtphys
    242255c
    243            tr_seri(i,k,id_fine)=tr_seri(i,k,id_fine) + (1.-fracso2emis)
     256       IF(id_fine>0)    tr_seri(i,k,id_fine)=tr_seri(i,k,id_fine)
     257     .               + (1.-fracso2emis)
    244258     .              *scale_param_ind(iregion_ind(i))*lmt_so2ff_h(i)
    245259     .              *masse_ammsulfate/RNAVO/zdz(i,k)/100.*pdtphys   !g/cm3
Note: See TracChangeset for help on using the changeset viewer.