Running specialty simulations
Warning
Running CO2 and CH4 specialty simulations in WRF-GC is a feature available in WRF-GC 3.0 or later. This is an experimental feature, please send feedback on this feature to Haipeng Lin (hplin at seas.harvard.edu).
Warning
Reminder: Do not copy WRF-GC source code directories. When moving directories, or starting a different type of simulation, always extract a fresh copy of WRF and WRF-GC (chem
directory) source code without copying the old code. Once the compile process is finished, that copy of WRF-GC is fixed to the directory path it was compiled in and cannot be easily moved.
Installing WRF-GC with specialty simulations
To run WRF-GC specialty simulations, a new set of WRF-GC coupler and GEOS-Chem configuration files need to be installed. We recommend creating a separate copy of WRF-GC (including WRF) source code for each different type of simulation and not mixing the source code directories.
To install specialty simulations, instead of running make install_registry
in the chem
folder after configuring WRF and before compiling, run:
make install_registry_ch4
for CH4 simulation;make install_registry_co2
for CO2 simulation.
Then, proceed to ./compile em_real
as usual.
Preparing necessary input files
Apart from the emission files specified in HEMCO_Config.rc
for specialty simulations, it is very important to provide the following inputs:
Restart files with initial concentrations for CO2 and CH4. You can input this into WRF-GC after
real.exe
using themozbc
tool. See Chemical Initial/Boundary Conditions (IC/BC). You can use thismozbc
configuration (similarly for CO2):
&control
do_bc = .true.,
do_ic = .true.,
domain = 1,
dir_wrf = '/directory/to/WRF/run/'
dir_moz = '/directory/to/input/'
fn_moz = 'input_data_file_name.nc'
spc_map = 'ch4 -> CH4',
/
(CH4 simulation only) High-resolution OH and Cl concentrations. By default,
HEMCO_Config.rc
uses 4x5 degree species maps, even if WRF-GC runs at higher resolution. You may want to replace these with higher resolution OH and Cl data. These are specified inHEMCO_Config.rc
here:
(((GLOBAL_OH
* GLOBAL_OH $ROOT/OH/v2014-09/v5-07-08/OH_3Dglobal.geos5.47L.4x5.nc OH 1985/1-12/1/0 C xyz kg/m3 * - 1 1
)))GLOBAL_OH
(((GLOBAL_CL
* GLOBAL_Cl $ROOT/GCClassic_Output/13.0.0/$YYYY/GEOSChem.SpeciesConc.$YYYY$MM$DD_0000z.nc4 SpeciesConc_Cl 2010-2019/1-12/1/0 C xyz 1 * - 1 1
)))GLOBAL_CL
)))CHEMISTRY_INPUT
To generate high-resolution data, you can use a full chemistry WRF-GC run with the same domain, extracting the oh
and cl
variables, and converting the units (WRF-GC output is in ppmv):
oh
unit should be converted from ppmv to kg/m3;cl
unit should be converted from ppmv to v/v dry; multiply by 1e-6.
and saving them to a netCDF
file so they can be read. Only the month necessary for the simulation needs to be provided, so for a run in 2019/02 and the concentrations saved out to wrfgc_output_oh_cl.nc
, the entries could be:
(((GLOBAL_OH
* GLOBAL_OH wrfgc_output_oh_cl.nc oh 2019/2/1/0 C xyz kg/m3 * - 1 1
)))GLOBAL_OH
(((GLOBAL_CL
* GLOBAL_Cl wrfgc_output_oh_cl.nc cl 2019/2/1/0 C xyz 1 * - 1 1
)))GLOBAL_CL
)))CHEMISTRY_INPUT
To help the conversion of ppmv to kg/m3:
Pressure from WRF output is
P
+PB
(perturbation pressure P + base state pressure PB), in Pa;Total potential temperature (Theta) is
T
+ 300, in K. To get the temperature,Temperature = Theta * ((P+PB)/1000)^(2/7), in K.
Molecular weight of Cl (atomic chlorine) is 35.45 g/mol per the GEOS-Chem species database.
Making outputs smaller
By default, WRF-GC outputs all the species for the full chemistry simulation even in CO2 and CH4 simulations. This can be annoying. Create a file outputlist.txt
in the run
directory with:
-:h:0:a3o2,acet,acta,ald2,alk4,aromp4,aromp5,aromro2,ato2,atooh,b3o2,bald,benz,benzo,benzo2,benzp,bro2,bzco3,bzco3h,bzpan,br,br2,brcl,brno2,brno3,bro,c2h2,c2h4,c2h6,c3h8,c4hvp1,c4hvp2,ccl4,cfc11,cfc113,cfc114,cfc115,cfc12,ch2br2,ch2cl2,ch2i2,ch2ibr,ch2icl,ch2o,ch2oo,ch3br,ch3ccl3,ch3choo,ch3cl,ch3i,chbr3,chcl3,clock,co,csl,cl,cl2,cl2o2,clno2,clno3,clo,cloo,eoh,ethln,ethn,ethp,etno3,eto,eto2,etoo,etp,glyc,glyx,h,h1211,h1301,h2,h2402,h2o,h2o2,hac,hbr,hc5a,hcfc123,hcfc141b,hcfc142b,hcfc22,hcooh,hcl,hi,hmhp,hmml,hms,hno2,hno3,hno4,ho2,hobr,hocl,hoi,honit,hpald1,hpald1oo,hpald2,hpald2oo,hpald3,hpald4,hpethnl,i,i2,i2o2,i2o3,i2o4,ibr,iche,ichoo,icn,icnoo,icpdh,icl,idc,idchp,idhdp,idhnboo,idhndoo1,idhndoo2,idhpe,idn,idnoo,iepoxa,iepoxaoo,iepoxb,iepoxboo,iepoxd,ihn1,ihn2,ihn3,ihn4,ihoo1,ihoo4,ihpnboo,ihpndoo,ihpoo1,ihpoo2,ihpoo3,ina,ino,ino2b,ino2d,inpb,inpd,io,iono,iono2,iprno3,isop,isopnoo1,isopnoo2,itcn,ithn,ko2,lbro2h,lbro2n,lch4,lco,limo,limo2,lisopno3,lisopoh,lnro2h,lnro2n,lox,ltro2h,ltro2n,lvoc,lvocoa,lxro2h,lxro2n,macr,macr1oo,macr1ooh,macrno2,map,mco3,mcrdh,mcrenol,mcrhn,mcrhnb,mcrhp,mcrohoo,mct,mek,meno3,mgly,mo2,moh,monits,monitu,mp,mpan,mpn,mtpa,mtpo,mvk,mvkdh,mvkhc,mvkhcb,mvkhp,mvkn,mvkohoo,mvkpc,n,n2,n2o,n2o5,nap,nh3,no,no2,no3,nphen,nprno3,nro2,o,o1d,o2,o3,ocs,oclo,oh,oio,olnd,olnn,othro2,pan,pco,ph2o2,phen,pio2,pip,po2,pox,pp,ppn,prn1,propnn,prpe,prpn,pso4,pyac,r4n1,r4n2,r4o2,r4p,ra3p,rb3p,rcho,rco3,rcooh,ripa,ripb,ripc,ripd,roh,rp,salacl,salccl,so2,tolu,tro2,xro2,xyle,aeri,aonita,asoa1,asoa2,asoa3,asoan,asog1,asog2,asog3,bcpi,bcpo,brsala,brsalc,dms,dst1,dst2,dst3,dst4,indiol,ionita,isala,isalc,monita,msa,nh4,nit,nits,ocpi,ocpo,sala,salaal,salc,salcal,so4,so4s,soagx,soaie,soap,soas,tsoa0,tsoa1,tsoa2,tsoa3,tsog0,tsog1,tsog2,tsog3,pfe,diag_so4_a1,diag_so4_a2,diag_so4_a3,diag_so4_a4,diag_nit_a1,diag_nit_a2,diag_nit_a3,diag_nit_a4,diag_nh4_a1,diag_nh4_a2,diag_nh4_a3,diag_nh4_a4,diag_ocpi_a1,diag_ocpi_a2,diag_ocpi_a3,diag_ocpi_a4,diag_ocpo_a1,diag_ocpo_a2,diag_ocpo_a3,diag_ocpo_a4,diag_bcpi_a1,diag_bcpi_a2,diag_bcpi_a3,diag_bcpi_a4,diag_bcpo_a1,diag_bcpo_a2,diag_bcpo_a3,diag_bcpo_a4,diag_seas_a1,diag_seas_a2,diag_seas_a3,diag_seas_a4,diag_dst_a1,diag_dst_a2,diag_dst_a3,diag_dst_a4,diag_soas_a1,diag_soas_a2,diag_soas_a3,diag_soas_a4,diag_so4_cw1,diag_so4_cw2,diag_so4_cw3,diag_so4_cw4,diag_nit_cw1,diag_nit_cw2,diag_nit_cw3,diag_nit_cw4,diag_nh4_cw1,diag_nh4_cw2,diag_nh4_cw3,diag_nh4_cw4,diag_ocpi_cw1,diag_ocpi_cw2,diag_ocpi_cw3,diag_ocpi_cw4,diag_ocpo_cw1,diag_ocpo_cw2,diag_ocpo_cw3,diag_ocpo_cw4,diag_bcpi_cw1,diag_bcpi_cw2,diag_bcpi_cw3,diag_bcpi_cw4,diag_bcpo_cw1,diag_bcpo_cw2,diag_bcpo_cw3,diag_bcpo_cw4,diag_seas_cw1,diag_seas_cw2,diag_seas_cw3,diag_seas_cw4,diag_dst_cw1,diag_dst_cw2,diag_dst_cw3,diag_dst_cw4,diag_soas_cw1,diag_soas_cw2,diag_soas_cw3,diag_soas_cw4,diag_water_a1,diag_water_a2,diag_water_a3,diag_water_a4,diag_num_a1,diag_num_a2,diag_num_a3,diag_num_a4,diag_num_cw1,diag_num_cw2,diag_num_cw3,diag_num_cw4
Go to namelist.input
and in &time_control
section, add:
iofields_filename = 'outputlist.txt',
This will exclude all the full-chemistry species from the specialty WRF-GC simuulation output.
CH4 and CO2 diagnostics
Diagnostics from the CH4
and CO2
collections for GEOS-Chem are available, apart from the species concentrations (in the ch4
and co2
variables, respectively).
CH4 simulation
CH4Emission
, CH4 emissions in column, in kg/s, stored in level 1 ofdiagikj9
.LossCH4byClInTrop
, Loss CH4 by reaction with Cl, in kg/s, 3-D, indiagikj7
.LossCH4byOHInTrop
, Loss CH4 by reaction with OH, in kg/s, 3-D, indiagikj8
.AirMassColumnFull
, Air Mass in column, in kg, 2-D, indiagij0
.CH4massColumnFull
, CH4 mass in column, full column, in kg, 2-D, indiagij1
.CH4massColumnTrop
, CH4 mass in column, troposphere only, in kg, 2-D, indiagij2
.LossOHbyCH4columnTrop
, OH loss by CH4 + OH loss in troposphere, in molec/s, 2-D, indiagij3
.LossOHbyMCFcolumnTrop
, OH loss by MCF + OH loss in troposphere, in molec/s, 2-D, indiagij4
.OHwgtByAirMassColumnFull
, mass-weighted mean OH, in kg air * kg OH m-3, 2-D, indiagij5
.
CO2 simulation
ProdCO2fromCO
, production of CO2 from CO oxidation, in kg/m2/s, 3-D, indiagikj9
.