In both the default CAM5-aerosol packages (MAM3,MAM7) and the Oslo-aerosol packages, the budget terms can be taken out using a variable in the namelist :
&phys_ctl_nl history_aerosol = .true. /
Two more diagnostics are useful:
To enable this, take the file cam/src/physics/cam_oslo$ vim preprocessorDefinitions.h and copy it to your SourceMods/src.cam folder
Change both preprocessor definitions to true
#define AEROCOM #define AEROFFL
The AEROCOM-token turns on diagnostics needed for AEROCOM The AEROFFL-token tells the model to do additional radiation-diagnostics for aerosol indirect effect
Running with budgets activated will produce the following terms in the monthly output files:
Output variable name | Meaning | Comment |
---|---|---|
SF{Tracer} | Emissions from surface | |
GS_{Tracer} | gas phase chemistry | 3D-emissions and gas phase washout included in this term |
AQ_{Tracer} | aquous chemistry | |
{Tracer}_Mixnuc1 | Activation in clouds and evaporation of cloud droplets | |
{Tracer}_DDF | Dry deposition flux (aerosol tracers) | |
{Tracer}_SFWET | Wet deposition flux (aerosol tracers) | |
{Tracer}_condtend | loss/production in condensation/nuclation | (CAM-Oslo only) |
{Tracer}_coagTend | loss/production in coagulation | (CAM-Oslo only) |
DF_{Tracer} | dry deposition flux (gas tracers) | output with history_aerosol with CAM-Oslo only |
WD_A_{Tracer} | wet deposititon flux (gas tracers) | output with history_aerosol with CAM-Oslo only |
{Tracer}_CLXF | 3D-emissions (“external forcing”) | output with history_aerosol with CAM-Oslo only |
{Tracer}_clcoagTend | loss of tracer due to coagulation with cloud droplets | output with history_aerosol with CAM-Oslo only |
Note: Since 3D-emissions and and gas washout rates are included in the term GS_{Tracer} in the mozart chemistry solver, the individual terms can be found like this (example for SO2):
ncap2 -O -s GS_ONLY_SO2=GS_SO2-WD_A_SO2-SO2_CLXF infile.nc outfile.nc
More info on SO2 budgets (see /models/atm/cam/tools/diagnostics/ncl/ModIvsModII/ for scripts with info on all tracers):
GS_SO2 contains the SO2 budget terms for all that goes on in the chemistry-routine, which is
1) Gas phase chemistry, 2) Wet deposition, and 3) 3D-emissions.
Gas phase chemistry is both production from DMS (GS_DMS) and loss through OH (GL_OH)
For calculations of net loss, e.g. used to calculate SO2 life-times, we're interested in the
loss through OH from the chemistry-term (GL_OH).
GS_SO2 = GL_OH + SO2_CLXF - WD_A_SO2 - GS_DMS*64/62
or
GL_OH = GS_SO2 - SO2_CLXF + WD_A_SO2 + GS_DMS*64/62
Estimating chemical loss w.r.t. S (instead of SO2 or DMS), for comparison with CAM4-Oslo numbers:
net chemial loss gas phase = (GS_SO2/1.998 - SO2_CLXF + WD_A_SO2)/1.998 + GS_DMS/1.938
net chemical loss = net chemial loss gas phase + AQ_SO2/1.998
Finally, total net loss (used to calculate life-time = -load/(net loss), where load = cb_SO2/1.998):
net loss =
- WD_A_SO2/1.998 ;wet deposition in kg/m2/sec (positive in output file)
- DF_SO2/1.998 ;dry deposition in kg/m2/sec (positive in output file)
+ AQ_SO2/1.998 ;wet phase production of SO4 in kg/m2/ses (negative in output file)
+ (GS_SO2 - SO2_CLXF + WD_A_SO2)/1.998 + GS_DMS/1.938 ; net chemical loss gas phase
To prepare output so that it is processed automatically by the aerocom tools, use the script located at models/atm/cam/tools/aerocom/ in the svn repository. The script prepares files such that the idl aerocom tools prepare plots for the aerocom webinterface: URL link to NorESM on AeroCom webinterface
The script requires <ModelName>_<ExperimentName> and <Period> as input.
<Period>: for a climatological average and run choose 9999 , for nudged simulations choose the year of the meteorology
<ModelName>_<ExperimentName>: is the dataset identifier under which the plots appear on the AeroCom webinterface
of the form NorESM-CAM5_svn{RevisionNumber}_YYMMDD{initials}_Freetext.
Example: “NorESM-CAM5_svn1094_151201AG_CMIP6endelig”
Initials AG: Alf Grini, AK: Alf Kirkevåg, DO: Dirk Olivie…
The script creates files named like
“aerocom3_<ModelName>_<ExperimentName>_<VariableName>_<VerticalCoordinateType>_<Period>_<Frequency>.nc”
<ModelName> ⇒ eg NorESM-CAM53
<ExperimentName> ⇒ svn{RevisionNumber}_YYMMDD{initials}_Freetext
<VariableName> ⇒ aerocom variable names
<VerticalCoordinateType> ⇒ “Surface”, “Column”, “ModelLevel”, “SurfaceAtStations”, “ModelLevelAtStations”
<Period> ⇒ eg “2008”, “2010”, “9999”
<Frequency> ⇒ “timeinvariant”,”hourly”, “daily”, “monthly”, “sat1000”, “sat1330”, “sat2200”, “sat0130”
Note that VerticalCoordinateType is dependent on the variable!! It is not a question about “vertical coordinate type used in model simulations”!
The script copies files on norstore into /projects/NS2345K/CAM-Oslo/DO_AEROCOM/<ModelName>_<ExperimentName>/renamed/