5.3.2. Files, configuration, and environment variables

5.3.2.1. CCTM input files
5.3.2.2. CCTM compilation options
5.3.2.3. CCTM compilation
5.3.2.4. CCTM execution options
5.3.2.5. CCTM output files

[Insert Schematic of CCTM]

5.3.2.1. CCTM input files

Table 5.3. CCTM input files

File Name Format Description
OCEAN_1 GRDDED3 Name and location of the time-independent 2-D file for defining the fraction of each model grid cell covered by open ocean
EMIS_1 GRDDED3 Name and location of the time-dependent 2-D or 3-D emission file speciated for a particular gas-phase chemical mechanism and PM model; output from an emission model, such as SMOKE or CONCEPT
MEPSE_1 GRDDED3 Name and location of the major emitting point sources emissions file, required only when the CCTM is compiled for PinG simulations; output from an emission model, such as SMOKE or CONCEPT
PDM_PING_1 GRDDED3 Name and location of the active plume file, required only when the CCTM is compiled for PinG simulations; output from the PDM
INIT_[GASC|AERO| NONR|TRAC]_1 GRDDED3 Name and location of the time-dependent, single time step, 3-D initial conditions file speciated for a particular gas-phase chemical mechanism and PM model; output from ICON
BNDY_[GASC|AERO| NONR|TRAC]_1 GRDDED3 Name and location of the time-dependent, either single time step or multi-time step, 3-D boundary conditions file speciated for a particular gas-phase chemical mechanism and PM model; output from BCON
GRID_CRO_2D GRDDED3 Name and location of the time-independent 2-D cross point meteorology file; output by MCIP
GRID_DOT_2D GRDDED3 Name and location of the time-independent 2-D dot point meteorology file; output by MCIP
MET_CRO_2D GRDDED3 Name and location of the time-dependent 2-D cross point meteorology file
MET_DOT_3D GRDDED3 Name and location of the time-dependent 3-D dot point meteorology file; output by MCIP
MET_CRO_3D GRDDED3 Name and location of the time-dependent 3-D cross point meteorology file; output by MCIP
MET_BDY_3D BNDARY3 Name and location of the time-dependent 3-D boundary meteorology file; output by MCIP
XJ_DATA ASCII Name and location of the daily clear sky photolysis rates file speciated for a particular gas-phase chemical mechanism; output from JPROC

5.3.2.2. CCTM compilation options

The configuration options listed here are set during compilation of the CCTM executable. When these options are invoked they create a binary executable that is fixed to the specified configuration. The change these options it is necessary to recompile CCTM and create a new executable.

  • Opt: [default: verbose]

    Defines the action to be taken by the program M3BLD when extracting source code from CVS and compiling an executable.

    • compile_all: force compile, even if all the object files are current
    • clean_up: remove all source files upon successful compilation
    • no_compile: do everything except compile
    • no_link: do everything except link
    • one_step: compile and link in one step
    • parse_only: checks configuration file syntax
    • show_only: shows requested commands but does not execute them
    • verbose: shows requested commands as they are executed
  • MakeOpt:

    Uncomment to build a Makefile to compile the executable.

  • ParOpt:

    Uncomment to build an executable for running on multiple processors. Invoking this command requires the availability of a parallel Stenex library file, a Pario library file, and an MPI library/include files.

  • ModDriver: [default: ctm_yamo]

    The CCTM general coordinate driver module.

    • ctm: air density-based scheme for mass-conserving advection
    • ctm_yamo: Yamartino scheme for mass-conserving advection
  • ModInit: [default: init_yamo]

    The CCTM time-step initialization module.

    • init: air density-based scheme for mass-conserving advection
    • init_yamo: Yamartino scheme for mass-conserving advection
  • ModAdjc: [default: // Yamartino option]

    Mass conservation error adjustment scheme. Corrects for mass inconsistencies arising from how the input meteorology treats density and wind fields. This adjustment is only required if the air density-based scheme for mass-conserving advection is selected.

    • adjcon_noop: deactivate the air density-based conservation adjustment scheme
    • denrate: adjust the vertical advection error term from the meteorology model by air density from the CCTM
    • //: comment out for Yamartino scheme for mass-conserving advection
  • ModCpl: [default: gencoor]

    Unit conversion and concentration coupling module. The only option is for the CMAQ generalized coordinate (gencoor).

  • ModHadv: [default: hyamo]

    Horizontal advection module

    • hadv_noop: deactivate horizontal advection
    • hppm: use the unmodified Piecewise Parabolic Method to calculate horizontal advection
    • hyamo: use the global mass-conserving scheme to calculate horizontal advection
  • ModVadv: [default: vyamo]

    Vertical advection module

    • vadv_noop: deactivate vertical advection
    • vppm: use the unmodified Piecewise Parabolic Method to calculate vertical advection
    • vyamo: use the global mass-conserving scheme to calculate vertical advection
  • ModHdiff: [default: multiscale]

    Horizontal diffusion module

    • hdiff_noop: deactivate horizontal diffusion
    • multiscale: diffusion coefficient based on local wind deformation
  • ModVdiff: [default: acm2]

    Vertical diffusion module

    • vdiff_noop: deactivate vertical diffusion
    • eddy: calculate vertical diffusion using eddy diffusivity theory
    • eddy_carb: eddy vertical diffusion instrumented for carbonaceous aerosol apportionment
    • edd_hg: eddy vertical diffusion instrumented for the mercury CMAQ model
    • eddy_sulf: eddy vertical diffusion instrumented for the sulfate tracking model
    • eddy_tx: eddy vertical diffusion instrumented for the air toxics CMAQ model
    • acm2: calculate vertical diffusion using the Asymmetric Convective Model version 2
    • acm2_carb: ACM2 vertical diffusion instrumented for carbonaceous aerosol apportionment
    • acm2_hg: ACM2 vertical diffusion instrumented for the mercury CMAQ model
    • acm2_sulf: ACM2 vertical diffusion instrumented for the sulfate tracking model
    • acm2_tx: ACM2 vertical diffusion instrumented for the air toxics CMAQ model
  • ModPhot: [default: phot]

    Photolysis calculation module

    • phot_noop: deactivate photolysis rate calculations
    • phot: calculate photolysis rates
  • ModPing: [default: ping_noop]

    Plume in Grid module

    • ping_noop: deactivate plume in grid model
    • ping_smvgear_aero3: use the CMAQ plume dynamics model with an internal SMVGEAR chemistry solver for gas-phase chemistry with aero3
    • ping_smvgear_aero4: use the CMAQ plume dynamics model with an internal SMVGEAR chemistry solver for gas-phase chemistry with aero4
  • ModChem: [default: ebi_cb05]

    Gas-phase chemistry solver module

    • chem_noop: deactivate gas-phase chemistry
    • smvgear: use the SMVGEAR chemistry solver
    • ros3: use the Rosenbrock chemistry solver
    • ebi_cb4: use the Euler Backward Iterative solver optimized for the Carbon Bond-IV mechanism
    • ebi_cb4cl: use the Euler Backward Iterative solver optimized for the Carbon Bond-IV mechanism with chlorine chemistry
    • ebi_cb4hg: use the Euler Backward Iterative solver optimized for the Carbon Bond-IV mechanism with mercury
    • ebi_cb4tx1p: use the Euler Backward Iterative solver optimized for the Carbon Bond-IV mechanism with air toxics
    • ebi_cb05: use the Euler Backward Iterative solver optimized for the Carbon Bond-05 mechanism
    • ebi_cb05hg: use the Euler Backward Iterative solver optimized for the Carbon Bond-05 mechanism with mercury
    • ebi_cb05cltx: use the Euler Backward Iterative solver optimized for the Carbon Bond-05 mechanism with air toxics
    • ebi_saprc99: use the Euler Backward Iterative solver optimized for the SAPRC-99 mechanism
    • ebi_saprc99tx2p: use the Euler Backward Iterative solver optimized for the SAPRC-99 mechanism with air toxics
    • ebi_saprc99tx3: use the Euler Backward Iterative solver optimized for the SAPRC-99 mechanism with air toxics
  • ModAero: [default: aero4]

    CMAQ aerosol module

    • aero_noop: deactivate aerosol chemistry
    • aero3: the 3rd generation modal CMAQ aerosol model
    • aero3_carb: aero3 instrumented with primary carbonaceous aerosol apportionment
    • aero3_sulf: aero3 instrumented with a sulfate tracking model
    • aero3_hg: aero3 with mercury chemistry
    • aero4: the 3rd generation modal CMAQ aerosol model with extensions for sea salt emissions and thermodynamics
    • aero4_carb: aero4 instrumented with primary carbonaceous aerosol apportionment
    • aero4_sulf: aero4 instrumented with a sulfate tracking model
    • aero4_hg: aero4 with mercury chemistry
    • aero4_tx: aero4 with hazard air pollutant aerosol treatment
  • ModAdepv: [default: aero_depv2]

    CMAQ aerosol deposition velocity module

    • aero_depv_noop: deactivate aerosol deposition
    • aero_depv2: 2nd generation CMAQ aerosol deposition velocity routine
    • aero_depv2_carb: aero_depv2 instrumented for carbonaceous aerosol apportionment
    • aero_depv2_hg: aero_depv2 instrumented for mercury modeling
    • aero_depv2_sulf: aero_depv2 instrumented for the sulfate tracking model
  • ModCloud: [default: acm]

    CMAQ cloud module for modeling the impacts of clouds on deposition, mixing, photolysis, and aqueous chemistry

    • cloud_noop: deactivate clouds in modeling
    • cloud_radm: RADM cloud processor
    • cloud_radm_sulf: RADM cloud processor instrumented for the sulfate tracking model
    • cloud_acm: RADM-based cloud processor that uses the asymmetric convective model to compute convective mixing
    • cloud_acm_hg: ACM cloud model instrumented for modeling mercury
    • cloud_acm_tx: ACM cloud model instrumented for modeling air toxics
  • ModPa: [default: pa]

    Process analysis module

    • pa: only configuration option at the module level; to turn process analysis on/off in CMAQ use the PAOpt variable (see below).
  • ModUtil: [default: util]

    CMAQ utility modules

    • util: only configuration option at the module level
  • Mechanism: [default: cb05_ae4_aq]

    Specifies the gas-phase, aerosol, and aqueous phase chemical mechanisms to use for modeling air quality. The choices for the Mechanism variable are the mechanism directory names under the $M3MODEL/include/release directory. Examples include:

    • cb4_ae3_aq: CB-IV gas-phase mechanism, 3rd generation CMAQ aerosol mechanism, aqueous/cloud chemistry
    • cb4_ae4_aq: CB-IV gas-phase mechanism, 3rd generation CMAQ aerosol mechanism with sea salt, aqueous/cloud chemistry
    • cb05_ae4_aq: CB-05 gas-phase mechanism, 4th generation CMAQ aerosol mechanism with sea salt, aqueous/cloud chemistry
    • saprc99_ae4_aq: SAPRC99 gas phase mechanism, 3rd generation CMAQ aerosol mechanism with sea salt, aqueous/cloud chemistry
    • saprc99_aq: SAPRC99 gas phase mechanism and aqueous/cloud chemistry
    • cb4ae4_ca_aq: CB-IV gas-phase mechanism, 4th generation CMAQ aerosol mechanism with sea salt, aqueous/cloud chemistry, carbonaceous aerosol apportionment
    • saprc99_ae4st_aq: SAPRC99 gas phase mechanism, 4th generation CMAQ aerosol mechanism, aqueous/cloud chemistry, sulfate tracking model
  • PAOpt: [default: pa_noop]

    Specifies the process analysis configuration to use for CMAQ. The choices for the PAOpt variable are the available directories for process analysis include files under the $M3MODEL/include/release directory.

5.3.2.3. CCTM compilation

Section 3.3 provides an overview of how to install and compile the CMAQ programs for the tutorial simulation. Follow the steps outlined in Section 3.3 to compile new versions of CCTM:

  1. If you have not already done so, build the CMAQ source code and compilation management program (M3BLD); this only needs to be done the first time you install CMAQ
  2. Install and compile the I/O API, netCDF, and MPICH libraries; if these are already available from a previous CMAQ compilation, configure the CCTM build script to use the available libraries
  3. If you have not already done so, compile the STENEX and PARIO libraries
  4. Configure the CCTM build script for your application
  5. Invoke the build script to create an executable:

    ./bldit.cctm.pgf

5.3.2.4. CCTM execution options

The environment variables listed here are invoked during execution of the program and are set in the CCTM run script.

  • EXEC: [default: CCTM_${CFG}]

    Executable to use for the simulation

  • NPCOL_NPROW: [default: 1 1]

    Domain decomposition for parallel mode; recommended configuration is for the number of columns to be larger than the number of rows. For example, if running with 8 processors, the recommended setting is “4 2”.

  • NPROCS: [default: 1]

    Number of processors for parallel execution; equal to the product of NPCOL x NPROW

  • STDATE:

    Simulation start date (YYYYDDD)

  • STIME

    Simulation start time (HHMMSS)

  • NSTEPS: [default: 240000]

    Number of simulation time steps (HHMMSS)

  • TSTEP: [default: 010000]

    Simulation output time step interval (HHMMSS)

  • LOGFILE: [default: $BASE/$APPL.log]

    Uncomment to capture CCTM standard output to a log file; the LOGFILE variable sets the name and location of the log

  • IOAPI_LOG_WRITE: [default: F]

    [T|F]; set to “F” to turn off excess WRITE3 logging by the I/O API

  • FL_ERR_STOP: [default: F]

    [T|F|Y|N]; set to “F” or “N

  • DISP: [default: keep]

    Controls the maintenance of existing log files.

    • delete: delete output log if it already exists
    • keep: abort simulation if output log exists
  • OUTDIR: [default: $M3DATA/cctm]

    CCTM output file directory location

  • CTM_APPL: [default: $APPL]

    CCTM log file naming extension

  • GRIDDESC: [default: ../GRIDDESC1]

    Grid description file for setting the horizontal grid definition

  • GRID_NAME:

    Name of the grid definition contained in the GRIDDESC file that specifies the horizontal grid for the current application of the model

  • AVG_CONC_SPCS: [default: “O3 NO NO2 ASO4I ASO4J NH3”]

    Model species for calculating integral average concentrations for each output time step. Options can be any of the standard output species that are written to the CCTM CONC file. The species in this list will be written to the ACONC output file.

  • ACONC_BLEV_ELEV: [default: “1 1”]

    Vertical model layer range for integral average concentrations; this variable sets the lower and upper layers over which to calculate integral average concentrations.

  • OCEANpath: [default: $M3DATA/emis/tut02]

    Directory path for the input sea salt emissions file.

  • EMISpath: [default: $M3DATA/emis/tut02]

    Directory path for the input emissions file

  • TR_EMpath: [default: commented out]

    Directory path for the input tracer emissions file

  • [GC|AE|NR|TR]_ICpath

    Directory path for the input initial conditions file

  • [GC|AE|NR|TR]_BCpath

    Directory path for the input boundary conditions file

  • METpath

    Directory path for the input meteorology files

  • JVALpath

    Directory path for input clear-sky photolysis rate files

5.3.2.5. CCTM output files

Table 5.4. CCTM output files

File Name Format Description
CTM_CONC_1 GRDDED3 Name and location of hourly 3-D instantaneous gas- and aerosol-phase pollutant estimates
A_CONC_1 GRDDED3 Name and location of hourly 2-D or 3-D integral average gas- and aerosol-phase pollutant estimates
CTM_DRY_DEP_1 GRDDED3 Name and location of hourly 3-D gas- and aerosol-phase dry deposition estimates
CTM_WET_DEP_1 GRDDED3 Name and location of hourly 3-D gas- and aerosol-phase wet deposition estimates
CTM_VIS_1 GRDDED3 Name and location of hourly 3-D visibility metrics
CTM_DIAM_1 GRDDED3 Name and location of hourly 3-D aerosol diagnostics; dp and sigmas for Aitken and Accumulation mode aerosol species; set the variable CTM_AERODIAG to “T” in the CCTM run script to write this additional file
CTM_PING_1 GRDDED3 Name and location of hourly 3-D residual plume mass for Plume in Grid sources
CTM_PING_DIAM_1 GRDDED3 Name and location of hourly 3-D aerosol diagnostics for Plume in Grid sources
CTM_PING_DDEP_1 GRDDED3 Name and location of hourly 3-D gas- and aerosol-phase dry deposition estimates for Plume in Grid sources
CTM_IPR_[1-3] GRDDED3 Name and location of hourly 2-D or 3-D integrated process rate files; multiple files written when the CCTM is configured to track a large number of process/pollutant combinations
CTM_IRR_[1-3] GRDDED3 Name and location of hourly 2-D or 3-D integrated reaction rate files; multiple files written when the CCTM is configured to track a large number of reaction/pollutant combinations

The default location of the CCTM output files is the $M3DATA/cctm directory, controlled by the OUTDIR variable in the run script. The default naming convention for all CCTM output files uses the EXEC and APPL environment variables in the file name. All of the file naming variables for CCTM outputs are set in the run script.