Issues Encountered While Running BCON

Dear Sir/Madam,

I am encountering a series of issues when running BCON and have been unable to find a solution. I am writing to seek your assistance. The specific details are as follows:

I have implemented a two-level nested domain with 54KM and 27KM resolutions. When running BCON for the second layer (27KM), I encountered the problem shown in the attached screenshot. I have searched for similar cases but failed to resolve it. Among them, I checked the CCTM_CONC file, which contains the NO2 variable.For your reference, I will attach my CCTM and BCON run scripts. Could you please help me identify the issue?

I sincerely appreciate your support and look forward to your guidance.

Thank you very much.


run_bcon.csh (5.7 KB)
run_cctm_Bench_2016_12SE1.csh (35.6 KB)

Hello @GuoXianhao ,

the error message shows that the time step BCON is trying to read from the 54 km domain CCTM_CONC file is not available in that file. This could be a scripting error in your BCON run script, but to help us diagnose it, you will need to post the full log file of the failed BCON run.

Dear Sir,
Thank you for your reply. Attached is the log file from my bcon run for your reference. I truly appreciate your assistance.
log file.txt (23.9 KB)

Thanks for posting the log file. This file shows that your met files have 1411 time steps but your CCTM_CONC file has only 25 time steps (which is typical for most CCTM run configurations) so BCON successfully writes out the 25 hours from 00:00 January 1 - 00:00 January 2 to /home/guoxh/output/CMAQ_data/bcon_data/201901YSUd02/BCON_v532_201901YSUd02_regrid_20190101 but then crashes when trying to go to 01:00 January 2 because that time step is not available in CCTM_CONC, as the error message shows.

To avoid running for more than the 25 hours available in the CCTM_CONC file for January 1, add the command setenv RUNLEN 250000 (or maybe setenv RUNLEN 240000, I don’t recall) to your run script, this should allow the program to complete without the crash at the end. Note that despite the crash at the end, the 25 hourly values written to /home/guoxh/output/CMAQ_data/bcon_data/201901YSUd02/BCON_v532_201901YSUd02_regrid_20190101 before the crash are perfectly fine.

To process January 2, change set DATE = "2019-01-01" to set DATE = "2019-01-02", or add some looping commands for the DATE variable (the script has a while loop for ju_curday and subsequent variables spin_year, spin_day, etc., but a) these variables are not used in any portions of the script and b) the loop isn’t closed).

Dear Sir,
Thank you for your suggestions. I’ve added a while loop to my second-layer BCON script, and now BCON runs smoothly with one output file per day. I’ve also made the same modifications to my all-layer ICON and BCON script. Thank you so much.

The BCON script needs the while loop over all days of your simulation. The ICON run script is typically only used for the first day of the spin-up period. All other initial condition files are from the previous day CGRID output.

Excerpt of the section setting up the use of initial condition files from the run_cctm_Bench_2018_12NE3.csh run script. Note, that NEW_START is equal to true for the first day of the simulation run, for all other days (else) the ICFILE is obtained from the previous day.

  #> Initial conditions
  if ($NEW_START == true || $NEW_START == TRUE ) then
     setenv ICFILE CCTM_ICON_${ICBC_LAB}_12NE3_20180701.nc
     setenv INIT_MEDC_1 notused
  else
     set ICpath = $OUTDIR
     setenv ICFILE CCTM_CGRID_${RUNID}_${YESTERDAY}.nc
     setenv INIT_MEDC_1 $ICpath/CCTM_MEDIA_CONC_${RUNID}_${YESTERDAY}.nc
  endif