geoschem / HEMCO

The Harmonized Emissions Component (HEMCO), developed by the GEOS-Chem Support Team.
https://hemco.readthedocs.io
Other
17 stars 33 forks source link

Adding New Emissions Files to HEMCO-CESM #291

Closed noribeth-m closed 1 month ago

noribeth-m commented 1 month ago

Your name

Noribeth Mariscal

Your affiliation

Wayne State University

What happened? What did you expect to happen?

Hello. I have been trying to set up a new emissions inventory for use in HEMCO in CESM3, specifically CAMSv5.1 using the original resolution of the files (0.1-degree). I am currently trying to run CESM/MUSICAv0 using a custom grid over Michigan at 1/16-degree (~7 km) using the MOZART-TS2 chemical mechanism. I ran my set up with the default HEMCO configuration file (specified here: https://wiki.ucar.edu/display/camchem/HEMCO in the HEMCO-CESM User's Guide) and it ran for 3 days with no issues. I then tried to add in one CAMSv5.1 file to see if it would read it, and it crashed due to the following errors:

from atm.log: HEMCO_CESM: Finished regridding CAM met fields to HEMCO (2)

HEMCO_CESM: HCO_Run Phase 1 has failed! THIS ERROR ORIGINATED WITHIN HEMCO! A critical component in HEMCO failed to run. This may be due to misconfiguration, or a bug. Please refer to the HEMCO.log log file in your case run directory or as configured in HEMCO_Config.rc for more information.

ABORT in HCO_ESMF_WRAPPERS. ASRT error in HCO_GC_Run line 1575

from cesm.log:

HEMCO ERROR: Cannot read lat edge of /glade/u/home/nmariscal/emis/CAMS-GLOB-AN dec2164.hsn.de.hpc.ucar.edu 959: T_v5.1_nox_2021_cdf5.nc dec2164.hsn.de.hpc.ucar.edu 959: dec2164.hsn.de.hpc.ucar.edu 959: HEMCO ERROR: Error encountered in routine HCOIO_Read! dec2164.hsn.de.hpc.ucar.edu 959: dec2164.hsn.de.hpc.ucar.edu 959: HEMCO ERROR: Error in HCOIO_DATAREAD called from HEMCO ReadList_Fill: CEDSNO dec2164.hsn.de.hpc.ucar.edu 959: ENE dec2164.hsn.de.hpc.ucar.edu 959: --> LOCATION: ReadList_Fill (HCO_ReadList_Mod.F90) dec2164.hsn.de.hpc.ucar.edu 959: dec2164.hsn.de.hpc.ucar.edu 959: HEMCO ERROR: Error in ReadList_Fill (3) called from HEMCO ReadList_Read dec2164.hsn.de.hpc.ucar.edu 959: --> L dec2164.hsn.de.hpc.ucar.edu 959: OCATION: ReadList_Read (HCO_ReadList_Mod.F90) dec2164.hsn.de.hpc.ucar.edu 959: Error in ReadList_Read called from hco_run dec2164.hsn.de.hpc.ucar.edu 959: ERROR: ABORT in HCO_ESMF_WRAPPERS. ASRT error in HCO_GC_Run line 1575

I checked the CAMSv5.1 file with the isCoards tool from the documentation and it complies (I did check one of the CEDS files from the HEMCO repo and it gave me similar compliance messages). There are some optional items that are recommended, but not required in the message (i.e., adding missing_value and fill_value). I am not quite sure why it cannot read the 'lat edges'. Any suggestions on how to best proceed would be greatly appreciated!

Thank you!

hemco_issue_report.zip

What are the steps to reproduce the bug?

  1. Create HEMCO-CESM case using FCts2nudged for chemistry and a custom ne30x16 grid.
  2. Modify NO_ene from CEDS file list in HEMCO_Config.rc with one file from CAMSv5.1 directory.
  3. Made a sector_name edit that popped up in the isCoards.
  4. Add custom settings (time of run, nudging, etc).
  5. Setup, build, and run as usual.

Please attach any relevant configuration and log files.

Files Attached:

What HEMCO version were you using?

3.9.0

What environment were you running HEMCO on?

Other (please explain below)

What compiler and version were you using?

intel

Will you be addressing this bug yourself?

Yes, but I will need some help

In what configuration were you running HEMCO?

GCHP

As what resolution were you running HEMCO?

1/16-degree (unstructured)

What meterology fields did you use?

MERRA-2

Additional information

No response

lizziel commented 1 month ago

Hi @noribeth-m, can you do an ncdump of your file and report it back here? You can do the following command for this: ncdump CAMS-GLOB-ANT_v5.1_nox_2021_cdf5.nc -h

lizziel commented 1 month ago

I can actually get your file on derecho so I will test with that.

lizziel commented 1 month ago

Hi Nori, it looks like the data file you have stores latitudes as northern edge rather than mid-point of cell. The latitudes are {-89.9, -89.8, -89.7, -89.6, ..., 89.7, 89.8, 89.9, 90.0} in the file. HEMCO treats the lat variables as mid-points and computes edges if they are not found in the file. For this case it computes an edge value >90 which results in failure. You should be able to fix this by shifting values in the file down by 0.05.

For future reference you can enable more HEMCO prints to log by setting verbose to true in HEMCO_Config.rc. I tried this out and it gave this message, plus a print of the latitudes, right before the error message: Uppermost latitude edge above 90 deg north!

Note also that your file has 11 monthly values rather than 12. If you plan to use the file for the full year then you will run into problems when December is not found.

noribeth-m commented 1 month ago

Hi Lizzie,

Thank you so much for looking into this! I really appreciate your quick response. That makes a lot of sense now. I will attempt to shift the latitudes in the file, test it out, and let you know if it works. Also, thanks for the heads up about the times. I currently only plan to run for the summer 2021, but will keep that in mind for future HEMCO use.

Best, Nori