top of page

SpecAnalyser: a GUI software of spectral analysis


A software product that comes out from our collaboration is SpecAnalyser. This software has been developed by Dr. Thai Pham, a beamline scientist at MAX IV synchrotron, and Asst. Prof. Kim Cuong Le. It has been used to analyse Raman, FTIR, UV-Vis absorption spectra of soot and black carbon. A number of scientific publications were resulted from the use of SpecAnalyser [1-5].

SpecAnalyser is a graphical user interface software. It is used to decompose spectral peaks into fundamental functions including Gaussian, Lorentzian, Voigt and BWF (Breit Wigner Fano). User enters the type of function to fit and interactively set a range of peak position for each function. Best fit parameters and their uncertainties are saved in a .txt output file. The decomposed peaks are saved in a separated .txt file.

A screenshot of the software is shown below:


Screenshot 2022-04-18 at 21.30.49.png

How to use the software

SpecAnalyser is rather self-explanatory. User follows steps in the left panel from top to the bottom. The steps are listed in the following order:


1. Clear existing figure by pressing "Clear figure" button.

2. Load the data by clicking "Load data" button. Data must be a ascii file.

3. Enter a range of data in the "Fitting range" textbox. User specify min and max wavelength, wavenumber.. and press "Re-plot" button. If this box is blank full data will be used.

4. Enter type of function to be fitted in the "Select Function" box. The function is indicated by its first letter, for example, G: Gaussian, L: Lorentzian, V: Voigt, B: BWF. The letter can be capital or normal letter. The letters are ordered by the appearance of the function from the left to the right of the spectrum.

5. Enter order of background function. Background is modelled by polynomial function.

6. Press "Fitting Bound" button to choose range of peak position. Once hit enter key user point cursor to the left and the right of a peak. Repeat for each peak.

7. Hit "Fit" button to do the fitting. Result is shown in the upper graph with legend. The lower graph shows the residual of the fit and the experimental data. Results are automatically saved in .txt file.

8. User can do the same fit for many data. This is done by pressing "Multiple Fit". 

This software can be used to analyse any data that can be modelled with the above mentioned functions, for example, Raman, fluorescence, absorption, x-ray photoelectron spectroscopy, ...

This software is written in Matlab. User can run the binaries on their computer but they need to have Runtime Matlab engine. User should use R2020a and above. The software is provided free of charge and can be downloaded below.


[1] L. Gavilan et al. (2017) , Polyaromatic disordered carbon grains as carriers of the UV bump: Far-UV to mid-IR spectroscopy of laboratory analogs, Astronomy & Astrophysics, 607, A73

[2] K.C Le et al. (2019), Direct observation of aliphatic structures in soot particles produced in low-pressure premixed ethylene flames via Online Raman spectroscopy, Proc. Combust. Inst., 377, 869-876

[3] K.C. Le et al. (2019), Raman spectroscopy of mini-CAST soot with various fractions of organic compounds: Structural characterization during heating treatment from 25 °C to 1000 °C, Combustion and Flame, 219-320

[4] K.C. Le et al. (2021), Polarization effects in Raman spectroscopy of light- absorbing carbon, Journal of Raman Spectroscopy, 52, 6, 1115-1122.

[5] K.C Le et al (2022), Watching soot inception via Online Raman spectroscopy, Combustion and Flame, 236, 111817

bottom of page