Error about CMAQ5.4 online MEGAN

Dear all,

I’m using CMAQ5.4 online MEGAN, but I got this error message:
*** ERROR ABORT in subroutine megan_setup on PE 005
Could not extract MEGAN_EFS file
PM3EXIT: date&time specified as 0
Date&time specified as 0
I have no idea what i did wrong, or I’m not getting the right MEGAN_EFS file. There seems to be some bugs in MEGAN3.2/TXT2IOAPI.
CTM_LOG_005.v54_intel_d02_20211128.txt (19.2 KB)

Yunqing

Hi Yunqing. It looks like the MEGAN_CTS file is working and you’re using MEGAN 3.2, so that EF file should be compatible. Can you share an ncdump of your file? Here is an example from one that is currently working with CMAQ 5.4:

> ncdump -h EFMAPS_CONUS.ncf
netcdf EFMAPS_CONUS {
dimensions:
        TSTEP = UNLIMITED ; // (1 currently)
        DATE-TIME = 2 ;
        LAY = 1 ;
        VAR = 19 ;
        ROW = 299 ;
        COL = 459 ;
variables:
        int TFLAG(TSTEP, VAR, DATE-TIME) ;
                TFLAG:units = "<YYYYDDD,HHMMSS>" ;
                TFLAG:long_name = "TFLAG           " ;
                TFLAG:var_desc = "Timestep-valid flags:  (1) YYYYDDD or (2) HHMMSS                                " ;
        float EF_ISOP(TSTEP, LAY, ROW, COL) ;
                EF_ISOP:long_name = "EF_ISOP         " ;
                EF_ISOP:units = "nanomol/m^2/s   " ;
                EF_ISOP:var_desc = "" ;
        float EF_MBO(TSTEP, LAY, ROW, COL) ;
                EF_MBO:long_name = "EF_MBO          " ;
                EF_MBO:units = "nanomol/m^2/s   " ;
                EF_MBO:var_desc = "" ;
        float EF_MT_PINE(TSTEP, LAY, ROW, COL) ;
                EF_MT_PINE:long_name = "EF_MT_PINE      " ;
                EF_MT_PINE:units = "nanomol/m^2/s   " ;
                EF_MT_PINE:var_desc = "" ;
        float EF_MT_ACYC(TSTEP, LAY, ROW, COL) ;
                EF_MT_ACYC:long_name = "EF_MT_ACYC      " ;
                EF_MT_ACYC:units = "nanomol/m^2/s   " ;
                EF_MT_ACYC:var_desc = "" ;
        float EF_MT_CAMP(TSTEP, LAY, ROW, COL) ;
                EF_MT_CAMP:long_name = "EF_MT_CAMP      " ;
                EF_MT_CAMP:units = "nanomol/m^2/s   " ;
                EF_MT_CAMP:var_desc = "" ;
        float EF_MT_SABI(TSTEP, LAY, ROW, COL) ;
                EF_MT_SABI:long_name = "EF_MT_SABI      " ;
                EF_MT_SABI:units = "nanomol/m^2/s   " ;
                EF_MT_SABI:var_desc = "" ;
        float EF_MT_AROM(TSTEP, LAY, ROW, COL) ;
                EF_MT_AROM:long_name = "EF_MT_AROM      " ;
                EF_MT_AROM:units = "nanomol/m^2/s   " ;
                EF_MT_AROM:var_desc = "" ;
        float EF_NO(TSTEP, LAY, ROW, COL) ;
                EF_NO:long_name = "EF_NO           " ;
                EF_NO:units = "nanomol/m^2/s   " ;
                EF_NO:var_desc = "" ;
        float EF_SQT_HR(TSTEP, LAY, ROW, COL) ;
                EF_SQT_HR:long_name = "EF_SQT_HR       " ;
                EF_SQT_HR:units = "nanomol/m^2/s   " ;
                EF_SQT_HR:var_desc = "" ;
        float EF_SQT_LR(TSTEP, LAY, ROW, COL) ;
                EF_SQT_LR:long_name = "EF_SQT_LR       " ;
                EF_SQT_LR:units = "nanomol/m^2/s   " ;
                EF_SQT_LR:var_desc = "" ;
        float EF_MEOH(TSTEP, LAY, ROW, COL) ;
                EF_MEOH:long_name = "EF_MEOH         " ;
                EF_MEOH:units = "nanomol/m^2/s   " ;
                EF_MEOH:var_desc = "" ;
        float EF_ACTO(TSTEP, LAY, ROW, COL) ;
                EF_ACTO:long_name = "EF_ACTO         " ;
                EF_ACTO:units = "nanomol/m^2/s   " ;
                EF_ACTO:var_desc = "" ;
        float EF_ETOH(TSTEP, LAY, ROW, COL) ;
                EF_ETOH:long_name = "EF_ETOH         " ;
                EF_ETOH:units = "nanomol/m^2/s   " ;
                EF_ETOH:var_desc = "" ;
        float EF_ACID(TSTEP, LAY, ROW, COL) ;
                EF_ACID:long_name = "EF_ACID         " ;
                EF_ACID:units = "nanomol/m^2/s   " ;
                EF_ACID:var_desc = "" ;
        float EF_LVOC(TSTEP, LAY, ROW, COL) ;
                EF_LVOC:long_name = "EF_LVOC         " ;
                EF_LVOC:units = "nanomol/m^2/s   " ;
                EF_LVOC:var_desc = "" ;
        float EF_OXPROD(TSTEP, LAY, ROW, COL) ;
                EF_OXPROD:long_name = "EF_OXPROD       " ;
                EF_OXPROD:units = "nanomol/m^2/s   " ;
                EF_OXPROD:var_desc = "" ;
        float EF_STRESS(TSTEP, LAY, ROW, COL) ;
                EF_STRESS:long_name = "EF_STRESS       " ;
                EF_STRESS:units = "nanomol/m^2/s   " ;
                EF_STRESS:var_desc = "" ;
        float EF_OTHER(TSTEP, LAY, ROW, COL) ;
                EF_OTHER:long_name = "EF_OTHER        " ;
                EF_OTHER:units = "nanomol/m^2/s   " ;
                EF_OTHER:var_desc = "" ;
        float EF_CO(TSTEP, LAY, ROW, COL) ;
                EF_CO:long_name = "EF_CO           " ;
                EF_CO:units = "nanomol/m^2/s   " ;
                EF_CO:var_desc = "" ;

// global attributes:
                :IOAPI_VERSION = "ioapi-3.2: $Id: init3.F90 98 2018-04-05 14:35:07Z coats $                       " ;
                :EXEC_ID = "????????????????                                                                " ;
                :FTYPE = 1 ;
                :CDATE = 2022173 ;
                :CTIME = 142325 ;
                :WDATE = 2022173 ;
                :WTIME = 142325 ;
                :SDATE = 0 ;
                :STIME = 0 ;
                :TSTEP = 10000 ;
                :NTHIK = 1 ;
                :NCOLS = 459 ;
                :NROWS = 299 ;
                :NLAYS = 1 ;
                :NVARS = 19 ;
                :GDTYP = 2 ;
                :P_ALP = 33. ;
                :P_BET = 45. ;
                :P_GAM = -97. ;
                :XCENT = -97. ;
                :YCENT = 40. ;
                :XORIG = -2556000. ;
                :YORIG = -1728000. ;
                :XCELL = 12000. ;
                :YCELL = 12000. ;
                :VGTYP = 0 ;
                :VGTOP = 0.f ;
                :VGLVLS = 0.f, 0.f ;
                :GDNAM = "CONUS           " ;
                :UPNAM = "CNVT_EFS        " ;
                :VAR-LIST = "EF_ISOP         EF_MBO          EF_MT_PINE      EF_MT_ACYC      EF_MT_CAMP      EF_MT_SABI      EF_MT_AROM      EF_NO           EF_SQT_HR       EF_SQT_LR       EF_MEOH         EF_ACTO         EF_ETOH         EF_ACID         EF_LVOC         EF_OXPROD       EF_STRESS       EF_OTHER        EF_CO           " ;

If you also share an ncdump of your working CTS file it might help reveal any discrepancies in dimensions, etc. A screenshot from ncview might also be helpful to make sure everything looks reasonable.

On further inspection I see MEGAN’s python preprocessor that creates the EF inputs has been updated to version 3.21. I’m now testing its compatibility with CMAQ 5.4 and will resolve any conflicts today. Apologies for the inconvenience. The most recent EFP code should be compatible with CMAQ 5.4.

1 Like

Hi Willison,

Thank you for reply, here are my ncdump file and ncview screenshot of EFS and CTS file.
EF.txt (4.4 KB)
CTS.txt (1.4 KB)


It seems something wrong with my CTIME, WTIME and SDATE.

Yunqing

I switch to ioapi-3.2 to compile TXT2IOAPI and I can generate EFS, CTS, LDF file successfully, while ioapi-3.1 can not(I have to change some code in cnvt_cantyp.F, after that I got SDATE=-635). But I got another error running CMAQ-5.4:


CTM_LOG_000.v54_intel_d02_20211128.txt (94.4 KB)

This error was caused by turning on MIOG diag in CMAQ_Control_DESID.nml.
After I turning off, the model can run successfully.
Someone encounter similar error but solved by using another computer:

Thank you for documenting that sensitivity of TXT2IOAPI to IOAPI version. I am unable to reproduce the second error at this time, but I will continue investigating. Would you mind sharing your CMAQ_Control_DESID.nml?

sensitivity of TXT2IOAPI to IOAPI version

The most likely problem here is a mixed build: note that Version 3.2 changed some of the fundamental dimensioning parameters, so that object-files compiled with one version’s parameters cannot be mixed with the library from the other (and resulting in random, hard-to-diagnose crashes).
This has been extensively documented.

2 Likes

I modified my CMAQ_Control_DESID.nml like this:

&Desid_DiagVars
Desid_N_Diag_Rules = 1 ! Exact Number of Diagnostic Rules Below
Desid_Max_Diag_Streams=20 ! Maximum number of species variables on all rules
! below (do not count expansions)
Desid_Max_Diag_Spec = 80 ! Maximum number of species variables on all rules
! below (do not count expansions)
/

&Desid_Diag
! MEGAN emission diag
Desid_Diag_Streams_Nml(1,:)= ‘MIOG’
Desid_Diag_Fmt_Nml(1) = ‘COLSUM’ ! Options: 2D, 2DCOL, 3D
Desid_Diag_Spec_Nml(1,:slight_smile: = ‘ALL’

CMAQ_Control_DESID.nml.txt (14.0 KB)

你好,我遇到和你一样的报错,请问你这个问题解决了吗?是如何处理的。

Edit by moderator: Added Google-based English translation:

“Hello, I encountered the same error as yours, did you solve this problem? How is it handled.”