Program can't load CGRID file properly

Hello;

I have an issue with running CCTM. It can;’ tread or load the CGRID correctly. I tried different ICFILE or INIT_GASC_1 but they all did not work well. The error is shown below.

 >>--->> WARNING in subroutine RDTFLAG
 Time step error for file:  INIT_GASC_1
 M3WARN:  DTBUF 0:00:00   Jan. 1, 2014  (2014001:000000)
 
 >>--->> WARNING in subroutine XTRACT3
 Time step not available for file:  INIT_GASC_1
 M3WARN:  DTBUF 0:00:00   Jan. 1, 2014  (2014001:000000)


 *** ERROR ABORT in subroutine LOAD_CGRID on PE 000      
 Could not read NO2 from INIT_GASC_1

And the settings are here.

#> Initial conditions
if ($NEW_START == true || $NEW_START == TRUE ) then
setenv ICFILE ts20140101.bpch.ICON.nc
#setenv ICFILE ICON_v52_profile
setenv INITIAL_RUN Y #related to restart soil information file
rm -rf LOGDIR/CTM_LOG*{RUNID}* # Remove all Log Files Since this is a new start
mkdir -p $OUTDIR

Would you help me look at it? Appreciate your help!

Yijia

Please try to use the following command to check that the ICFILE you are using is complete.
ncdump -h ts20140101.bpch.ICON.nc | grep NO2
You should see NO2 listed as follows:

float NO2(TSTEP, LAY, ROW, COL) ;
	NO2:long_name = "NO2             " ;
	NO2:units = "ppmV            " ;
	NO2:coordinates = "lon lat" ;
	NO2:var_desc = "Variable NO2                                                                    " ;
	:VAR-LIST = "AIRDEN          NO2             NO              O3   ...

`

Hi Yijia,

I wonder how did you generate the IC file. According to the ncdump information you have provided, it does not look like a "normal" IOAPI file.

Cheers,
David

Hi Yijia and David,

The *bpch.ICON.nc" file may need to be processed to put it in the format used for the initial condition for CMAQ. Until we determine how to do this, you could try using m3tshift (https://www.cmascenter.org/ioapi/documentation/all_versions/html/M3TSHIFT.html) to change the date on an ICON file for June 01, 2014 that is available on the google drive:
https://drive.google.com/drive/u/1/folders/1_6jVTUxAq9pBAZY-W4og6kxxEuqK4NNs

Liz

Hi Yijia,

It looks like you need to use the geos2cmaq program available here:


This can be used to convert the geochem output file into a CMAQ ICON input file.

Liz

Hello,

I am trying to run WRF-CMAQ and having a similar problem as the OP (not reading ICON file correctly). See my error message below:

>>--->> WARNING in subroutine XTRACT3
     Error in row-bounds VNAME for file INIT_GASC_1      variable NO2
     M3WARN:  DTBUF 0:00:00   July 1, 2011  (2011182:000000)


     *** ERROR ABORT in subroutine LOAD_CGRID on PE 000
     Could not read NO2 from INIT_GASC_1
     Date and time 0:00:00   July 1, 2011   (2011182:000000)

I am using the SE52BENCH single day ICBC file.

set ICFILE     = ICON_20110630_bench.nc
setenv INIT_GASC_1 $ICpath/$ICFILE

The ICFILE is a readable netcdf… ncdump shows values for NO2 on date 2011182 (July 1, 2011).

I’m a little lost as to what the issue is. Thanks for any hints!

-mj

What does “readaable netCDF” mean – where did this file come from?

Note (from the I/O API Home Page, https://www.cmascenter.org/ioapi/documentation/all_versions/html/index.html),
The Models-3 I/O API is A programming interface, not a data format !!

I/O API files are not synonymous with “netCDF files” !!
Instead, netCDF is one of four (and a half) distinct lower layers on which the data and metadata structures for I/O API files are currently available…

Carlie J. Coats, Jr., Ph.D. cjcoats@email.unc.edu
Senior Software Engineer I/O API Author/Maintainer
Center for Environmental Modeling for Policy Development,
UNC Institute for the Environment www.ie.unc.edu
100 Europa Dr., Suite 490 Rm 4051 / Campus Box 1105 919.843.5951
Chapel Hill, NC 27599-1105 Fax 919.966.9920

Hello Dr. Coats,

The netCDF came from the CMAQ provided single-day test data SE52BENCH. By “readable” I mean ncdump reads the file fine and outputs what looks like reasonable values for the NO2 variable.

-mj

There should have been messages of the form:
Lower bound: …
Upper bound: …
Actual number of rows:…
that indicate the lower and upper row arguments for XTRACT3, followed by the actual file’s grid row-dimension. XTRACT3 claims that the arguments don’t fit inside the file. Compare the file’s grid dimensions with the CMAQ grid dimensions; possibly you have an ICFILE for the wrong test case?

[BTW, you haven’t mucked around with I/O API parameters-file PARMS3.EXT, have you?]

Thanks for your continued attention, Dr. Coats! I haven’t done any mucking around, no :slight_smile:

Here’s more of the tail end of the rsl.out.0000 log file for the wrf-cmaq run…

109  VSVPO2             1.0000
 110  VSVPO3             1.0000
 111  VIVPO1             1.0000
 112  VLVOO1             1.0000
 113  VLVOO2             1.0000
 114  VSVOO1             1.0000
 115  VSVOO2             1.0000
 116  VSVOO3             1.0000
 117  PCVOC              1.0000
 118  PCSOARXN           1.0000
 No IC found for species FORM_PRIMARY in INIT_GASC_1; set to  1.00E-30
 No IC found for species ALD2_PRIMARY in INIT_GASC_1; set to  1.00E-30
 No IC found for species BUTADIENE13 in INIT_GASC_1; set to  1.00E-30
 No IC found for species ACROLEIN in INIT_GASC_1; set to  1.00E-30
 No IC found for species ACRO_PRIMARY in INIT_GASC_1; set to  1.00E-30
 No IC found for species TOLU in INIT_GASC_1; set to  1.00E-30
 No IC found for species HG in INIT_GASC_1; set to  1.00E-30
 No IC found for species HGIIAER in INIT_GASC_1; set to  1.00E-30
 No IC found for species HGIIGAS in INIT_GASC_1; set to  1.00E-30
 Lower bound:                11907
 Upper bound:                11986
 Actual number of layers:       80

 >>--->> WARNING in subroutine XTRACT3
 Error in row-bounds VNAME for file INIT_GASC_1      variable NO2
 M3WARN:  DTBUF 0:00:00   July 1, 2011  (2011182:000000)


 *** ERROR ABORT in subroutine LOAD_CGRID on PE 000
 Could not read NO2 from INIT_GASC_1
 Date and time 0:00:00   July 1, 2011   (2011182:000000)


Lower bound: 11907
Upper bound: 11986

This is clearly a problem coming from the subroutine LOAD_CGRID that is calling XTRACT3. With 80 rows in the model-grid, both of these should be between 1 and 80.

So this is a model-problem somehow…

– Carlie

Thanks for the hints.

Do you mean a systemic problem in the XTRACT3 module or a problem with my model setup?

either model-setup or model-implementation

Thank you!

I sorted this issue by examining and modifying the following parameters in the wrf-cmaq run script…

setenv CMAQ_COL_DIM
setenv CMAQ_ROW_DIM
setenv TWOWAY_DELTA_X
setenv TWOWAY_DELTA_Y