Skip to content

Changelog

v1.2.2 โ€” 2026-10-19

Re-release of v1.2.1 with the version string actually bumped in pyproject.toml and seem_geo/__init__.py (previous v1.2.1 tag accidentally shipped with version = "1.1.0", causing silent install regressions). All features below are the same as the intended v1.2.1.

๐Ÿ†• New Features

  1. Configurable Settings system (seem_geo.settings)
  2. Persistent config at ~/.seem_geo_settings.json
  3. 6-tab Tkinter dialog: Image / Inversion / ERT Filters / MASW / QC / Confirmation
  4. Public getters: get_inversion(), get_filters(), get_masw(), get_qc(), get_confirmation(), get_image()
  5. Auto-applies matplotlib rcParams (DPI, colormap, figure size) at import
  6. show_dialog(parent) opens full editor
  7. show_data_preview(parent, project, module) โ€” pre-run editable confirmation
  8. format_plot_title() โ€” QC-aware title helper

  9. Runtime core patches (seem_geo.core_patches)

  10. Monkey-patches process_ert_station, batch_ert, process_masw_station to read user settings
  11. Safe-fallback: if a parameter isn't supported, calls original function unchanged
  12. MASW post-filters picks (smoothness window, Vs bounds, max jump %)
  13. ERT compare mode: runs 3 inversion methods into _smoothness, _robust, _marquardt subfolders

  14. Pro GUI v4 (seem_geo.gui.pro_main_window)

  15. Mode selector: ERT only / MASW only / Both
  16. 3-column dashboard (ERT red / MASW blue / Shared purple)
  17. New-project wizard: Template / Empty / Import CSV
  18. Side-by-side viewer: Compare ERT (pseudo + inverted), Compare MASW (dispersion + Vs)
  19. Dark/Light theme toggle
  20. Settings menu (Ctrl+,) opens the 6-tab dialog
  21. Compare Inversions and Toggle QC in PDF buttons
  22. Launch: python -c "from seem_geo.gui.pro_main_window import main; main()"

  23. High-resolution image patch (seem_geo.hires)

  24. Standalone module forcing 300 DPI on all plots
  25. Alternative to settings-based DPI control

๐Ÿ”ง Fixes

  • Version string synchronized: pyproject.toml, __init__.py both now at 1.2.1
  • Previous version drift between pyproject (1.1.0) and git tag (v1.2.1) caused silent install regressions
  • CI smoke test uses init <DIR> --name "..." (fixed from broken init --output)

v1.1.0 โ€” 2026-10-17

๐Ÿ†• New Features (all 6 requested)

  1. Interactive Dispersion Picker (seem_geo.gui.dispersion_picker)
  2. Standalone Tkinter window
  3. Click left-mouse to add picks on the f-v image, right-click to remove
  4. Auto-pick button snaps to peak at each frequency
  5. Live Vs(z) preview โ€” updates as you add/remove picks
  6. Vs30 + Site Class displayed in real time
  7. Save/load dispersion curves as CSV
  8. Launch: seem-geo picker --shot MW-15_shot.csv

  9. Industry-Standard File Importers (seem_geo.io.importers)

  10. ERT: Res2DInv (.dat), AGI SuperSting (.stg), ABEM-Lund (.ohm)
  11. MASW: SurfSeis (.dc), SEG-2 (.sg2), SEG-Y (.sgy)
  12. Auto-detects format by extension/content and converts to SEEM CSV
  13. CLI: seem-geo import --kind ert --input my_data.stg --output ERT-15.csv

  14. Google Earth KMZ Export (seem_geo.io.kmz_exporter)

  15. 12 borehole placemarks with full attribute popups (Vs30, Site Class, UCS, RQD, ฯ_mean)
  16. 24 polylines showing ERT (100m blue) + MASW (46m orange) spreads
  17. Group-coloured icons (G1 green, G2 red, G3 yellow, G5 purple)
  18. CLI: seem-geo kmz --project my.seemproj

  19. Vs30 Interpolated Map + Bar Chart (seem_geo.reports.vs30_map)

  20. RBF interpolation of Vs30 across the corridor
  21. Color-coded by local-code Site Class (Aโ€“E)
  22. Bar chart ranking stations by Vs30
  23. CLI: seem-geo vs30-map --project my.seemproj

  24. Windows Standalone .exe Builder (build_windows.py)

  25. PyInstaller-based packaging
  26. Produces dist/SEEM_Geo.exe (single-file, ~150MB) + dist/SEEM_Geo/ folder build
  27. End-users don't need Python installed
  28. CLI: seem-geo build-exe

  29. Realistic Field Data Generator (seem_geo.data.realistic_field_generator)

  30. Physically-consistent synthetic data for all 12 collocated sites
  31. Layer-based Vs and ฯ ranges matching real geology:
  32. G3 Sedimentary: Vs 170-380, ฯ 55-240 ฮฉยทm
  33. G5 Residual: Vs 140-400, ฯ 40-220 ฮฉยทm
  34. G1 Schist: Vs 160-1100, ฯ 60-2500 ฮฉยทm
  35. G2 Granite: Vs 180-1200, ฯ 90-5500 ฮฉยทm
  36. CLI: seem-geo gen-data --out field_data/

๐Ÿ”ง Infrastructure Changes

  • Pipeline now includes 7 stages (was 5): + Vs30 map + KMZ
  • CLI updated with 6 new commands: gen-data, import, vs30-map, kmz, picker, build-exe
  • New package subdirectories: seem_geo/data/, seem_geo/io/
  • All stages testable in isolation or as part of full pipeline

โœ… Test Results (end-to-end on 12 synthetic sites)

Stage Status Output
1. ERT processing โœ“ 12 inverted sections, mean RMS 0.034
2. MASW processing โœ“ 12 Vs(z) profiles, Vs30 282โ€“648 m/s
3. Correlations โœ“ 4 fits (G1 min_df, G3+G5 ok, G1+G3 ok)
4. Fence diagrams โœ“ ERT fence + MASW fence + resistivity ribbon
5. Vs30 map โœ“ Interpolated raster + bar chart
6. KMZ export โœ“ 36 placemarks (12 BH + 12 ERT + 12 MASW)
7. PDF report โœ“ 58-page annex

๐Ÿ“Š Site Classification Results (sample run)

Expected pattern โ€” confirmed: - G5/G3 soil-dominated sites โ†’ Site Class D (Vs30 282โ€“323 m/s) - G1/G2 rock sites โ†’ Site Class C (Vs30 602โ€“648 m/s)

๐ŸŽจ Design & Documentation

  • 4-tier colour scheme (G1 green, G2 red, G3 yellow, G5 purple) consistent across all outputs (PNG, PDF, KMZ)
  • CHANGELOG + updated README with CLI reference for all 15 commands
  • Interactive dispersion picker screenshots in docs/

v1.0.0 โ€” 2026-10-17

Initial release โ€” core pipeline (ERT, MASW, correlations, fence, PDF).