Skip to content

Commit

Permalink
Update Neu wetdep to recognize GEOS-Chem bulk sulfate
Browse files Browse the repository at this point in the history
  • Loading branch information
jimmielin committed Nov 7, 2023
1 parent e6c3fc8 commit c286e3c
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions src/chemistry/mozart/mo_neu_wetdep.F90
Expand Up @@ -27,6 +27,7 @@ module mo_neu_wetdep
real(r8),allocatable, dimension(:) :: mol_weight
logical ,allocatable, dimension(:) :: ice_uptake
integer :: index_cldice,index_cldliq,nh3_ndx,co2_ndx,so2_ndx
integer :: so4_ndx,so4s_ndx ! geos-chem
logical :: debug = .false.
integer :: hno3_ndx = 0
!
Expand Down Expand Up @@ -142,6 +143,12 @@ subroutine neu_wetdep_init
if ( trim(test_name) == 'SO2' ) then
so2_ndx = m
end if
if ( trim(test_name) == 'SO4' ) then ! GEOS-Chem bulk sulfate
so4_ndx = m
end if
if ( trim(test_name) == 'SO4S' ) then ! GEOS-Chem bulk sulfate on surface seasalt
so4s_ndx = m
end if
!
end do

Expand Down Expand Up @@ -364,14 +371,14 @@ subroutine neu_wetdep_tend(lchnk,ncol,mmr,pmid,pdel,zint,tfld,delt, &
endif
!
if( dheff(5,l) /= 0._r8 ) then
if( nh3_ndx > 0 .or. co2_ndx > 0 .or. so2_ndx > 0 ) then
if( nh3_ndx > 0 .or. co2_ndx > 0 .or. so2_ndx > 0 .or. so4_ndx > 0 .or. so4s_ndx > 0 ) then
e298 = dheff(3,l)
dhr = dheff(4,l)
dk1s(:) = e298*exp( dhr*wrk(:) )
e298 = dheff(5,l)
dhr = dheff(6,l)
dk2s(:) = e298*exp( dhr*wrk(:) )
if( m == co2_ndx .or. m == so2_ndx ) then
if( m == co2_ndx .or. m == so2_ndx .or. m == so4_ndx .or. m == so4s_ndx ) then
heff(:,k,m) = heff(:,k,m)*(1._r8 + dk1s(:)*ph_inv*(1._r8 + dk2s(:)*ph_inv))
else if( m == nh3_ndx ) then
heff(:,k,m) = heff(:,k,m)*(1._r8 + dk1s(:)*ph/dk2s(:))
Expand Down

0 comments on commit c286e3c

Please sign in to comment.