Smk_merge does not run in NEI platform

Hi,all;

I am wondering if anyone has an experience with the issue that smk_merge program does not start in NEI modeling platform either v7.0 or v7.2. If so, can you give me some insight to solve it?

Thanks!

Yijia

Hi Yijia,
It appears that the python program that verifies the logs of the previous steps is not completing successfully, so therefore smkmerge is not being started. The work-around was to edit the run_settings.txt file to run smkmerge, as it seemed as the previous programs were successfully run.

Here is some detail information how to use and edit the “run_settings.txt”.

#   PART1: Elevpoint,Smkinven,Grdmat,Spcmat

#   PART2: Temporal REPCONFIG_TEMP (PART2)

#   PART3: Laypoint

#   PART4: Smkmerge, m3stat, Mrggrid, Movesmrg

# Column labels:

# Sector, Grid, Environment Variable Name, Part, Start Date, End Date, Value

all , 12US2, smkinven, PART1, 0, 0, N

all , 12US2, smkinven, PART2, 0, 0, N

all , 12US2, smkreport, PART1, 0, 0, N

all , 12US2, smkreport, PART2, 0, 0, N

all , 12US2, temporal, PART2, 0, 0, N

all , 12US2, laypoint, PART3, 0, 0, N

all , 12US2, smkmerge, PART4, 0, 0, N

all , 12US2, elevpoint, PART1, 0, 0, N

all , 12US2, elevpoint, PART1, 02/04/2014, 02/06/2014, Y

Setup:

In order for the run settings file to be used the RUNSET environment variable must be set to the exact path of the run settings file.

The run settings file uses 7 comma-delimited columns to define which SMOKE programs are run for a sector for specific dates:

sector, grid, program, part, start date, end date, value

Sector column (1) :

This column is used to define the sector that you wish to control. This should match the sector name defined in the SECTOR environment variable for the controlled run sector. An option for global control across all sectors is provided by setting this column to “all”.

Grid column (2):

The grid column is used to define the grid of the controlled sector. The grid name should match the REGION_ABBREV environment variable for the controlled grid. This setting is particularly useful when running multiple grids for the same sector, allowing the user to avoid having to rerun steps such as smkinven.

Program (3):

This column is used to define the SMOKE program to control. Options include smkinven, grdmat, spcmat, smkreport, temporal, smkmerge, mrggrid, movesmrg, m3xtract, m3stat, laypoint, layalloc, domain, smk2emis, emisfac, normbeis3, tmpbeis3 and elevpoint.

Part (4):

This is the part number that the program is run under in the SMOKE run scripts. This value can be RUN_PART1, RUN_PART2, RUN_PART3 or RUN_PART4.

In general, the programs included in each part include:

1: smkinven, grdmat, spcmat, normbeis3, metscan

2: temporal and tmpbeis3

3: elevpoint

4: smkmerge, mrggrid, movesmrg, laypoint, smk2emis, layalloc, m3stat, m3xtract, domain

smkreport is used in PART1 for inventory reports and PART2 for temporal reports.

Start Date (5):

This column is the initial date for the control in the format MM/DD/YYYY (ie. 4 Feb 2014 is 02/04/2014). This can be set to “0” to globally control all dates of a run. If either the start or end date is set to “0”, both dates must be set to “0”.

End Date (6):

This column is the last date for the control in the format MM/DD/YYYY (ie. 4 Feb 2014 is 02/04/2014). This can be set to “0” to globally control all dates of a run. If either the start or end date is set to “0”, both dates must be set to “0”.

Value (7):

This column flags whether to yes (Y), run the program in the selected sector for the selected dates, or no (N), do not run the program in the selected sector for the selected dates. The value may only be Y or N.

Use:

All sectors and programs within that sector as defined in the SMOKE run scripts will automatically run for all specified months and/or year by default. It is not required to explicitly set a program to “Y” for it to run. A sector-specific entry will always override a global “all” entry for a given grid, program, part and overlapping time range. A date will not run simply because it is set to “Y” in the run settings file, it must also be part of a month, quarter or year that was selected to run when calling the SMOKE run scripts.

In general PART1 section programs should only be turned off or on for all days in a scenario (columns 5 and 6 set to 0). SMOKE programs such as grdmat, spcmat and smkinven are usually only run once per year.

Controlling the run dates for temporal may cause unintended errors in processing because of the way that the temporal process is scripted. It is recommended that the run settings file only be used to turn temporal off (N) for all days in a scenario (columns 5 and 6 set to 0) and never be used to turn specific dates on (Y). Entire months may be run individually using the “-m [monthlist]” option for the run scripts.

Example 1:

Run smkmerge for all sectors using a 12US2 domain only for dates from 5 Mar 2014 through 10 Mar 2014:

all, 12US2, smkmerge, PART4, 0, 0, N

all, 12US2, smkmerge, PART4, 3/5/2014, 3/10/2014, Y

(Note: The order of the lines in the run settings file has the override setting come after the initial global setting. The program smkmerge is turned off for all dates in the domain before it is turned back on for the individual dates.)

Example 2:

Turn off (do not run) smkinven and spcmat for the 12EUS2 domain of the nonpt sector:

nonpt, 12EUS2, smkinven, PART1, 0, 0, N

nonpt, 12EUS2, spcmat, PART1, 0, 0, N

(Note: This type of setup may be useful if smkinven and spcmat were already run with the same inventory and ancillary files for another domain, such as 12US2.)

Example 3 :

Run laypoint for the 12US2 domain only for the ptegu sector and only from 12 Oct 2014 through 22 Nov 2014:

all, 12US2, laypoint, PART4, 0, 0, N

ptegu, 12US2, laypoint, PART4, 10/12/2014, 10/22/2014, Y

(Note: The sector-specific run setting will override the global run setting.)