geoschem / HEMCO

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

Country level scale factor #273

Open Meongdo-Jang opened 2 months ago

Meongdo-Jang commented 2 months ago

Name and Institution (Required)

Name: Meongdo Jang Institution: Konkuk Univ.

Confirm you have reviewed the following documentation

Description of your issue or question

I'm trying to set up a run in GEOS-Chem Classic ver. 14.1.1 with country level scale factors. Now, I have an error in HEMCO as like attached files. How can I solve it? HEMCO_Config.rc.txt GC.log

lizziel commented 2 months ago

Hi @Meongdo-Jang, thanks for reaching out. The error is because HEMCO expects a different set of columns than the ones you programmed. I believe you need to put the country level scale factors entry in the scale factors section of HEMCO_Config.rc later in the file. Find this section of HEMCO_Config.rc and try moving your scale factors file entry there.

### END SECTION BASE EMISSIONS ###

###############################################################################
### BEGIN SECTION SCALE FACTORS
###############################################################################
Meongdo-Jang commented 2 months ago

Thanks! As like you mentioned, I got the following error.

HEMCO ERROR: Cannot properly read mask coverage: COUNTRY_MASK --> LOCATION: -> at UpdateDtaProperties (in module HEMCO/src/Core/hco_config_mod.F90)

HEMCO ERROR: Error encountered in routine "UpdateDtaProperties" --> LOCATION: Config_ReadCont (hco_config_mod.F90)

HEMCO ERROR: Error in HEMCO_Config.rc @ line: ### BEGIN SECTION MASKS --> LOC ATION: Config_ReadFile (hco_config_mod.F90) GC.log GC.log scalefactor.txt countrymask_0.1x0.1.nc.txt

lizziel commented 2 months ago

This is an error when reading the configuration file. I searched the HEMCO code for string 'Cannot properly read mask cover' and found that the error is being tripped in here with this check:

      IF ( nEdges /= 4 ) THEN
          errMsg = 'Cannot properly read mask coverage: '                 // &
                   TRIM( Lct%Dct%cName )
          CALL HCO_Error( errMsg, RC, thisLoc )
          RETURN
       ENDIF

It looks like your country mask is not being parsed correctly because it is not in the correct location in HEMCO_Config.rc. It needs to be in the non-emissions data section. Look for this string in HEMCO_Config.rc:

###############################################################################
### NON-EMISSIONS DATA (subsection of BASE EMISSIONS SECTION)
###
### Non-emissions data. The following fields are read through HEMCO but do
### not contain emissions data. The extension number is set to wildcard
### character denoting that these fields will not be considered for emission
### calculation. A given entry is only read if the assigned species name is
### an HEMCO species.
###############################################################################

See also the HEMCO ReadTheDocs section on country scale factors.