problem with the intensity in *.spc file tgspcread

2 visualizaciones (últimos 30 días)
Alejandro Castro Alvarez
Alejandro Castro Alvarez el 31 de Mayo de 2024
Editada: Walter Roberson el 25 de Jul. de 2024
I am using the tgspcread function to import *.spc files from a spectrometer.
The function reads everything fine, however the intensity of the spectra is much lower than it should be.
When I compare the intensity using the spectrometer program there is a difference of several orders of magnitude in the intensities and completely arbitrary. It appears that the tgspcread function is dividing the intensity of each spectrum by an arbitrary factor.
Does anyone have any idea what the function is doing?
below an example
  1 comentario
Alejandro Castro Alvarez
Alejandro Castro Alvarez el 31 de Mayo de 2024
I also found that the x-axis is slightly different from Matlab and spectrometer software. That moves the whole spectra

Iniciar sesión para comentar.

Respuestas (1)

Garmit Pant
Garmit Pant el 3 de Jul. de 2024
Hello Alejandro Castro Alvarez
I see that you are working with spectral data acquired from a spectrometer and saved as a Thermo Galactic GRAMS format SPC-file. You are trying to import the data to MATLAB using “tgspcread” function.
tgspcread” function reads the raw binary data stored in the SPC-file and imports it into MATLAB in ‘double’ precision format. The function reads and converts the binary data as it is, without any post-processing like normalization.
I investigated the behaviour of the “tgspcread” function using a sample file that I have attached to the answer. On comparing the plots between MATLAB R2021b and Spectragryph v1.2.16.1, I found no discrepancy between the plots.
The following can be the reasons behind the discrepancy in the plots:
  • The spectrometer software can be applying some post-processing steps like normalization or scaling while exporting the data to a SPC-file.
  • The MATLAB script used to read and plot the data can be applying some normalization or scaling after using the “tgspcread” function.
You can refer to the documentation for the “tgspcread” function to understand how to refine your readings using input arguments:
I hope you find the above explanation and suggestions useful!
  1 comentario
Alejandro Castro Alvarez
Alejandro Castro Alvarez el 25 de Jul. de 2024
Editada: Walter Roberson el 25 de Jul. de 2024
Hi Garmit,
Thank you for your response. I checked your file and it works properly (Spectragryph vs Matlab). However, I do not understand what happened to my files. I never use the equipment's software to treat the data; instead, I save it as it was measured.
I always check the files first before doing the analysis. Here a small script to check and plot the files.
[file,path] = uigetfile('*.spc','Select Raman');
filename = fullfile(path,file);
SPCStruct = tgspcread(filename);
Freq=SPCStruct.X; % cm-1 or nm
Y =SPCStruct.Y; % intensity
plot(Freq,Y)
Do you have any idea what the problem could be?
I attach an example of the map.
Thank a lot for your help!

Iniciar sesión para comentar.

Categorías

Más información sobre Manage Products en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by