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] Feature/blowing snow #356
Conversation
… GSFC) These updates were originally added by Christoph Keller (NASA GMAO).
This was recommended by the Atm. Dyn. and Chem. Group at NASA GSFC: ClNO3(g) + HBr(l,s) -> BrCl + HNO3 BrNO3(g) + HCl(l,s) -> BrCl + HNO3 HOCl(g) + HBr(l,s) -> BrCl + H2O # Conflicts: # Headers/input_opt_mod.F90 Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Option to turn off het rates in stratosphere is present based on value of Input_Opt%TurnOffHetRates, but it is commented out in most locations. This update was originally done by Christoph Keller (NASA GMAO) based on recommendations by Eric Fleming (NASA GSFC). Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Tested using GEOSgcm with MAPL 1.1.1. Interfaces/GCHP/Chem_GridCompMod.F90 was used for GEOSCHEMchem_GridCompMod.F90. HEMCO directory was copied to the HEMCO grid comp. Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
This update also removes error checking for land type fraction all zeros since the MAPL bug causing the problem is fixed. Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
# Conflicts: # Interfaces/GCHP/Chem_GridCompMod.F90 Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Writing across all processes slows initialization down significantly for MPI applications of GEOS-Chem. Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
… files Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Conflicts: run/GEOS/GEOSCHEMchem_ExtData.rc Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Changes include: - update location of RONO2 external files - update location of FAST-JX external files - comment out volcano extension menu previously used in GEOS and turn on new Carns volcano extension. - turn off ExtData debug prints NOTE: whether new Carns volcano extension should be used in GEOS to replace the old settings needs review. Signed-off-by: Lizzie Lundgren <elundgren@seas.harvard.edu>
Signed-off-by: Lyatt Jaegle <jaegle@uw.edu>
As input for the blowing snow emissions code I have some HEMCO files with multi-year sea ice fraction for 1984-2018. They total to about 10G. How should I share them with the GC support team? |
Thanks @jaegle! I've added this item to the Model Development Priorities page under "ready to go in" so that it may be considered for inclusion in the GEOS-Chem 13 release series. You can send us the data files via an ftp site, Dropbox, or any equivalent file transfer system available to you. |
The multi-year sea ice files are available on the anonymous ftp site: |
Thanks @jaegle! I downloaded the files successfully. We'll keep you posted on bringing these updates into the standard model. |
Hi Lyatt, Thanks for preparing the files. I noticed a few things in the netCDF file structure that will need to be changed so that these files can be read in properly by GCHP. (GCHP has stricter I/O requirements than GC-Classic.)
to e.g. for 1985:
e.g. for 1986:
etc.
@lizziel: Is there anything else that I've forgotten? |
Hi Bob, The new multi-year sea ice files are available on the anonymous ftp site: |
Thanks Lyatt! I downloaded the updated files. |
! add bromine blowing snow | ||
IF ( Inst%CalcBr2 ) THEN | ||
IF ( HcoState%Grid%YEDGE%Val(I,J) .lt. 0 ) THEN | ||
SSA_Br2 = SSA_Br2 + HcoState%TS_EMIS * A_M2 & | ||
* (QSNOWICE_FYI * SUM( Inst%F_DI_S_FYI(:,N) ) + & | ||
QSNOWICE_MYI * SUM( Inst%F_DI_S_MYI(:,N) ) ) * DDSNOW & | ||
* 0.00223d0 * 0.7d0 / 2.0d0 | ||
ELSE | ||
SSA_Br2 = SSA_Br2 + HcoState%TS_EMIS * A_M2 & | ||
* (QSNOWICE_FYI * SUM( Inst%F_DI_N_FYI(:,N) ) + & | ||
QSNOWICE_MYI * SUM( Inst%F_DI_N_MYI(:,N) ) ) * DDSNOW & | ||
* 0.00223d0 * 0.7d0 / 2.0d0 | ||
ENDIF | ||
ENDIF | ||
ENDIF |
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.
The bromine option in the sea salt extension was retired in 12.9. To accomodate that change I excluded this section in the blowing snow update in GEOS-Chem 13. @jaegle, can you confirm that this is okay? Are there other places that need editing as well? Also, are you okay with the bromine option being retired in the first place?
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.
Yes, you can remove the CalcBr2 option.
A few more places that need editing:
-
the variable AGE should be included in the PRIVATE statement in hcox_seasalt_mod.F90 (it wasn't in the patch I submitted)
-
I noticed that when using HEMCO standalone to calculate blowing snow emissions, surface pressure was set at 101325.0 Pa. I use the variable HcoState%Grid%PSFC%Val( I, J ):
! Surface pressure at grid box (I,J). Convert from [Pa] to [hPa]
PRESS = HcoState%Grid%PSFC%Val( I, J ) /100d0
should a difference variable be used?
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.
- I made that change. Thanks for noticing that.
- Yes, using that variable should be fine. What you saw in 12.7 may be a bug that has since been fixed where PS was not used to set pressure in the absence of PSFC listed as an input.
Hi @jaegle, I am working on bringing your updates into the standard model. There are conflicts in this PR due to differences between GEOS-Chem 13 and 12.7.0 so I am instead manually bringing them on a new branch. I will make a new PR for this feature request using that branch for us to merge in and will link to it here when I am done. I have a few questions about the updates as I am putting them in.
I added a comment to the code in this PR about this. Please see that comment which has questions.
Thank you! |
! There is no need for this conditions as FROPEN=0 if there is | ||
! no open ocean. Also this lead to zeroing of SSA emissions over | ||
! polar night regions | ||
!inhibit emission if not ocean grid box | ||
!IF ( HCO_LANDTYPE( ExtState%WLI%Arr%Val(I,J), & | ||
! ExtState%ALBD%Arr%Val(I,J) ) /= 0 ) & | ||
! SCALE = 0d0 |
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.
Since this is commented out does it need to be included?
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.
Yes, this can be removed. Note that using the following condition:
IF ( HCO_LANDTYPE( ExtState%WLI%Arr%Val(I,J), &
ExtState%ALBD%Arr%Val(I,J) ) /= 0 )
to determine whether a grid box has open ocean, is present in other parts of HEMCO (such as hcox_seaflux_mod.F90 among others). The ALBD field in the MERRA-2 A1 file is set to a large number (>0.8) for all regions that are in polar night - I assume that this is because it is used/calculated in the radiation part of the MERRA-2 code. As a result, the HCO_LandType function (or any use of the condition ALBD>0.695 or ALBD>0.4) erroneously assumes that open ocean regions that are in polar night are covered by sea ice. Thus no sea salt emissions (or air-sea exchange) occurs in these boxes. This should be corrected.
One simple fix is to replace the use of ALBD in HCO_LANDTYPE with sea ice fraction (FRSEAICE) and more generally to replace the use of ALBD with FRSEAICE to determine whether an ocean box is covered by sea ice or not.
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.
Thanks! Could you create a github issue with this bug report?
There are now two new PRs to replace this one: @jaegle, I am also running 1-month benchmarks and will have a comparison to show shortly for validation. If you could also take a quick look over the code changes in each PR that would be very helpful. |
Validation for the changes will be here later today: |
Differences in SeaSalt emissions are summarized below. See also these difference plots.
I am curious about the changes to MEGAN biogenic emissions. I'm not sure that these are expected, and I am currently investigating the cause.
|
Following up on the differences in MEGAN emissions, I ran a 1-month benchmark comparing to my internal benchmarks and got zero differences from that extension. I was able to reproduce the exact differences from the SeaSalt extension. There must be a separate issue (e.g. run setup, compiler) causing the differences in MEGAN emissions seen in the results posted above. |
I have looked at the benchmaks and it looks good to me, with changes in SALA, SALC, BrSALA and BrSALC as expected. As this is a simulation for July, the largest changes are seen in the SH polar regions. With decreasing sea salt emissions from the oceans due to to cold temperature suppression and increased emissions over sea ice due to blowing snow sea salt emissions. I have two quick questions:
ftp.atmos.washington.edu and use these new files instead of the ones I sent last year." |
I did not make further changes to your original code submission for sea salt chloride. Should the changes be here, adding SNOWSALA to FLUXSALACL and SNOWSALC to FLUXSALCCL, then multiplying by scale factor 0.5504?
I don't think that message made it onto GitHub for some reason. I will download the new files to replace what we have. Thanks for bringing this up! |
Yes, that it indeed the change that should be made. Thanks! |
The updates discussed on this thread are now all set in the new PRs I created for GEOS-Chem and HEMCO. I will close this PR since it will not be merged. |
Updates to GEOS-Chem v12.7.0 to include blowing snow from sea salt aerosol.
Submitted by Lyatt Jaegle and Jiayue Huang to GC support team June 2020. Please email jaegle@uw.edu with any questions.
These updates add a new source of sea salt aerosol (SSA) from the wind mobilization of saline snow on sea ice. The blowing snow SSA source follows the parameterization of Yang et al. (2008, 2010) as implemented in GEOS-Chem by Huang and Jaegle (2017) and Huang et al. (2018). It also includes a source of sea salt bromide (BrSALA and BrSALC) from the blowing snow SSA, assuming a surface snow bromide enrichement factor of 5 relative to sea water (sea salt Br– is emitted assuming a ratio of 10.55 10-3 kg Br per kg of dry blowing snow SSA emitted) as described in Huang et al. (2020).
The default assumptions about the blowing snow source are in the HEMCO_Config file and include:
The daily fraction of multi year sea ice is obtained from remotely sensed observations of sea ice motion and sea ice extent for the Arctic (Tschudi et al., 2019). For the Antarctic, the multi year sea ice extent is based on the minimum MERRA-2 sea ice extent of the previous summer.
These changes also include two updates to the SSA emissions from the open ocean. We have added a suppression of open ocean SSA emissions over cold waters with SST<5 deg C as described in Huang and Jaegle (2017). This reduces SSA emissions during summertime by a factor of 2 over cold waters. This is implemented as a flag in HEMCO_Config.rc. Also in prior versions of GEOS-Chem the SSA ocean emissions were only calculated in open ocean gridboxes
as determined by the function HCO_Landtype based on LWI (land water ice) flags and (ALB) Albedo. This lead to no SSA emissions over high latitudes during winter night and also to uneven emissions in coastal areas. The LWI flags have been superseded by the MERRA-2 and
GEOS-FP fields FRLAND, FROCEAN, FRSEAICE. In the updated version we now use FROCEAN and FRSEAICE to determine whether the gridbox is open ocean or sea ice, and we scale the emissions based on the fraction of the gridbox covered by these respective fractions.
References:
Huang, J. and Jaeglé, L.: Wintertime enhancements of sea salt aerosol in polar regions consistent with a sea ice source from blowing snow, Atmospheric Chem. Phys., 17(5), 3699–3712, doi:10.5194/acp-17-3699-2017, 2017.
Huang, J., Jaeglé, L. and Shah, V.: Using CALIOP to constrain blowing snow emissions of sea salt aerosols over Arctic and Antarctic sea ice, Atmospheric Chem. Phys., 18(22), 16253–16269, doi:https://doi.org/670 10.5194/acp-18-16253-2018, 2018.
Huang, J., Jaeglé, L., Chen, Q., Alexander, B., Sherwen, T., Evans, M. J., Theys, N., and Choi, S.: Evaluating the impact of blowing snow sea salt aerosol on springtime BrO and O3 in the Arctic, Atmos. Chem. Phys. Discuss., https://doi.org/10.5194/acp-2019-1094, in press, 2020.
Tschudi, M., W. N. Meier, J. S. Stewart, C. Fowler, and J. Maslanik. "EASE-Grid Sea Ice Age, Version 4." NASA National Snow and Ice Data Center Distributed Active Archive Center. doi: https://doi.org/10.5067/UTAV7490FEPB., 2019.
Yang, X., Pyle, J. A. and Cox, R. A.: Sea salt aerosol production and bromine release: Role of snow on sea ice, Geophys. Res. Lett., 35(16), doi:10.1029/2008GL034536, 2008.
Yang, X., Pyle, J. A., Cox, R. A., Theys, N. and Van Roozendael, M.: Snow-sourced bromine and its implications for polar tropospheric ozone, Atmospheric Chem. Phys., 10(16), 7763–7773, doi:10.5194/acp-10-7763-2010, 2010.
Modifications have been made to 6 files:
Changes to HEMCO_Config.rc Extensions (* indicate new):
The files in $ROOT/MULTI_ICE/v2020-04 indicate the daily fraction of multi year sea ice. These files were generated from remotely sensed observations of sea ice motion and sea ice extent for the Arctic (Tschudi et al., 2019). For the Antarctic, the multi year sea ice extent is based on the minimum MERRA-2 sea ice extent of the previous summer.
HEMCO_Config.rc.txt