1. WRF Chem code description - douglowe/WRFChem-ARC-Interactions GitHub Wiki

Versions 3.4.1 to 3.9.1 code

Code is provided in this repository for WRF-Chem versions 3.4.1, 3.6.1, 3.8.1, and 3.9.1. The code provided for 3.9.1 is a prototype of the code which was eventually added to version 4.0 - as such it is a little more complex than the code for the earlier versions (the differences are noted below). Adding these developments to another version of WRF-Chem will require careful modification of the source code, as the radiative forcing routines are subject to regular changes and development. If you would like advice on the changes to make then please do get in touch.

The changes which have been made to enable this analysis are:

  • Registry/Registry.EM_COMMON
    • shortwave and longwave radiative forcing variables, for upwelling and downwelling radiation, at the top and bottom of the atmosphere, for a "clean" atmosphere (e.g. SWUPTCLN) have been added.
    • these new variables have been added to the rrtmg_lwscheme and rrtmg_swscheme packages.
  • Registry/registry.chem
    • in version 3.9.1 (and onwards) the clean_atm_diag control flag is added. Default setting is 0 (no clean sky radiative calculations are made), setting this to 1+ in the namelist.input file will enable these calculations.
  • dyn_em/module_first_rk_step_part1.F
    • the new radiation variables have been added to the interface for the radiation_driver subroutine.
    • in version 3.9.1 (and onwards) the clean_atm_diag control flag is also passed (within the WRF-Chem specific section of code).
  • phys/module_radiation_driver.F
    • the radiation variables (and control flag) are added to the radiation_driver interface, and all declared as optional.
    • the radiation variables (and control flag) are added to the interfaces for the rrtmg_lwrad and rrtmg_swrad subroutines.
  • phys/module_ra_rrtmg_sw.F
    • the radiation variables (and control flag) are added to the rrtmg_swrad interface, and declared as optional.
    • a second call to the spcvmc_sw subroutine has been added, with the aerosol optical depth set to zero, in order to calculate the short-wave "clean sky" radiative forcing effects.
  • phys/module_ra_rrtmg_lw.F
    • the radiation variables (and control flag) are added to the rrtmg_lwrad interface, and declared as optional.
    • a second call to the rtrnmc subroutine has been added, with only the gas-phase optical depth (rather than the combined gas and aerosol optical depth) passed through, in order to calculate the long-wave "clean sky" radiative forcing effects.
  • chemics_init.F
    • a check is added to ensure that aer_ra_feedback is on when clean_atm_diag is used.

Version 4.0+ code

This code was added into version 4.0 of the model, the code changes made for this commit are available here. When using model versions 4.0 or newer, no modifications of the code should be needed to perform this analysis.