When reading the SMOKE v4.5 manual, it says in sections 18.104.22.168 and 22.214.171.124.4 that hourly fire emissions with pre-computed plume rise is an option (we used to run this years ago). However, when I go to the section that is linked for PTHOUR (8.2.7), there is no mention of the input file format for hourly fire emissions. I remember needing PTOP, PBOT, and LAY1F … but none of these variables are mentioned in the manual. Is hourly fire emissions still an option in SMOKE? If so, should I just refer to an old SMOKE manual (e.g. v2.7) to set it up?
Great question! Well, as of SMOKE v3.0, we have decided not to support any fixed format input files due to the comparability with EPA’s EMF (Emissions Modeling Framwork). EMF is based on SQL database which prefers flat file formats. However, any version of SMOKE can still process that EMS-95 formats. Haven’t been tested for a while so you may run into an issue or two while processing EMS-95 with the latest version of SMOKE like v4.5 or v4.6 (coming out this week).
Since there are still many users using this EMS-95 format for precomputed fire inventory, I will put the EMS-95 manual section back into PTHOUR section in Chapter 8.
Please note that this EMS-95 is the only fixed format still supported in the latest version of SMOKE. Any IDA annual inventory format is no longer supported as of SMOKE v3.0. If you have an IDA annual inventory for this EMS-95 fire inventory, unfortunately you should go back to SMOKE v2.7.
Please give a run of EMS-95 (PTOP, PBOT, LAY1F) with the latest SMOKE v4.5 and let me know how it goes.
I’ve been trying to test the hourly fire emissions format but having trouble since it isn’t clear to me which settings need to be switched on. I am using SMOKE-Ready files from BlueSky (with pthour.ems95 and ptinv.ida) After those files are read in successfully, I am getting the warning from smkinven:
WARNING: Skipping pollutant "PTOP" at line 6 - not in annual inventory. WARNING: Skipping pollutant "PBOT" at line 7 - not in annual inventory. WARNING: Skipping pollutant "LAY1F" at line 8 - not in annual inventory.
but if I switch the option IMPORT_AVEINV_YN to “N”, then smkinven stops almost immediately and says it can’t find the PNTS file. Is it necessary to provide annual averages of PTOP, PBOT, and LAY1F for smkinven to run properly?
Currently the related switch configuration I have is:
setenv FILL_ANNUAL Y
setenv HOURLY_TO_DAILY N
setenv HOURLY_TO_PROFILE N
setenv IMPORT_AVEINV_YN Y
setenv EXPLICIT_PLUMES_YN Y
setenv FIRE_PLUME_YN Y
setenv HOUR_PLUMEDATA_YN Y
setenv HOURLY_FIRE_YN N
Multiple Program Controls>
setenv DAY_SPECIFIC_YN N
setenv EXPLICIT_PLUME_YN N
setenv HOUR_SPECIFIC_YN Y
setenv SMK_PING_METHOD 0
Any ideas or help you can provide would be greatly appreciated.
You need to add those PTOP, PBOT, and LAY1F into the INVTABLE input file and make sure you keep them for your processing.
I already had those in the INVTABLE. However, the BlueSky generated ida file does not have PTOP, PBOT, and LAY1F listed in the DATA portion of the header. Putting those values in the header allowed smkinven to process the variables. I also modified the switches as follows:
setenv FILL_ANNUAL N
setenv EXPLICIT_PLUMES_YN N
setenv FIRE_PLUME_YN N
Multiple Program Controls>
setenv EXPLICIT_PLUME_YN Y
setenv SMK_AVEDAY_YN N
When testing this setup, there were errors from laypoint complaining that LAY1F cannot be zero. I changed all the zero LAY1F values to 0.0001. Then laypoint complains that PTOP cannot be lower than PBOT. I think this is from instances when PTOP = PBOT because after removing them, laypoint is successful. So, I was able to generate a final emissions file and it appers that the hourly plume information is being used. The BlueSky generated file has “GMT” in the date/time stamp so I had to change this to my local time zone for emissions to go in the proper hour. But now I think it is all working properly!
I wanted to add a couple more details here, regarding this effort.
- BH has confirmed that the units for PTOP and PBOT should be meters (and noted accordingly in the INVTABLE).
- Updating the time zone is not necessary (SMOKE can handle either GMT or local time)
- BH has noted that the format for the fire EMS-95 file is not discussed in the SMOKE manual because EMS-95 was originally designed for point sources, not fire emissions.
- The files created by BlueSky as “SMOKE-ready output” are in the correct EMS-95 format.
Thanks for recording this. Farren!