Procedure to run the tutorial on a RedHat Linux Platform - 15 Mar 2006 The tutorial has been set up to run two days (July 2-3, 1999) for a 38 by 38, 32 kilometer (km) resolution horizontal domain with 6 layers and the same two days for a nested 46 X 42, 8 kilometer resolution horizontal domain, also with 6 layers. The scripts are set to compile the model with the cb4_ae4_aq mechanism. CCTM needs to be compiled only once for all tutorial runs, but both ICON and BCON need to be compiled twice; once for generating profile data and secondly, for generating nested data. The met data (from MCIP3) have been generated in multi-day files, but the CMAQ scripts produce 24 hour datasets. Although model-ready emissions and met data are provided, you will need to generate the photolysis tables for the chemistry transport model, unless you choose to use the reference data provided (in M3DATA_REF.tar.gz). To run the tutorial, follow this sequence: Follow steps (1) - (12) in the README file. For 32 km ... ICON: Initially, compile ICON with the script as given (bldit.icon.pgf). This will create an ICON executable which you then run using the run script (run.icon). You will create a profile initial concentration dataset for CCTM. BCON: Following the same procedure as with ICON will result in a profile boundary concentration dataset for running the CCTM at 32 km. These BC's do not vary in time. CCTM: After compiling CCTM with the script (bldit.cctm.pgf), you will run the executable with the run script (run.cctm), which should have the full pathnames for all the input datasets specified. By default the bldit script links in the libraries to run in parallel and run.cctm is set to run in a 8 processor Linux cluster. You will need to edit the "machines8" file to insert the network node names of the machines you wish to run on. Modifications are obvious to change the number of processors. Commenting out the ParOpt option in bldit.cctm.linux will result in an executable that does not link in the parallel libraries, and you can easily adjust the run script to run in serial mode, if desired. You will need to make a few changes to the run script for the second day's run. Assuming that you have used the run script as supplied for the first day's run, the following is a "patch" style difference in run.cctm for the second day at 32 km: 7c7 < # Usage: run.cctm >&! cctm_e2a.log & # --- > # Usage: run.cctm >&! cctm_e2b.log & # 22c22 < set APPL = e2a --- > set APPL = e2b 42c42 < set STDATE = 1999183 # beginning date --- > set STDATE = 1999184 # beginning date 106,107c106,107 < set EMISfile = e_32km_cb4.19990702.ncf < #set EMISfile = e_32km_cb4.19990703.ncf --- > #set EMISfile = e_32km_cb4.19990702.ncf > set EMISfile = e_32km_cb4.19990703.ncf 114,117c114,117 < #set GC_ICpath = $OUTDIR < #set GC_ICfile = CCTM_d1bCONC.d1b < set GC_ICpath = $M3DATA/icon < set GC_ICfile = ICON_cb4_M_32_99TUT02_profile --- > set GC_ICpath = $OUTDIR > set GC_ICfile = CCTM_e2aCONC.e2a > #set GC_ICpath = $M3DATA/icon > #set GC_ICfile = ICON_cb4_M_32_99TUT02_profile After running both days of the 32 km, you are ready to run the nested 8 km. ICON: You will need to recompile ICON to now use the first 32 km concentration file as input. The following is a "patch" style difference in the bldit.icon.pgf script: 42c42 < set APPL = e1a --- > set APPL = e3a 59,60c59,60 < #set ModInpt = ( module m3conc $Revision; ) < set ModInpt = ( module profile $Revision; ) --- > set ModInpt = ( module m3conc $Revision; ) > #set ModInpt = ( module profile $Revision; ) 62c62 < #set ModMech = ( module mc_noop $Revision; ) --- > set ModMech = ( module mc_noop $Revision; ) 64c64 < set ModMech = ( module radm2_to_cb4 $Revision; ) --- > #set ModMech = ( module radm2_to_cb4 $Revision; ) Likewise you will need to modify run.icon, both to point to the new executable and to use the "m3conc" switch rather than "profile." The following is a "patch" style difference in run.icon: 7c7 < # Usage: run.icon >&! icon_e2a.log & # --- > # Usage: run.icon >&! icon_e3a.log & # 23c23 < set CFG = e1a --- > set CFG = e3a 35c35 < setenv GRID_NAME M_32_99TUT02 --- > setenv GRID_NAME M_08_99TUT02 39c39 < setenv LAYER_FILE $M3DATA/mcip3/M_32_99NASH/METCRO3D_benchmark2005 --- > setenv LAYER_FILE $M3DATA/mcip3/M_08_99NASH/METCRO3D_benchmark2005 54,55c54,55 < set IC = profile # use default profile file < #set IC = m3conc # use CMAQ CTM concentration files (nested runs) --- > #set IC = profile # use default profile file > set IC = m3conc # use CMAQ CTM concentration files (nested runs) 115c115 < setenv CTM_CONC_1 $M3DATA/cctm/CCTM_d1bCONC.d1b --- > setenv CTM_CONC_1 $M3DATA/cctm/CCTM_e2aCONC.e2a BCON: You will also need to recompile BCON to now use the 32 km concentration file as input. The following is a "patch" style difference in the bldit.bcon.pgf script: 42c42 < set APPL = e1a --- > set APPL = e3a 57,58c57,58 < #set ModInpt = ( module m3conc $Revision; ) < set ModInpt = ( module profile $Revision; ) --- > set ModInpt = ( module m3conc $Revision; ) > #set ModInpt = ( module profile $Revision; ) 60c60 < #set ModMech = ( module mc_noop $Revision; ) --- > set ModMech = ( module mc_noop $Revision; ) 62c62 < set ModMech = ( module radm2_to_cb4 $Revision; ) --- > #set ModMech = ( module radm2_to_cb4 $Revision; ) The following are "patch" style differences in run.bcon, which must now be executed for every day of the nested, 8km runs. The first difference shows how to change the script from running the profile data to the first day of the nested data: 7c7 < # Usage: run.bcon >&! bcon_e2a.log & # --- > # Usage: run.bcon >&! bcon_e3a.log & # 23c23 < set CFG = e1a --- > set CFG = e3a 34c34 < setenv GRID_NAME M_32_99TUT02 --- > setenv GRID_NAME M_08_99TUT02 38c38 < setenv LAYER_FILE $M3DATA/mcip3/M_32_99NASH/METCRO3D_benchmark2005 --- > setenv LAYER_FILE $M3DATA/mcip3/M_08_99NASH/METCRO3D_benchmark2005 56,57c56,57 < set BC = profile # use default profile file < #set BC = m3conc # use CMAQ CTM concentration files (nested runs) --- > #set BC = profile # use default profile file > set BC = m3conc # use CMAQ CTM concentration files (nested runs) 119c119 < setenv CTM_CONC_1 $M3DATA/cctm/CCTM_d1bCONC.d1b --- > setenv CTM_CONC_1 $M3DATA/cctm/CCTM_e2aCONC.e2a The second difference shows how to change from the first day of the nest to running the second day: 7c7 < # Usage: run.bcon >&! bcon_e3a.log & # --- > # Usage: run.bcon >&! bcon_e3b.log & # 64,65c64,65 < set DATE = 1999183 # July 02, 1999 < # set DATE = 1999184 # July 03, 1999 --- > # set DATE = 1999183 # July 02, 1999 > set DATE = 1999184 # July 03, 1999 119c119 < setenv CTM_CONC_1 $M3DATA/cctm/CCTM_e2aCONC.e2a --- > setenv CTM_CONC_1 $M3DATA/cctm/CCTM_e2aCONC.e2b CCTM: Just modify the run script. The first difference shows how to modify the run script (run.cctm) from running the second day of the 32 km to the first day of the 8 km nest: 7c7 < # Usage: run.cctm >&! cctm_e2b.log & # --- > # Usage: run.cctm >&! cctm_e3a.log & # 22c22 < set APPL = e2b --- > set APPL = e3a 42c42 < set STDATE = 1999184 # beginning date --- > set STDATE = 1999183 # beginning date 92c92 < setenv GRID_NAME M_32_99TUT02 --- > setenv GRID_NAME M_08_99TUT02 103c103 < set OCEANfile = SSMASK_tut32 --- > set OCEANfile = SSMASK_tut08 107,108c107,108 < set EMISfile = e_32km_cb4.19990703.ncf < #set EMISfile = e_08km_cb4.19990702.ncf --- > #set EMISfile = e_32km_cb4.19990703.ncf > set EMISfile = e_08km_cb4.19990702.ncf 114,117c114,117 < set GC_ICpath = $OUTDIR < set GC_ICfile = CCTM_e2aCONC.e2a < #set GC_ICpath = $M3DATA/icon < #set GC_ICfile = ICON_cb4_M_32_99TUT02_profile --- > #set GC_ICpath = $OUTDIR > #set GC_ICfile = CCTM_e2aCONC.e2a > set GC_ICpath = $M3DATA/icon > set GC_ICfile = ICON_cb4_M_08_99TUT02_1999183 120c120 < set GC_BCfile = BCON_cb4_M_32_99TUT02_profile --- > set GC_BCfile = BCON_cb4_M_08_99TUT02_1999183 122c122 < set METpath = $M3DATA/mcip3/M_32_99NASH --- > set METpath = $M3DATA/mcip3/M_08_99NASH Finally, the differences from the first to the second day of the 8 km runs: 7c7 < # Usage: run.cctm >&! cctm_e3a.log & # --- > # Usage: run.cctm >&! cctm_e3b.log & # 22c22 < set APPL = e3a --- > set APPL = e3b 42c42 < set STDATE = 1999183 # beginning date --- > set STDATE = 1999184 # beginning date 108,109c108,109 < set EMISfile = e_08km_cb4.19990702.ncf < #set EMISfile = e_08km_cb4.19990703.ncf --- > #set EMISfile = e_08km_cb4.19990702.ncf > set EMISfile = e_08km_cb4.19990703.ncf 114,117c114,117 < #set GC_ICpath = $OUTDIR < #set GC_ICfile = CCTM_e2aCONC.e2a < set GC_ICpath = $M3DATA/icon < set GC_ICfile = ICON_cb4_M_08_99TUT02_1999183 --- > set GC_ICpath = $OUTDIR > set GC_ICfile = CCTM_e2aCONC.e3a > #set GC_ICpath = $M3DATA/icon > #set GC_ICfile = ICON_cb4_M_08_99TUT02_1999183 120c120 < set GC_BCfile = BCON_cb4_M_08_99TUT02_1999183 --- > set GC_BCfile = BCON_cb4_M_08_99TUT02_1999184 Note: It is easy to change the scripts by using the Unix "patch" utility. Just cut the indented section listed above for any of the scripts and paste into a file, say "mod." Then type "patch