Skip to content

AlejandroSerranoCapote/Ultrafast-Spectroscopy-Analyzer

Repository files navigation

Ultrafast Spectroscopy Analyzer

License: GPL v3

Windows Linux

Ultrafast Spectroscopy Analyzer is a comprehensive, open-source software suite designed for the advanced processing and analysis of ultrafast spectroscopy data. It provides an intuitive graphical environment to transform raw experimental data into publication-quality results.

Read the docs: https://ultrafast-spectroscopy-analyzer.readthedocs.io/en/latest/index.html# (Work in progress)


Install the required dependencies (run this command in the folder containing the script):

pip install -r requirements.txt

Run the application by typing the following in your terminal (inside the script folder):

python "UltrafastSpectroscopyAnalyzer.py"

Create a Standalone Executable (.exe) (Run by typing in your terminal inside the script folder):

pyinstaller --onefile --noconsole --icon=icon.ico --exclude-module PyQt6 "Ultrafast Spectroscopy Analyzer.py"

Supported Techniques

The application is optimized for two main experimental methods:

  • TASTransient Absorption Spectroscopy
  • FLUPSFluorescence Up-Conversion Spectroscopy

Mathematical Models

The software fits the experimental signal $\Delta A(t, \lambda)$ using three main approaches, all convolved with the Instrument Response Function (IRF).


1. Parallel Model: Decay-Associated Spectra (DAS)

Assumes that the components decay independently, which is ideal for mixtures of uncoupled species.

$$\Delta A(t, \lambda) = IRF(t) \otimes \sum_{i=1}^{n} A_i(\lambda) e^{-t/\tau_i}$$

Where each $A_i(\lambda)$ represents the DAS of the component with lifetime $\tau_i$.


2. Sequential Model: Species-Associated Spectra (SAS)

Describes an energy cascade or consecutive reaction: $1 \xrightarrow{k_1} 2 \xrightarrow{k_2} \dots \xrightarrow{k_n} n$.
The populations of each species are governed by the Bateman Equations.

For a decay chain where $k_i = 1/\tau_i$, the concentration $C_n(t)$ of species $n$ is defined as:

$$C_n(t) = \left( \prod_{j=1}^{n-1} k_j \right) \sum_{j=1}^{n} \frac{e^{-k_j t}}{\prod_{p=1, p \neq j}^{n} (k_p - k_j)}$$

The total signal is the sum of the contributions of each excited state (SAS):

$$\Delta A(t, \lambda) = IRF(t) \otimes \sum_{i=1}^{n} SAS_i(\lambda) C_i(t)$$


3. Damped Oscillation Model

Suitable for systems exhibiting coherent dynamics (e.g., vibrational wavepackets) alongside population relaxation. The total signal is modeled as a superposition of standard parallel decays and a damped oscillatory component.

$$ \Delta A(t, \lambda) = \left( IRF(t) \otimes \sum_{i=1}^{n} A_i(\lambda) e^{-t/\tau_i} \right) + B(\lambda) \cdot S_{osc}(t) $$

Where:

  • $A_i(\lambda)$ are the decay amplitudes (DAS).
  • $B(\lambda)$ is the Spectrum of the Oscillation Amplitude.

The oscillatory term $S_{osc}(t)$ incorporates a "Soft Step" function (using the error function erf) to simulate the convolution of the oscillation onset with the Gaussian IRF:

$$ S_{osc}(t) = \frac{1}{2} \left[ 1 + \text{erf}\left( \frac{t - t_0}{\sqrt{2}w} \right) \right] \cdot e^{-\alpha (t - t_0)} \cdot \sin\big(\omega (t - t_0) + \phi \big) $$

Key Parameters:

  • $\alpha$: Damping rate.
  • $\omega$: Angular frequency.
  • $\phi$: Phase shift.
  • $w$: Width of the IRF (controls the smoothness of the oscillation "turn-on").

Instrument Response Function (IRF)

The time resolution is modeled using a Gaussian of width $w$ (FWHM) centered at $t_0$:

$$IRF(t) = \frac{1}{w \sqrt{\pi}} \exp\left( -\left( \frac{t - t_0}{w} \right)^2 \right)$$


Main Features

Multi-Technique Support

  • Dual Analysis: Fully compatible with TAS (Transient Absorption Spectroscopy) and FLUP (Fluorescence Upconversion) data.
  • TCSPC Ready: Support for Time-Correlated Single Photon Counting data processing.

Advanced Pre-processing

  • Chirp Correction: Automated and manual $t_0$ adjustment per wavelength to correct Group Velocity Dispersion (GVD).
  • Data Cleaning: Integrated tools for baseline subtraction, spectral/temporal binning, and dynamic data cropping.
  • Flexible Scaling: Support for Linear and SymLog (Symmetric Logarithmic) time axes for better visualization of ultrafast dynamics.

Advanced Mathematical Analysis

  • SVD Diagnosis: Built-in Singular Value Decomposition to determine the number of photo-active species (matrix rank) and spectral components.
  • Global Fitting: Multiexponential analysis (up to 6 components) using two physical models:
    • Parallel Model (DAS): Extraction of Decay Associated Spectra.
    • Sequential Model (SAS): Species Associated Spectra modeling for successive population transfer.
  • Error Estimation: Reliability analysis using covariance matrices and Jacobian-based confidence intervals.

Scientific Visualization

  • 3D Surface Explorer: Interactive 3D rendering of data surfaces to identify global trends.
  • Trace Checker: Real-time inspection of individual wavelength kinetics with dual Linear/Log views.
  • Residual Mapping: Automated generation of 2D error maps to evaluate fit quality across the entire dataset.

Export & Integration

  • Publication-Ready: Export high-resolution plots (300 DPI) in PNG/PDF formats.
  • Open Data Formats: Save results as .txt (compatible with Origin, Excel, or Python) and binary .npy files for fast reloading.

See also: Supported Data Formats →

Screenshots

MAIN MENU

Portada

GUI FLUPS

FLUPS

GUI TAS

TAS

GUI Global Fit

GlobalFit

SVD Analysis

SVD

Species Associated Spectra

SAS

Kinetics Fit

FitKinetcis

About

Advanced analysis tool for ultrafast spectroscopy (TAS/XTAS/FLUPS) featuring chirp correction, global fitting, and scientific visualization tools.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages