Skip to content

SpectraMatcher is a fast, GUI-based, interactive Python program for comparing computed and experimental vibronic spectra. It features real-time spectral adjustment, automated peak assignment, type-specific anharmonic corrections, and export to publication-ready formats. Supports Gaussian log files and plain text or spreadsheet experimental spectra.

License

Notifications You must be signed in to change notification settings

giogina/SpectraMatcher

Repository files navigation

SpectraMatcher

SpectraMatcher is a Python-based tool for analyzing and matching vibronic spectra from experimental data and Gaussian frequency and Franck–Condon / Herzberg-Teller computations. It streamlines file parsing, allows adjustment of vibronic spectra in an interactive plot, animates vibrational modes, automatically matches computed with experimental peaks, and exports publication-ready figures and tables.

A quick start guide and full documentation, including detailed usage guides, features, and examples, can be found here: spectramatcher.gitbook.io/spectramatcher

The tool is available as compiled binaries for Windows and Linux, or can be run using Python. The respective setup steps are described below.

Windows installer

SpectraMatcher is compatible with Windows 7 and above.

To install:

  1. Download the latest installer from the windows_installer/ folder of this repository.
  2. Run the .exe file and follow the prompts.

That's it — no Python or dependencies required.
Once installed, you can launch SpectraMatcher from the Start Menu or by double-clicking .smp project files.

💡 If you encounter a warning from Windows SmartScreen, choose “More info” → “Run anyway”.


Linux installer

The provided SpectraMatcher binary requries glibc version 2.31 or newer (typically available on Ubuntu 20.04+, Debian 11+, Fedora 32+, and most other Linux distributions released since 2020).

Download the installer linux_installer/SpectraMatcher_Linux_Installer_1.1.0.zip and follow these steps:

  1. Unzip the archive:
   unzip SpectraMatcher_Linux.zip
   cd SpectraMatcher_Linux
  1. Make the installer executable:
   chmod +x install_spectramatcher.sh
  1. Run the installer with root permissions:
   sudo ./install_spectramatcher.sh

This will:

  • Copy the application to /opt/SpectraMatcher
  • Install launcher and icon
  • Register the .smp file extension
  • Create a menu entry and optional desktop shortcut

You can then simply start SpectraMatcher through the start menu / desktop icon, through the console using /opt/SpectraMatcher/SpectraMatcher, or directly open .smp SpectraMatcher project files.


Run from source (Python)

SpectraMatcher can also be run directly from source using Python 3.7+
This is useful if you want to contribute to development or run on platforms not supported by the precompiled installer.

1. Clone the repository

git clone https://github.com/giogina/SpectraMatcher.git
cd SpectraMatcher

2. Install dependencies

Windows setup On recent Windows verions, install the required libaries with
pip install -r requirements/win-latest.txt

On Windows 7, only Python 3.7 can be run, which requires specific versions of the dependencies. These libraries can be installed with

pip install -r requirements/win7.txt

Should a library download no longer be available, use the backup wheels. Be careful to keep the provided .dll files in the main directory, as some might be missing from Windows 7.

You can then run SpectraMatcher as

python main.py

or open a project file with

python main.py -open file.smp

Linux setup

Make sure you have the following system dependencies installed first:

# On Debian/Ubuntu:
sudo apt install python3-tk wmctrl xclip

Then install the Python packages. For newer Python versions (tested for 3.10+), run:

pip install -r requirements/unix.txt

For Python 3.7, older versions of the libraries are necessary, which are installed with:

pip install -r requirements/unix37.txt

To start SpectraMatcher, run:

python3 main.py

or open a file with

python3 main.py -open file.smp


About

SpectraMatcher is a fast, GUI-based, interactive Python program for comparing computed and experimental vibronic spectra. It features real-time spectral adjustment, automated peak assignment, type-specific anharmonic corrections, and export to publication-ready formats. Supports Gaussian log files and plain text or spreadsheet experimental spectra.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages