Skip to content

SMOKE v5.3

Latest

Choose a tag to compare

@hnqtran hnqtran released this 26 Jun 17:59

Updated SMOKE Core Programs

Smkinven

  • Fix issue when processing hourly inventory data (PTHOUR) in leap year where emissions records are missing for the first few hours in the following month (e.g., processing PTHOUR emissions for January have missing data for first few hours in February) (implemented to src/smkinven/rdff10pd.f)
  • Fix issue in handling of daily emissions of ptfire group where there is no fire at the end of the year (December 31st), resulted in incomplete data records for December 31st and caused crash in subsequent subroutine such as Elevepoint (implemented to src/smkinven/rdff10pd.f)
  • Fix issue where Smkinven may silently skip emission file in *.lst file if there is 'LIST' string (case-sensitive) in the file path (e.g., 12LISTOS).

Temporal

  • Improve Temporal to support non-pollutant-specific application of hourly met-based/Gentpro profiles in the temporal cross-reference (implemented to src/temporal/proctpro.f)

Movemerg:

  • Fix issue where MOVESMRG would crash when MTMP_OUTPUT_YN = Y and USE_SPCMAT_SPC_YN = N (or undefined) (implemented to src/movesmrg/movesmrg.f)

Smkreport

  • Fix issue where Smkreport produces an empty report If SMOKE is configured to output emissions files with 24 timesteps instead of the standard 25 timesteps, or if the REPCONFIG doesn't specify some kind of grouping statement, e.g. BY COUNTRY or BY SCC (implemented to src/emqa/asgnbins.f and src/emqa/qarepin.f)
  • Improve Smkreport to make use of environment variable SMOKE_SOURCE instead of relying on specification in REPCONFIG. This improvement allows the same REPCONFIG to be used for both area sectors and point sectors. The SMK_SOURCE environment variable takes absolute priority over the SMK_SOURCE instruction in the REPCONFIG file (implemented to src/emqa/prclinrc.f)

Utility

  • Implement option in utility GEOFAC to use fractional mask values as scale factors for all SPECFACS species instead of using species-specific scale factors defined in SPECFACS file (implemented to src/emutil/geofac.f)

Auxiliary libraries

  • Improve SMOKE's handling of garbage characters in FF10 emission files (as a result from using Microsoft Excel to prepare emission files, for example) (implemented to src/lib/getformt.f)
  • Provide more insight on how cell origin was offset that triggers the message error in CHKGRID (implemented to src/lib/chkgrid.f)

Other Updates

  • Utilize I/O API M3UTILIO module throughout SMOKE programs where applicable
  • Update the SMOKE Example Case using data from EPA's 2022v2 Emissions Modeling Platform
  • Update User Guide (v5.3) to fix broken and outdated URLs

Compilation Details

The executables in the SMOKEv5.3.June2026.Linux2_x86_64.zip package were compiled using the GCC/G-Fortran compiler version 14.3.0 on Rocky Linux 8 (RHEL 8) (Tested on Rocky Linux 9, Ubuntu 22.04 LST and Red Hat Enterprise Linux 9.7)

Library dependencies used for the I/O API Version 3.2:

  • hdf5-1.14.5
  • netcdf-c-4.9.2
  • netcdf-fortran-4.6.1