New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PULL REQUEST]Updates to IONO2 hydrolysis as described in Wang et al 2021 #719
Conversation
Also move non-cycling calculations for IONO2 into HETIONO2 function and only consider acidic cycling reactions for IONO/HOI/IONO2 seperately.
Conflicts: KPP/Standard/gckpp_HetRates.F90
Hi @tsherwen. Thanks for this PR. We ask that science updates get approval by the working groups. Could you send an email to the Chemistry WG notifying them of these updates and asking them to prioritize this item at the next GCSC meeting for inclusion in GEOS-Chem? |
Hello @msulprizio, thanks for the response. Yes, several members of the chemistry working group are aware of this update and I will be emailing the mailing list once the paper is subsmitted. I'll add a message here when I have an update on this. Thanks, Tomas |
@tsherwen : FYI, I am pulling out the heterogeneous chemistry reactions from gckpp_HetRates into gckpp.kpp, so that will likely result in more conflicts w/r/t my development branch. |
This issue has been automatically marked as stale because it has not had recent activity. If there are no updates within 7 days it will be closed. You can add the "never stale" tag to prevent the Stale bot from closing this issue. |
Thanks for adding the #NeverStale tag @yantosca. The manuscript is now in review in ACPD and once any reviewer comments are addressed I will raise inclusion in the core with the Chemistry working group. Wang, X., Jacob, D. J., Downs, W., Zhai, S., Zhu, L., Shah, V., Holmes, C. D., Sherwen, T., Alexander, B., Evans, M. J., Eastham, S. D., Neuman, J. A., Veres, P., Koenig, T. K., Volkamer, R., Huey, L. G., Bannan, T. J., Percival, C. J., Lee, B. H., and Thornton, J. A.: Global tropospheric halogen (Cl, Br, I) chemistry and its impact on oxidants, Atmos. Chem. Phys. Discuss. [preprint], https://doi.org/10.5194/acp-2021-441, in review, 2021. |
Hello @yantosca & @msulprizio, As discussed on this thread, I have now contacted the Chemistry Working Group about this pull request (pasted below). The manuscript including the code in this pull request [Wang et al 2021] has now been resubmitted and all reviewer comments addressed. I will post any updates from the Chemistry Working Group here and I remain keen for this minor update to be included as soon as possible. Thanks, Tomás
|
Thanks @tsherwen. I've added this item to our Model development priority page under "in the queue". These updates will need to be merged with the dev-kpp branch that will be going into 13.3.0. In that branch, @yantosca has greatly cleaned up gckpp_HetRates.F90 and @michael-s-long has moved sulfate chemistry to KPP and added HMS and C2H2/C2H4 chemistry, so there will likely be conflicts to resolve. We recommend updating the base branch for this PR to |
@tsherwen - I'm going to summarize the changes in my own words to make sure I understand this PR correctly. I'll use reaction numbers from your manuscript and reference code lines in the PR. Can you confirm my understanding? R10, R11, and R12 are retained from the old chemistry.[1] The updates are the removal of persistent uptake reactions[2] and the addition of (R13) IONO2 hydrolysis[3]. The removal of uptake reactions have negligible affect on ISALA/ISALC burdens and small changes at the surface. For HOI, removing uptake increased burdens (11%) and surface concentrations (15%). IONO2, as expected, has the most substantial changes to burden (-25%) and surface concentrations (-47%), which are net changes both from removing persistent uptake (+) and adding photolysis (-). If I understand the changes, they sound good to me. [1] Standard.eqn PR new lines:
|
Hello @barronh, I've attached the text from the updated "halogens in GEOS-Chem" paper [Wang et al 2021] for reference, as it isn't showing in my copy-paste of the working group email on this thread. OK. Your summary is correct. Thanks for reviewing this! Tomas |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems straightforward but I will make the modifications manually, as the hetrates have been updated.
@tsherwen, I am looking at your code to try to bring this into 13.3.0. I have a question as to which gamma values you use to pass to CLOUDHET. If you look at the calling code in SET_HET, you have:
And in routine CLOUDHET there is a CASE statement to pick !------------------------------------------------------------------------
! Select Gamma and molar mass for this species
!------------------------------------------------------------------------
!%%% BMY NOTE: GET RID OF THIS CASE STATEMENT, IT IS INEFFICIENT
!%%% TO DO A STRING TEST ON EVERY (I,J,L) GRID BOX (bmy, 6/16/20)
select case (trim(speciesName))
case ('HO2')
gammaLiq = 0.10_fp
gammaIce = 0.025_fp
molmass = H%HO2%MW_g
case ('NO2')
gammaLiq = 1e-8_fp
gammaIce = 0.0_fp
molmass = H%NO2%MW_g
case ('NO3')
gammaLiq = 0.002_fp
gammaIce = 0.001_fp
molmass = H%NO3%MW_g
case ('N2O5')
! Reactive uptake coefficient for N2O5 on liquid water cloud
! Value is 0.03 at 298 K (JPL, Burkholder et al., 2015)
! For temperature dependence, JPL recommends the same as
! sulfuric acid aerosol at zero percent H2SO4, which is 0.019 at 298 K.
! Then apply constant scale factor (0.03/0.019)
gammaLiq = ( 0.03_fp / 0.019_fp ) * &
exp( -25.5265_fp + 9283.76_fp / T - 851801.0_fp / T**2 )
! Reactive uptake coefficient for N2O5 on water ice
gammaIce = 0.02_fp
molmass = H%N2O5%MW_g
case ('BrNO3')
gammaLiq = MAX( 0.0021_fp*T - 0.561_fp, 1e-30_fp )
gammaIce = 5.3e-4_fp * exp(1100.0_fp / T)
molmass = H%BrNO3%MW_g
case ('ClNO3')
if ( present(xliq) ) gammaLiq = xliq
if ( present(xice) ) gammaIce = xice
molmass = H%ClNO3%MW_g
case ('IONO2')
if ( present(xliq) ) gammaLiq = xliq
if ( present(xice) ) gammaIce = xice
molmass = H%IONO2%MW_g But if you notice, for IONO2, it's expecting external optional variables For hydrolysis I presume you'd want
is that right? |
Or would you use the values for BrNO3: gammaLiq = MAX( 0.0021_fp*T - 0.561_fp, 1e-30_fp )
gammaIce = 5.3e-4_fp * exp(1100.0_fp / T) |
KPP/fullchem/fullchem.eqn KPP/aciduptake/aciduptake.eqn - Remove hetchem rxns HOI = ISALA and HOI = ISALC - Remove hetchem rxns IONO = ISALA and IONO = ISALC - Remove hetchem rxns IONO2 = ISALA and IONO2 = ISALC - Add hetchem rxn IONO2 + H2O = HOI + HNO3 KPP/fullchem/RateLawFuncs.F90 - Add new hetrate function IONO2uptkByH2O, following the instructions in geoschem/geoschem #719 KPP/fullchem/gckpp.map KPP/fullchem/gckpp_*.F90 - Rebuilt with KPP 2.3.3_gc NOTE: There may be a bug in the original code as received from T. Sherwen, we are asking for clarification. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need clarification about the value of XLIQ and XICE for IONO2 to be passed into CloudHet. It seems that there is a bug but I cannot be sure.
Hello @yantosca, Thanks for catching this. It seems to be a typo in the branch passed. The values should be as below, as this what was used to make the uptake coefficient consistent with hydrolysis in aerosols.
I know we have discussed this on various threads, but please @xuanw0316 can you just confirm that this is what was in the final runs for the ACP paper? Thanks, Tomas |
Thanks for the quick response @xuanw0316. To be clear though, we do not have cloud hydrolysis of IONO2 switched on in the core runs in the ACP paper? This was to be explored separately in the other work. Large impacts were found on including those additional updates. |
Thanks @tsherwen @xuanw0316! I can go forward with this. We'll definitely get it into 13.3.0. |
In the original geoschem/geos-chem PR #719, the gammaLiq and gammaIce values for IONO2 were not specified in routine CloudHet. This was a bug in the original development branch. Tomas Sherwen and Xuan Wang have clarified that the values of gammaLiq and gammaIce for IONO2 should both be 0.01. We now pass these to the CloudHet function in rate law function IONO2uptkByH2O in KPP/fullchem/fullchem_RateLawFuncs.F90. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
I am going to close out this PR, as it has now been superseded by PR #923. The modifications in this PR could not be merged because the base code no longer exists in the latest development branch. I have taken the algorithm described in this PR and applied it to the more recent development branch. |
Hello GCST,
Please can I request that this minor commit be included in the timescales of the updated Cl+Br+I paper [Wang et al 2021]? the Wang et al [2021] paper is to be submitted to ACPD very very soon. This is a scientific change with small impacts. It includes IONO2 hydrolysis in a way that is more consistent with other XNOy species. A description of the changes will be included in Wang et al [2021].
I can write an accompanying issue for this pull request too.
Cheers,
Tomas