I run the “run_cctm.csh” script with this command:
setenv CTM_EMISCHK Y #> Abort CMAQ if missing surrogates from emissions Input files
Then I get the following error:
|> Reading and Storing Emission Scaling Rules:
+===============================================
*** ERROR **************************************************************:
The emission variable or member of family NO2
is not found on the stream(s) ALL.
Use one of the below options to continue.
1) Change or remove this emission rule so that it refers to an existing emission variable.
or
2) Change CTM_EMISCHK environment variable to False (F) in the runscript
if model predictions are acceptable without using the above emissions.
*************************************************************************
*** ERROR ABORT in subroutine DESID_PROCESS_RU on PE 000
Species with the missing emission variable must have a variable found in at least one stream.
PM3EXIT: DTBUF 8:00:00 Feb. 14, 2025
Date and time 8:00:00 Feb. 14, 2025 (2025045:080000)
Then I changed the setenv CTM_EMISCHK to “N” and it successfully ran. I’m just wondering by turning off the CTM_EMISCHK, does it have any effects to my output Concentration results or maybe by using this option, I missed some emissions or not?
The error message is saying that NO2 is not found in any of your emissions streams. That seems likely to be wrong, but if you want NO2 not to be emitted then you can remove (or comment out) that line in your DESID control file, e.g., CMAQ_Control_DESID_cb6r5_ae7_aq.nml.
If you set CTM_EMISCHK to N, then you should inspect the log file. It should report all the species whose emissions were found… look at the section headed “EMISSIONS SCALING REPORT”. If species you expect to be listed are not present, then that means those emissions have not been read in.
I have NO2 in the outputs of Emission and CCTM netcdf files. I want to consider NO2 to be emitted.
Yes, I set CTM_EMISCHK to N because I got the error that I mentioned in my previous message. I just did this based on the recomendation that I got in the log file:
“2) Change CTM_EMISCHK environment variable to False (F) in the runscript
if model predictions are acceptable without using the above emissions.”
Not sure if I need to set CTM_EMISCHK to Y or not, and how to solve that error. I just want to make sure by setting the CTM_EMISCHK to N, it doesn’t wrong my modeling results.
Here is the “EMISSIONS SCALING REPORT” part in my log file:
|> EMISSIONS SCALING REPORT:
==================================
Note: these are populated using rules from the
Emission Control File Supplied by the User.
>--------------------------------------------------------------------------------
Stream Type: "Megan Biogenic Emissions" | Sector Label: MIOG (01)
Table of Aerosol Size Distributions Available for Use Sector-Wide.
Note that Mode 1 is reserved for gas-phase species and emission variable.
Number Em. Var. Mode Reference Mode (see AERO_DATA.F)
------ -------------- --------------------------------
2 FINE FINE_REF
3 COARSE COARSE_REF
CMAQ Species Phase/Mode Em. Var. Region Op ScaleFac Basis FinalFac
------------ ---------- --------- ------ -- -------- ----- --------
NO GAS NO EVERYWHERE a 1.00E+00 UNIT 1.00E+00
AACD GAS AACD EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ALD2 GAS ALD2 EVERYWHERE a 1.00E+00 UNIT 1.00E+00
FORM GAS FORM EVERYWHERE a 1.00E+00 UNIT 1.00E+00
MEOH GAS MEOH EVERYWHERE a 1.00E+00 UNIT 1.00E+00
FACD GAS FACD EVERYWHERE a 1.00E+00 UNIT 1.00E+00
CO GAS CO EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ALDX GAS ALDX EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ETHA GAS ETHA EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ETOH GAS ETOH EVERYWHERE a 1.00E+00 UNIT 1.00E+00
KET GAS KET EVERYWHERE a 1.00E+00 UNIT 1.00E+00
PAR GAS PAR EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ACET GAS ACET EVERYWHERE a 1.00E+00 UNIT 1.00E+00
PRPA GAS PRPA EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ETHY GAS ETHY EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ETH GAS ETH EVERYWHERE a 1.00E+00 UNIT 1.00E+00
OLE GAS OLE EVERYWHERE a 1.00E+00 UNIT 1.00E+00
IOLE GAS IOLE EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ISOP GAS ISOP EVERYWHERE a 1.00E+00 UNIT 1.00E+00
TERP GAS TERP EVERYWHERE a 1.00E+00 UNIT 1.00E+00
APIN GAS APIN EVERYWHERE a 1.00E+00 UNIT 1.00E+00
BENZENE GAS BENZ EVERYWHERE a 1.00E+00 UNIT 1.00E+00
TOL GAS TOL EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ECH4 GAS CH4 EVERYWHERE a 1.00E+00 UNIT 1.00E+00
SESQ GAS SESQ EVERYWHERE a 1.00E+00 UNIT 1.00E+00
FORM_PRIMARY GAS FORM_PRIMARY EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ALD2_PRIMARY GAS ALD2_PRIMARY EVERYWHERE a 1.00E+00 UNIT 1.00E+00
NH3 GAS NH3 EVERYWHERE a 1.00E+00 UNIT 1.00E+00
>--------------------------------------------------------------------------------
Stream Type: "Marine Gas Emissions" | Sector Label: MGEM (02)
Table of Aerosol Size Distributions Available for Use Sector-Wide.
Note that Mode 1 is reserved for gas-phase species and emission variable.
Number Em. Var. Mode Reference Mode (see AERO_DATA.F)
------ -------------- --------------------------------
2 FINE FINE_REF
3 COARSE COARSE_REF
CMAQ Species Phase/Mode Em. Var. Region Op ScaleFac Basis FinalFac
------------ ---------- --------- ------ -- -------- ----- --------
DMS GAS DMS EVERYWHERE a 1.00E+00 UNIT 1.00E+00
>--------------------------------------------------------------------------------
Stream Type: "Sea Spray Aerosol Emissions" | Sector Label: SEASPRAY (03)
Table of Aerosol Size Distributions Available for Use Sector-Wide.
Note that Mode 1 is reserved for gas-phase species and emission variable.
Number Em. Var. Mode Reference Mode (see AERO_DATA.F)
------ -------------- --------------------------------
2 FINE FINE_SEASPRAY
3 COARSE COARSE_SEASPRAY
CMAQ Species Phase/Mode Em. Var. Region Op ScaleFac Basis FinalFac
------------ ---------- --------- ------ -- -------- ----- --------
ASO4J FINE PMFINE_SO4 EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ASO4K COARSE PMCOARSE_SO4 EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ANAJ FINE PMFINE_NA EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ACLJ FINE PMFINE_CL EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ACLK COARSE PMCOARSE_CL EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ACAJ FINE PMFINE_CA EVERYWHERE a 1.00E+00 UNIT 1.00E+00
AMGJ FINE PMFINE_MG EVERYWHERE a 1.00E+00 UNIT 1.00E+00
AKJ FINE PMFINE_K EVERYWHERE a 1.00E+00 UNIT 1.00E+00
AH2OJ FINE PMFINE_H2O EVERYWHERE a 1.00E+00 UNIT 1.00E+00
AH2OK COARSE PMCOARSE_H2O EVERYWHERE a 1.00E+00 UNIT 1.00E+00
ASEACAT COARSE PMCOARSE_SEACAT EVERYWHERE a 1.00E+00 UNIT 1.00E+00
================================================================================
|> END EMISSIONS SCALING PREPARATION AND DIAGNOSTIC OUTPUT
It seems that NO2 is not in any of the Stream Types including 01, 02 and 03 but it considered from other sources of input emissions. Am I right?
I attached the log file using the CTM_EMISCHK to N which ran successfully.
It looks like you have no anthropogenic emissions at all. Your only emissions streams are MEGAN biogenics, marine gas emissions, and seaspray.
If you intend to include anthropogenic emissions, then you need to fix your run script. setenv GR_EMIS_001 <path to gridded emissions file 1>
(with additional gridded emissions files if appropriate).
Then, if you also have stack (point source sector) emissions, then you need: setenv STK_GRPS_001 <path to stack groups file 1> setenv STK_EMIS_001 <path to stack emissios file 1>
and likewise for any additional point source sectors.
based on your log file, it seems you’re running without any gridded or inline point source emission files, the only three emission streams being reported are the MIOG (MEGAN inline), MGEM (marine gaseous emissions), and SEASPRAY (sea salt aerosol emissions) inline sources. Because none of these emit NO2, the model crashes when EMIS_CHECK is set to Y because your DESID control file specifies a rule for NO2 (and many other pollutants that are reported as missing when EMIS_CHECK is set to F).
In the log file section “Initialize Emissions Input Files”, you should be seeing something like this (in the case of the 2018 NE3 benchmark case):
================================================
|>--- INITIALIZE DESID EMISSION MODULE ---<|
================================================
|> Initialize Emissions Input Files:
+=====================================
Retrieving Env. Variables for Gridded and Elevated Point Emission Inputs
GR_EMIS_LAB_001 | GRIDDED_EMIS
GR_EMIS_APPLY_001 | T (default)
GR_EM_SYM_DATE_001 | F
GR_EMIS_LAB_002 | GR_RES_FIRES
GR_EMIS_APPLY_002 | T (default)
GR_EM_SYM_DATE_002 | F
STK_EMIS_LAB_001 | PT_NONEGU
STK_EMIS_APPLY_001 | T (default)
STK_EM_SYM_DATE_001 | F
STK_EMIS_LAB_002 | PT_EGU
STK_EMIS_APPLY_002 | T (default)
STK_EM_SYM_DATE_002 | F
STK_EMIS_LAB_003 | PT_OTHER
STK_EMIS_APPLY_003 | T (default)
STK_EM_SYM_DATE_003 | F
STK_EMIS_LAB_004 | PT_AGFIRES
STK_EMIS_APPLY_004 | T (default)
STK_EM_SYM_DATE_004 | F
STK_EMIS_LAB_005 | PT_RXFIRES
STK_EMIS_APPLY_005 | T (default)
STK_EM_SYM_DATE_005 | F
STK_EMIS_LAB_006 | PT_WILDFIRES
STK_EMIS_APPLY_006 | T (default)
STK_EM_SYM_DATE_006 | F
STK_EMIS_LAB_007 | PT_OTHFIRES
STK_EMIS_APPLY_007 | T (default)
STK_EM_SYM_DATE_007 | F
STK_EMIS_LAB_008 | PT_OILGAS
STK_EMIS_APPLY_008 | T (default)
STK_EM_SYM_DATE_008 | F
STK_EMIS_LAB_009 | PT_CMV_C3
STK_EMIS_APPLY_009 | T (default)
STK_EM_SYM_DATE_009 | F
STK_EMIS_LAB_010 | PT_CMV_C1C2
STK_EMIS_APPLY_010 | T (default)
STK_EM_SYM_DATE_010 | F
|> Open Gridded Emissions:
+===========================
But your log file just shows
===========================================
|>--- INITIALIZE EMISSIONS MODULE ---<|
===========================================
|> Initialize Emissions Input Files:
+=====================================
Retrieving Env. Variables for Gridded and Elevated Point Emission Inputs
|> Open Gridded Emissions:
+===========================
which indicates that no gridded or inline point source files are being passed to the CCTM executable. If you intended to provide such emissions rather than just running CCTM with the three inline streams being reported, those emission files likely aren’t specified correctly in your run script.
Yes, the issue was related to not considering the gridded emissions. I corrected the run_cctm scripts and now can see the gridded emissions in the “EMISSIONS SCALING REPORT" and “Initialize Emissions Input Files”.