CMAQ BCON running error

Hi, I’m running CMAQ v5.4.0.3. The ICON/BCON running for ‘profile’ type was good, but it went wrong with ‘regrid’ mode. the error message as follows:

     "MET_CRO_3D_CRS" opened as OLD:READ-ONLY
     File name "/envdata/atmos/CMAQ/INPUT/CMAQv5.4.0.3_2020_08_MY/met/mcipv54/MYd02/METCRO3D_200802.nc"
     File type GRDDED3
     Execution ID "mcip"
     Grid name "MYd02_CROSS"
     Dimensions: 109 rows, 112 cols, 34 lays, 16 vbles
     NetCDF ID:    196608  opened as READONLY
     Starting date and time  2020215:000000 (0:00:00   Aug. 2, 2020)
     Timestep                          010000 (1:00:00 hh:mm:ss)
     Maximum current record number        25
          Differences found between files CTM_CONC_1       and MET_CRO_3D_CRS  :
          CTM_CONC_1 P_GAM =  1.01965E+02   MET_CRO_3D_CRS P_GAM =  1.01965E+02
          CTM_CONC_1 XCENT =  1.01965E+02   MET_CRO_3D_CRS XCENT =  1.01965E+02

     *** ERROR ABORT in subroutine CK_MET_FL
     MET_CRO_3D_CRS file inconsistent: stopping

Is there anything that could be done to overcome this?
Thanks in advance.

As has been described extensively elsewhere, from an numerical analysis point of view, the file-consistency checks in the BCON m3_ck_* routines are completely out to lunch; the subroutine bodies should be replaced by something that uses properly-robust consistency checking, i.e., something like the following:

cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c  Get header data for CTM file 1 and create a list of species in the
c  CTM files
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
      IF ( .NOT. DESC3 ( CTM_FL_NAME( 1 ) ) ) THEN
         MSG = 'Could not read DESC of  ' // CTM_FL_NAME( 1 ) 
     &         // ' file'
         CALL M3EXIT( PNAME, 0, 0, MSG, .TRUE. )
      END IF

      FTYPE1 = FTYPE3D
      NCOLS1 = NCOLS3D
      NROWS1 = NROWS3D
      NLAYS1 = NLAYS3D
      NTHIK1 = NTHIK3D
      GDTYP1 = GDTYP3D
      P_ALP1 = P_ALP3D
      P_BET1 = P_BET3D
      P_GAM1 = P_GAM3D
      XORIG1 = XORIG3D
      YORIG1 = YORIG3D
      XCELL1 = XCELL3D
      YCELL1 = YCELL3D
      XCENT1 = XCENT3D
      YCENT1 = YCENT3D
      VGTYP1 = VGTYP3D
      VGTOP1 = VGTOP3D
      VGLVS1( 1:NLAYS1 ) = VGLVS3D( 1:NLAYS1 )
     
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c  Open the MET_CRO_3D_CRS file
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
      IF ( .NOT. OPEN3( MET_CRO_3D_CRS, FSREAD3, PNAME ) ) THEN
         MSG = 'Could not open ' // MET_CRO_3D_CRS // ' file'
         CALL M3EXIT ( PNAME, 0, 0, MSG, XSTAT1 )
      ELSE IF ( .NOT. DESC3( MET_CRO_3D_CRS ) ) THEN
         MSG = 'Could not read DESC of file ' // MET_CRO_3D_CRS 
         CALL M3EXIT ( PNAME, 0, 0, MSG, XSTAT1 )      
      ELSE IF ( .NOT.FILCHK3( MET_CRO_3D_CRS,  GRDDED3,
     &                        NCOLS1, NROWS1, NLAYS1, NTHIK3D ) ) THEN
          MSG   = 'Inconsistent dimensions  for ' // MET_CRO_3D_CRS
          CALL M3EXIT ( PNAME, 0, 0, MSG, XSTAT1 )
      ELSE IF ( .NOT.GRDCHK3( MET_CRO_3D_CRS,
     &                      P_ALP1, P_BET1, P_GAM1, XCENT1, YCENT1,
     &                      XORIG1, YORIG1, XCELL1, YCELL1,
     &                      NLAYS1, VGTYP1, VGTOP1, VGLVS1 ) ) THEN
          MSG   = 'Inconsistent coord/grid  for ' // MET_CRO_3D_CRS
          CALL M3EXIT ( PNAME, 0, 0, MSG, XSTAT1 )
      END IF
 
      JDATE = SDATE
      JTIME = STIME

      RETURN

[By the way, the use of I/O API routine M3ERR is improper; that routine was deprecated, replaced by routines M3WARN and M3EXIT for I/O API Prototype 0.5 in July 1992.]

Hi, cjcoats. Thank you for your answer. According to your meaning, do I need to modify the m3_ck_* program according to the example you provided and then recompile bcon?

Exactly.

[more characters to make this web-forum software happy]

And as noted by @cjcoats , this topic has come up repeatedly before, most recently in this thread

The solution is to make code updates along the lines recommended by @cjcoats or - if you’re really sure that you’re dealing with consistent grids - comment out the current error checking [not recommended for general use].