geoschem/GCHP

Issues when running GCHP13.2.1 with a new emission inventory

Closed this issue · 5 comments

Name and Institution (Required)

Name: Jia Mao
Institution: The Chinese University of Hong Kong

Confirm you have reviewed the following documentation

Description of your issue or question

Hi all, I have the following questions when using a regional anthropogenic emission inventory (MEIC) using GCHP13.2.1:

(1) I came across this problem when trying to add the new emission inventory according to the pre-existing inventory. For example, in HEMCO_Config.rc, APEI_OCPI and APEI_OCPO in APEI emission inventory read the same variable OC with different scaling factors (72 & 73). However, in ExtData.rc file, the scaling factor is set to none. So, I'm actually confused about the different roles of the revisions in HEMCO_Config.rc and ExtData.rc when using a new emission inventory.

HEMCO_Config.rc
截屏2023-10-25 下午2 39 44

ExtData.rc
截屏2023-10-25 下午2 43 27

(2) I'm not sure if GCHP supports the unit “molec/m2/s” for VOCs in HEMCO_Config.rc and ExtData.rc, which has been successfully tested by our group member using GEOS-Chem. However, I met the following problem when using the same setting in GCHP:

print_out.log
截屏2023-10-25 下午2 56 30

After I removed the VOC species have a unit “molec/m2/s”, GCHP successfully ran. I'm not sure what could be the cause.

The above are some of my questions, and I'll be grateful for any answers!

Hi @mmmjjj527, thanks for asking these questions as it is indeed confusing.

To answer your first question, there are two ways of applying scaling to imports (e.g. emissions inputs) in GCHP. One is to use the scaling entry in ExtData.rc. This option requires hard-coding a scaling value applied to the entire grid. We generally only do this for imports that are not listed in HEMCO_Config.rc, such as for meteorology fields that need a unit conversion, e.g. Pa to hPa. There are applications for other simple unit conversions too, such as VOCs (related to your other questions).

The second way is to use the scaling settings in HEMCO_Config.rc the same way you do for GC-Classic. Many of the columns in HEMCO_Config.rc are ignored in GCHP since the I/O information is in ExtData.rc. That includes the file path, units, and temporal read frequency. However, the scaling, masking, and hierarchy information in HEMCO_Config.rc are used in GCHP. Note that this means if you set scaling in ExtData.rc and in HEMCO_Config.rc then both will take effect, and you would have a bug if you set the same scaling in both since the scaling would be done twice.

The primary difference between the two ways is when the scaling happens. For ExtData.rc it happens every time the data is read from file. For HEMCO_Config.rc it happens every timestep when emissions are updated. This is a critical difference because it means the scaling can be dynamic at a different frequency than the frequency at which the data is read. For example, day of week scale factors. The scaling entry in ExtData.rc does not allow this flexibility.

Regarding your second question, I am not sure I understand what you did to fix the problem. Could you elaborate on what you changed? HEMCO unit conversions are not applied in GCHP since they occur during file I/O and HEMCO does not handle file I/O for GCHP. As I mentioned earlier, this is actually a case where the scaling in ExtData.rc could come in use if you need to do a fixed unit conversion. However, you can also apply the scaling in HEMCO_Config.rc by adding it in as another scale factor.

Hi @lizziel, thanks for your detailed explanation; now I have a much clearer understanding of this issue! : )

For the second question, in MEIC emission inventory, the units for SO2, NOx, CO, NH3, PM10, PM2.5, BC, OC, and CO2 are "metric tons per grid," while the unit for "VOC mechanism species" is "million moles per grid." When I attempted to use all VOC species with units of "molecules/m2/s," the simulations abruptly halted.

截屏2023-10-26 上午10 11 30

Subsequently, I excluded the VOC species and retained only SO2, NOx, CO, NMVOC, NH3, PM10, PM2.5, BC, and OC, and the simulation proceeded smoothly. I'm speculating whether this issue might be attributed to unit conversions. In essence, my question could be summarized as follows:

(1) How can I correctly perform unit conversions when applying a new emission inventory? Does GCHP support the use of different units for the same specific species (e.g., CH2O with units of kg/m2/s or kgC/m2/s)?
(2) Is there a reference list of all the species supported by GCHP? Currently, I'm only duplicating existing emission inventories.

The above are my questions. Many thanks for your help!

Hi @mmmjjj527, was there any error message in the log if you turn on HEMCO warnings and verbose to 3 in HEMCO_Config.rc? I assume the problem is happening in HEMCO but want to be sure. The units in HEMCO_Config.rc are supposed to be ignored in GCHP, although they are still read from the config file. In theory you should be able to apply whatever appropriate unit conversion scale factors are needed via the file.

Please post your log file here, and if you haven't already then first maximize the prints via the settings in HEMCO_Config.rc and rerun.

Hi @lizziel, sorry for the late update! I didn't maximize and keep the prints before. But I'm running GCHP smoothly after converting the original data to the unit of "kg/m2/s". I already checked the one-month results, and the magnitudes and spatial distribution of O3 are reasonable. My problems now are well solved. Many thanks for the help! :D

Glad to hear this is resolved!