SPARK is an open-source Python suite for the comprehensive processing, analysis, and kinetic modeling of ultrafast spectroscopy data (TAS, FLUPS, and XTAS). It combines an intuitive Graphical User Interface (GUI) with a high-performance mathematical backend, designed to streamline data handling from standard table-top setups as well as Synchrotron and XFEL facilities.
- Advanced Global Fitting: Powered by a Variable Projection (VarPro) engine using Trust Region Reflective optimization. Fits Parallel (DAS), Sequential (SAS), and Damped Oscillation models seamlessly.
- Visual Kinetic Modeler: Build complex Jablonski/Grotrian kinetic schemes visually. Draw states and transitions to automatically generate and diagonalize custom K-matrices.
- Robust Error Analysis: Computes true confidence intervals via Profile Likelihood mapping, going beyond standard covariance-based error estimation to ensure parameter identifiability.
- Artifacts & Pre-processing: Automated chirp correction (polynomial and non-linear physical models), baseline corrections, and coherent artifact handling (Raman/XPM bases).
- XFEL & Timescan Ready: Native support for batch-processing X-ray Free-Electron Laser and synchrotron
.npykinetic traces into fully calibrated 2D maps. - Publication-Ready Plotting: An integrated drag-and-drop plotting tool to customize and export high-resolution (600 DPI) vector figures ready for scientific journals.
Install SPARK directly via PyPI. We recommend using a virtual environment (like conda or venv) to ensure a clean installation of all UI and scientific dependencies.
pip install spark-spectroscopyOnce installed, launch the main SPARK dashboard directly from your terminal:
spark-gui(Note: If command-line entry points are not configured, you can launch the app by cloning the repository and running python main.py).
For detailed installation instructions, user tutorials, and the complete API reference, please visit the Official Documentation on Read the Docs.
SPARK is distributed under the MIT License. See LICENSE for more information.