SMOKEv4.5 error in smkmerge during ptday inline wildfire

Hello,

I am processing 2017 ptinv and ptday fire inventory files as inline. Each subroutine processes completely with no error until I hit smkmerge where I received the following error:

forrtl: severe (66): output statement overflows record, unit -5, file Internal Formatted Write
Image PC Routine Line Source
smkmerge 0000000000902FB6 Unknown Unknown Unknown
smkmerge 000000000093F6A9 Unknown Unknown Unknown
smkmerge 0000000000434E2F wrmrgrep_IP_creat 663 wrmrgrep.f
smkmerge 0000000000435DC0 wrmrgrep_IP_write 752 wrmrgrep.f
smkmerge 0000000000433294 wrmrgrep_ 404 wrmrgrep.f
smkmerge 0000000000409B76 MAIN__ 990 smkmerge.f

This results in only one lat/long record being recorded in the stack_parameter file, instead all the source IDs. Have you seen this error before? Any tips?

Any help would be appreciated.
Melissa Venecek, PhD

Hi Melissa, this error has been occurred when certain days of fire daily emissions does not exist in your report. You can set these following flags for Smkmerge to “N”. You should be able to bypass this issue:

setenv MRG_REPCNY_YN N # Y produces a report of emission totals by county
setenv MRG_REPSTA_YN N # Y produces a report of emission totals by state

Hi BH,

Thanks so much for the help! That fixed the error I was getting.

However, the stack group file generated only has one ISTACK/LAT/LONG etc when there should be multiple fires (IDs) for that day. As an example I see:

ISTACK =
1 ;

LATITUDE =
37.509 ;

LONGITUDE =
-122 ;

STKDM =
-9.999e+36 ;

STKHT =
-9.999e+36 ;

STKTK =
-9.999e+36 ;

STKVE =
-9.999e+36 ;
STKFLW =
0 ;

STKCNT =
1 ;

ROW =
156 ;

COL =
139 ;

XLOCA =
-128991.5 ;

YLOCA =
56423.91 ;
IFIP =
6001 ;

LMAJOR =
1 ;

LPING =
0 ;

ACRESBURNED =
0 ;

Do you have any suggestions why this might be happening? I tried running where I initially did not import that daily files, and then ran with the setenv DAY_SPECIFIC_YN flag turned on, but still no luck. How do you expect the stack file to look for CMAQ processing?

Again, your help is much appreciated.
Melissa

I would suggest for you to review PELEVCONFIG input file for Elevpoint program. The grouping and selecting of elevated sources are done through Elevpoint using PELVCONFIG input file. I would start from there and then check your fire stack parameters in your Inventory to make sure they are processed correctly.

Hi BH,

Thanks for the response – I meant to write back, it was indeed an error in the PELVCONFIG file.

Another question for you, however. When processing the daily fire inventory, do they have to be in ORL format? While I fixed my PELVCONFIG error, I am hitting another issue where the annual daily average is being written to the output instead of the daily file total, even though I have DAY_SPECIFIC_YN Y. In the temporal log it notes a warning that I am missing BEGHOUR and ENDHOUR, which are ORL variables instead of the FF10 daily inventory I am using. Right now I am in the process of changing the FF10 format to ORL.

Do you have any other insights on things I should try to ensure the actual daily value is used instead of the annual day average?

Thanks again,

Melissa

Hi BH,

When I converted to ORL I am now finding an error in temporal:

ERROR: Missing or negative emission value(s) in inventory for “DY_TOG”.

 *** ERROR ABORT in subroutine TEMPORAL
 Problem with input data.

I checked the values written to PDAY and some of the rows are negative numbers. For example, when I dump variable TOG out I see:

-9.999e+36,
-9.999e+36,
-9.999e+36,
-9.999e+36,
-9.999e+36,
0.002553,
0.172332,
1.186992,
0.172332,
0.017232,
4e-05,
-9.999e+36,
-9.999e+36,
-9.999e+36,
-9.999e+36,
-9.999e+36 ;

Is there something that I need to add to the daily inventory file such as a dummy date even if that FIREID did not occur on that day?

Any help would be greatly appreciated.

Melissa

I am not sure how you develop your fire inventory but in general, SMOKE expects the fire sector in daily total emissions. For fire inventory, you also need to provide the beginning and end hour of fire for SMOKE to properly allocate daily total into each hour step. You can find more details from SMOKE user’s document.

https://www.cmascenter.org/smoke/documentation/4.7/html/ch04s04s17.html

However, if you already have computed Heal Flux (HFLUX) in your inventory, then you do not need to ACRESBURNED, fuel loading and heat content as daily inventory variables.