Question on DMS and halogen chemistry emissions in WRF-CMAQ two-way coupled model

Hello,

I would like to use DMS and halogen chemistry in the WRF-CMAQ two-way coupled model, and I have a question regarding how the emissions are configured.

For reference, my setup uses WRF v4.3, CMAQ v5.3.3, and the cb6r3m_ae7_kmtbr chemical mechanism.

From my understanding, there seem to be two possible approaches:

  1. Using MGEMIS for marine gas emissions.

    • In this case, should I simply set setenv CTM_OCEAN_CHEM Y in the CCTM run script to enable this option?

    • Also, do I need to prepare separate emission inputs for DMS and halogen species when using MGEMIS, or are they internally calculated?

  2. Explicitly adding DMS and halogen species (e.g., MB3, MB2, etc.) to the emission input files.

    • If I want to use this approach, how exactly should the emissions be prepared and provided to the model?

Could you please clarify the difference between these two approaches, as well as how to properly configure each method?

Thank you very much for your guidance.

@Jinseung,

Let me start by clarifying the difference between these two approaches. One approach (the first one) relies on routines within the CMAQ model to estimate emissions of DMS and halogen species, while the second one relies on the user (namely, you) to come up with an estimate of DMS and halogen emissions outside of the model. Before choosing a path, I would think about the objectives of the study because both paths come with their own caveats.

The first approach requires you to simply set the environmental variable CTM_OCEAN_CHEM to Y and provide DMS and CHOLO_A fields in the OCEAN file see our tutorial on creating an Ocean file with these fields. With this option and inputs the CMAQ model will estimate these emissions (DMS + halogens) using the algorithms noted in Sarwar et al., 2015.

The second approach requires coming up with an algorithm to estimate emissions in each grid cell within your domain outside of the model and creating a separate gridded emissions file. I’ll leave that part up to you. Once that is taken care of you will still need to set the environmental variable CTM_OCEAN_CHEM to Y, but now will have to modify the EmissCtrl_cb6r3m_ae7_kmtbr.nml to zero the mappings coming from MGEMIS for DMS + halogens and replace them with those from your newly created file. See examples on how to modify the emissions control file here: CMAQ_UG_tutorial_emissions.md.

Hope that helps!

Thank you very much for your helpful response. I truly appreciate the detailed explanation. I would like to kindly ask for clarification on two additional points:

  1. In the first approach, when providing the DMS and CHOLO_A fields in the OCEAN file, is it necessary to assign explicit numerical values to these fields, or are they internally handled by the model once the fields are present?

  2. In the second approach, when you mention “zeroing the mappings,” does this specifically mean setting the scale factor to 0 in the EmissCtrl_cb6r3m_ae7_kmtbr.nml file, or does it refer to a different type of modification? In this case, do I also still need to include the DMS and CHOLO_A fields in the OCEAN file, even though the emissions are being provided externally?

Thank you again for your guidance and support.

@Jinseung,

  1. In the Ocean file these fields need explicit values, which can be calculated using tools available in our latest model release (see documentation here). Once these fields are populated in the Ocean file with explicit numerical values the internal algorithms in MGEMIS will use those fields to estimate grid scale DMS and Halogen emissions. If you are interested in seeing the exact algorithms I advise you to read Sarwar et al., 2023 section 2.2 and Sarwar et al., 2015 section 2.4 for DMS and Halogen emissions respectively.

  2. In the second approach, when you mention “zeroing the mappings,” does this specifically mean setting the scale factor to 0 in the EmissCtrl_cb6r3m_ae7_kmtbr.nml file, or does it refer to a different type of modification?

Yes, exactly setting the scale factor to 0 in the EmissCtrl file for DMS and Halogen species coming from the model.

An example:

   ! Marine Halogen Chemistry
   'EVERYWHERE', 'MGEM'         ,'HOI'    ,'HOI'         ,'GAS'  ,0.  ,'UNIT','a', 
   'EVERYWHERE', 'MGEM'         ,'DMS'    ,'DMS'         ,'GAS'  ,0.  ,'UNIT','a', 
   'EVERYWHERE', 'MGEM'         ,'CH3I'   ,'CH3I'        ,'GAS'  ,0.  ,'UNIT','a', 
   ..
   ..

You would also need to add a similar rule to map your custom prepared emissions to the corresponding CMAQ species:

An example:

   !  My Marine Halogen Chemistry
   'EVERYWHERE', 'GRIDMGEM'         ,'HYPOIODUSACID'      ,'HOI'         ,'GAS'  ,1.  ,'UNIT','a', 
   'EVERYWHERE', 'GRIDMGEM'         ,'DIMETHYLSULFIDE'    ,'DMS'         ,'GAS'  ,1.  ,'UNIT','a', 
   'EVERYWHERE', 'GRIDMGEM'         ,'METHYLIODIDE'       ,'CH3I'        ,'GAS'  ,1.  ,'UNIT','a', 
   ..
   ..

Note the above example just uses example stream label names and emission species names.

In this case, do I also still need to include the DMS and CHOLO_A fields in the OCEAN file, even though the emissions are being provided externally?

Yes, providing the fields themselves in the emissions file is sufficient enough, as the CMAQ code checks to see if those fields are present in the ocean file when using CB6R3M. However, since the fields are zero’d out after MGEMIS internally calculates the emissions, you can simply provide fields that are 0.0 for every single grid cell for both DMS and CHLO_A in the ocean file.