Mercury: Difference between revisions
Line 181: | Line 181: | ||
#*Chris has a simulation with Hg-Br chemistry and SS aerosol deposition; the global budget is ok, but the Br concentrations in the BL are too low to generate diurnal cycles. (cdh working on it) | #*Chris has a simulation with Hg-Br chemistry and SS aerosol deposition; the global budget is ok, but the Br concentrations in the BL are too low to generate diurnal cycles. (cdh working on it) | ||
#Snow/ice scavenging of HgII | #Snow/ice scavenging of HgII | ||
#*Cold-temperature wet scavenging of HgII is now included in the standard code. | |||
#Dry deposition of "aqueous HgII. | #Dry deposition of "aqueous HgII. | ||
#*(Explanation from Chris: We calculate the fraction of HgII, Fg, which is gas phase. But we're currently applying the dry deposition velocity to both gas and aqueous fractions. I think it would be better to deposit the aqueous fraction at the velocity of HgP; this would be slower dep, but I don't know how much. This is definitely up for discussion.) | #*(Explanation from Chris: We calculate the fraction of HgII, Fg, which is gas phase. But we're currently applying the dry deposition velocity to both gas and aqueous fractions. I think it would be better to deposit the aqueous fraction at the velocity of HgP; this would be slower dep, but I don't know how much. This is definitely up for discussion.) |
Revision as of 13:38, 5 May 2011
On this page we include information relevant to the GEOS-Chem mercury simulations. Please also visit our Global Terrestrial Mercury Model page, which is an option that can be used with the GEOS-Chem mercury simulation.
Code
Code.v9-01-01
Omitted code in Hg simulation
Some of the updates to the Hg code from Holmes et al. (2010) didn't get properly implemented in v9-01-01. We haven't looked *extensively* through the code, but a quick look through the obvious mercury routines showed a number of differences:
(1) In LAND_MERCURY_FLUX (land_mercury_mod.f) The first IF statement was IF ( (SNOW_HT > 1D0) .OR. (IS_ICE(I,J)) ) THEN But should have been IF ( (IS_ICE(I,J)) .OR. (IS_LAND(I,J) .AND. SNOW_HT>10d0) )THEN (2) In BIOMASSHG (land_mercury_mod.f) We currently have (with Bess's 50% reduction): BBRatio_Hg_CO=1.05D-7 However, we should use this value from Holmes et al 2010: BBRatio_Hg_CO=1D-7 (3) In SOILEMIS (land_mercury_mod.f): This IF statement was IF ( IS_LAND(I,J) .AND. (SNOW_HT < 1d0) ) THEN But should have been IF ( IS_LAND(I,J) .AND. (SNOW_HT < 10d0) ) THEN (4) In SNOWPACK_MERCURY_FLUX (land_mercury_mod.f): Residence time when T > -3C was 7 days; i.e. K_EMIT = 1.6D-6 Should have been 3 weeks; i.e. K_EMIT = 5D-7 (5) In ADD_HG2_SNOWPACK (depo_mercury_mod.f): This IF statement was IF ( (SNOW_HT > 1d0) .OR. (IS_ICE(I,J)) ) THEN But should have been IF ( (IS_ICE(I,J)) .OR. (IS_LAND(I,J) .AND. SNOW_HT > 10d0) ) THEN We allowed 100% of deposited Hg available for emission; i.e. SNOW_HG(I,J,NN) = SNOW_HG(I,J,NN) + MAX( DEP_HG2, 0D0 ) This Should have only been 60%; i.e. SNOW_HG(I,J,NN) = SNOW_HG(I,J,NN) + MAX( 0.6D0*DEP_HG2, 0D0 ) (6) In OCEAN_MERCURY_FLUX (ocean_mercury_mod.f): We had the old definition IF ((ALBD(I,J) <= 0.4d0) .and. (FRAC_L < 0.8d0) .and. (MLDCM > 0.99d0)) THEN Holmes et al 2010 used consistent criteria for ocean/land/ice categories IF ( ( IS_WATER(I,J) ) .AND. ( MLDCM > 0.99d0 ) ) THEN
This fix will be standardized in GEOS-Chem v9-01-02. In the meantime, we have released a post-release patch for v9-01-01. Use the "Git Pull" command to apply the patch into your v9-01-01 code directory:
git pull git://git.as.harvard.edu/bmy/GEOS-Chem master
The patch contains 3 commits named:
Fixed minor error in depo_mercury_mod.f Add comments to denote updates to Holmes 2010 Hg Update to Holmes et al. 2010 version
and is tagged as v9-01-01-Patch-Hg.
--Jenny Fisher 09:43, 13 April 2011 (EDT) --Bob Y. 09:43, 13 April 2011 (EDT)
Division by zero error
There is a div by 0 error in mercury_mod.f FUNCTION GET_BR that affects v8-03-02 and v9-01-01. It's a quick fix.
Replace: BR_FAC = ( 1440d0 / TTDAY(I,J) ) with: BR_FAC = SAFE_DIV( 1440d0, TTDAY(I,J), 0d0) Replace: BR_FAC = BR_FAC / ( 4D-4 * TTDAY(I,J) ) with: BR_FAC = SAFE_DIV( BR_FAC, 4D-4* TTDAY(I,J), 0d0) And add: !Refernces to F90 modules USE ERROR_MOD, ONLY: SAFE_DIV
Sometimes TTDAY is 0, so BR_FAC becomes Inf and C_BR becomes Inf. The problem trickles down and shows up as 'PL-HG2-$' diagnostics Hg2_OH, Hg2_O3, Hg2_BR, and Br diagnostics having NaNs in their arrays. Adding the SAFE_DIV fixes the problem. (H Amos, 9 Mar 2011)
This fix will be standardized in GEOS-Chem v9-01-02.
--hamos 10:46, 9 March 2011 (EST)
--Bob Y. 10:46, 9 March 2011 (EST)
Code.v8-03-02
Diagnostics fix for Hg simulation (Helen Amos, 30 September 2010):
If the WETDLS-$ and WETDCV-$ diagnostics are only showing up for Hg2 (and not for HgP) in your ctm.bpch file, make the following change to the 'Diagnostics Menu' in input.geos:
ND38: Cld Conv scav loss: 47 all ND39: Wetdep scav loss : 47 all
ND38: Cld Conv scav loss: 47 2 3 ND39: Wetdep scav loss : 47 2 3
Recommendations for running code versions 8-03-02 and later (eds):
- Reduce geogenic emissions by 50%
- ref. Soerensen et al. 2010
- mercury_mod.f line 3470:
EHg0_nt = EHg0_nt * 0.5D0 - Reduce biomass burning emissions by 50%
- ref. Soerensen et al. 2010
- land_mercury_mod.f line 225:
REAL*8, PARAMETER :: BBRatio_Hg_CO = 1.05D-7 - Reduce intermediate water mercury concentration in Southern Ocean to 0.9pM total
- ref. low end of uncertainty range Sunderland and Mason 2007
- ocean_mercury_mod.f line 2950:
CDEEPSAT = (/ 0.8d-10, 4.1d-10, 4.1d-10 /) - Reduce concentration of BrO in Arctic during depletion events to 5pptv
- ref. low end of uncertainty range in Holmes et al. 2010
- ref. low [BrO] observed Neuman et al. 2010
- mercury_mod.f line 3805:
REAL*8, PARAMETER :: BRO_POLAR=5D0 - Adopt Qiaoqiao Wang's modification to rainout & washout
- uncomment wetscav_mod.f line 4101:
F_RAINOUT = F_PRIME
! Washout occurs where there is no rainout
F_WASHOUT = MAX( FTOP - F_RAINOUT, 0d0 )
ELSE
F_RAINOUT = 0d0
F_WASHOUT = 0d0
ENDIF
- comment out wetscav_mod.f line 4121:
!F_WASHOUT = 0d0
!IF ( PDOWN(L,I,J) > 0d0 ) THEN
! IF (QQ(L,I,J) > 0d0) THEN
! F_RAINOUT = MAX( FTOP, F_PRIME )
! ENDIF
! F_WASHOUT = MAX( FTOP - F_RAINOUT, 0d0 )
!ENDIF
Previous discussions (6/2008)
- Standardize the solver. Everyone should use the solver Chris developed for the Hg chemistry
(located at ~cdh/GC/RevisedChem.v7-04-06/mercury_mod.f)- outstanding issue - dry dep of Hg0* <- currently working on this (eds)
- See GEOS-Chem v8-03-02 and later for Holmes et al. 2010 Hg+Br simulation.
- Catalog all emissions options and develop clear flagging system to choose your own adventure. This will include:
- different anthropogenic emissions scenarios/corrections (i.e Jaffe vs. Streets) <- going to work on the anthro emissions soon (eds),
- different land emissions. <- nvd will work on this
- Logicals implemented to select anthropogenic emissions from GEIA 2000, GEIA 2005, or GEIA scaled to Streets et al. 2006 regional totals.
- different anthropogenic emissions scenarios/corrections (i.e Jaffe vs. Streets) <- going to work on the anthro emissions soon (eds),
- Diagnostics. See separate section below.
- Diagnostics have been updated.
- Comment everything in the code. Remove old bits of code that are hanging around & commented out.
- Ongoing.
- GEOS-5
- This is the standard meteorology to use at present. MERRA is in development.
- Get the land stuff out of ocean_mercury_mod.f and into it's own module <- nvd will work on this
- Implemented by ccarouge v8-03-02.
Chemistry 'issues'
Previous discussions
- Oxidant.
- Chris has a simulation with Hg-Br chemistry and SS aerosol deposition; the global budget is ok, but the Br concentrations in the BL are too low to generate diurnal cycles. (cdh working on it)
- Snow/ice scavenging of HgII
- Cold-temperature wet scavenging of HgII is now included in the standard code.
- Dry deposition of "aqueous HgII.
- (Explanation from Chris: We calculate the fraction of HgII, Fg, which is gas phase. But we're currently applying the dry deposition velocity to both gas and aqueous fractions. I think it would be better to deposit the aqueous fraction at the velocity of HgP; this would be slower dep, but I don't know how much. This is definitely up for discussion.)
- See Holmes et al. 2010 for discussion of chemistry in standard version.
Diagnostics
Notes
- Helen Amos is developing diagnostics for reactive gaseous mercury and reactive particulate mercury.
- Bess Corbitt is developing diagnostics for a tagged-tracer simulation with 17 world regions. For example, when running with this option, for prompt recycling of deposited mercury, instead of HG-SRCE category and Hg0_ln tracer name for the total tracer, I would have category HG0-RECY and tracername Hg0_usa, Hg0_can, etc.
Previous discussions
Here are some suggested changes:
- Emissions should have units 'kg/m2/s' or something of the form 'mass/area/time' (they are currently 'kg'). The HG-SRCE diagnostic currently has all of the Ocean tracers and fluxes; these should go elsewhere.
- The Ocean Hg0, Hg2, HgC should have concentration units not kg. Is 'molar' the best choice? Fluxes of these should be in concentration/time, not kg.
- The ocean restart files should have concentration units not kg. They currently use the category 'OCEAN-HG' which would make sense for the ND03 ocean Hg0, Hg2, HgC output too.
- 'PL-HG2-$' doesn't really describe all of the fluxes in our model. There are a lot of diagnostic quantities which are either chemical P/L fluxes or rate constants. I think these should all be in one diagnostic called something like 'PL-HG-$' (or maybe 'PL-HG-A', 'PL-HG-O' to separate the atmosphere and ocean). The fluxes in this diagnostic would include redox in air and water, colloidal sinking, ocean-atmosphere piston velocity, ...
Here are the current GEOS-Chem Hg outputs
CATEGORY ILUN TRCNAME TRC UNIT TAU0(DATE) DIMENSIONS 1 : IJ-AVG-$ 23 Hg0 1 pptv 157776.00(2003010100) 72 46 30 2 : IJ-AVG-$ 23 Hg2 2 pptv 157776.00(2003010100) 72 46 30 3 : IJ-AVG-$ 23 HgP 3 pptv 157776.00(2003010100) 72 46 30 4 : WETDCV-$ 23 Hg2 3002 kg/s 157776.00(2003010100) 72 46 30 5 : WETDCV-$ 23 HgP 3003 kg/s 157776.00(2003010100) 72 46 30 6 : WETDLS-$ 23 Hg2 3002 kg/s 157776.00(2003010100) 72 46 30 7 : WETDLS-$ 23 HgP 3003 kg/s 157776.00(2003010100) 72 46 30 8 : HG-SRCE 23 Hg0_an 34001 kg 157776.00(2003010100) 72 46 1 9 : HG-SRCE 23 Hg0_aq 34002 kg 157776.00(2003010100) 72 46 1 10 : HG-SRCE 23 Hg0_oc 34003 kg 157776.00(2003010100) 72 46 1 11 : HG-SRCE 23 Hg0_ln 34004 kg 157776.00(2003010100) 72 46 1 12 : HG-SRCE 23 Hg0_na 34005 kg 157776.00(2003010100) 72 46 1 13 : HG-SRCE 23 Hg2_an 34006 kg 157776.00(2003010100) 72 46 1 14 : HG-SRCE 23 Hg2_aq 34007 kg 157776.00(2003010100) 72 46 1 15 : HG-SRCE 23 Hg2_sk 34008 kg 157776.00(2003010100) 72 46 1 16 : HG-SRCE 23 HgP_an 34009 kg 157776.00(2003010100) 72 46 1 17 : HG-SRCE 23 KwHg 34010 cm/h 157776.00(2003010100) 72 46 1 18 : HG-SRCE 23 HgC 34011 kg 157776.00(2003010100) 72 46 1 19 : HG-SRCE 23 Hg_to_C 34012 kg 157776.00(2003010100) 72 46 1 20 : PL-HG2-$ 23 Hg2_Hg0 35001 kg 157776.00(2003010100) 72 46 30 21 : PL-HG2-$ 23 Hg2_OH 35002 kg 157776.00(2003010100) 72 46 30 22 : PL-HG2-$ 23 Hg2_O3 35003 kg 157776.00(2003010100) 72 46 30 23 : PL-HG2-$ 23 Hg2_SS 35004 kg 157776.00(2003010100) 72 46 1 24 : PL-HG2-$ 23 Hg2_SSR 35005 /s 157776.00(2003010100) 72 46 1 25 : DRYD-FLX 23 Hg0df 36001 molec/cm2/s 157776.00(2003010100) 72 46 1 26 : DRYD-FLX 23 Hg2df 36002 molec/cm2/s 157776.00(2003010100) 72 46 1 27 : DRYD-FLX 23 HgPdf 36003 molec/cm2/s 157776.00(2003010100) 72 46 1 28 : DRYD-VEL 23 Hg2dv 37002 cm/s 157776.00(2003010100) 72 46 1 29 : DRYD-VEL 23 HgPdv 37003 cm/s 157776.00(2003010100) 72 46 1
I think we should change lines 8-24 (I've kept the same line numbers and TRCNAME, but changed CATEGORY, TRC, or UNIT):
CATEGORY TRCNAME TRC UNIT 8 : HG-SRCE Hg0_an 34001 kg/m2/s 10 : HG-SRCE Hg0_oc 34002 kg/m2/s 11 : HG-SRCE Hg0_ln 34003 kg/m2/s 12 : HG-SRCE Hg0_na 34004 kg/m2/s 13 : HG-SRCE Hg2_an 34005 kg/m2/s 16 : HG-SRCE HgP_an 34006 kg/m2/s 9 : OCEAN-HG Hg0_aq xxxx1 mol/L 14 : OCEAN-HG Hg2_aq xxxx2 mol/L 18 : OCEAN-HG HgC xxxx3 mol/L 20 : PL-HG-A Hg2_Hg0 35001 kg/m3/s 21 : PL-HG-A Hg2_OH 35002 kg/m3/s 22 : PL-HG-A Hg2_O3 35003 kg/m3/s 23 : PL-HG-A Hg2_SS 35004 kg/m3/s 24 : PL-HG-A Hg2_SSR 35005 /s 15 : PL-HG-O Hg2_sk xxxx1 kg/m3/s 19 : PL-HG-O Hg_to_C xxxx2 kg/m3/s 17 : PL-HG-O KwHg xxxx3 cm/h
The only thing I have to add is that at first I didn't realize that wet deposition of Hg(II) was composed of both WETDCV and WETDLS. Is it important to save those components out as 2 separate parts? (nvd)
To answer Nicole, it is useful to have the large scale and convective wet scavenging written out separately for comparison to wet deposition observations. They are different processes in the model and can tell us different things about where the model is performing well and where it needs improvement (for example, convective scavenging over the Gulf Coast region). (eds)
GTMM
GEOS-Chem v8-03-02 and higher versions provide the option to use the Global Terrestrial Mercury Model, which is a detailed land-surface model for use with the Hg simulations. Please see the following references for more information.
- Global Terrestrial Mercury Model wiki page
- GTMM User's Manual (PDF)