Dear Easyspin developpers,
I was asked for the possibility to load spectra from Ciqtek in SimLabel... Before trying to do that directly in SimLabel, I would like to know if you plan to offer the possibility to load these spectra with eprload.
I have 2 examples (1D and 2D) but unfortunately I can not upload them because the extension .epr is not allowed...
Thank you!
eprload from Ciqtek?
eprload from Ciqtek?
-
- EasySpin Creator
- Posts: 1146
- Joined: Mon Jul 21, 2014 10:11 pm
- Location: University of Washington
Re: eprload from Ciqtek?
Unfortunately, CIQTEK are currently not supported. We are happy to implement this in eprload
if a full file format specification is available.
Re: eprload from Ciqtek?
I didn't think to .zip...
You can find attached a zip file containing one 1D spectrum and one 2D spectrum saved with a ciqtek spectrometer.
Thank you!
-
- EasySpin Creator
- Posts: 1146
- Joined: Mon Jul 21, 2014 10:11 pm
- Location: University of Washington
Re: eprload from Ciqtek?
Thanks for the example files! We'll add this to our to-do list for the next EasySpin release. Hopefully we can get some official documentation about this JSON-based file format from the vendor.
Meanwhile, try using the following code snipped to load the spectra (should work for both 1D and 2D files). Note that the spectral data vectors appear to come in pairs (stored in ReData and ImData). Probably they are the in-phase and quadrature outputs from an IQ mixer in the detection system.
Code: Select all
clear, clc
fileName = 'Exemple_TEMPO_CIQTEK.epr';
%fileName = 'Exemple_CIQTEK_2D.epr';
fid = fopen(fileName);
jsonstring = fread(fid, "*char").';
fclose(fid);
data = jsondecode(jsonstring);
nSpectra = numel(data.dataStore.lineDataList);
for iSpectrum = 1:nSpectra
B(:,iSpectrum) = data.dataStore.lineDataList(iSpectrum).ReData(:,1);
spcRe(:,iSpectrum) = data.dataStore.lineDataList(iSpectrum).ReData(:,2);
spcIm(:,iSpectrum) = data.dataStore.lineDataList(iSpectrum).ImData(:,2);
end
subplot(2,1,1)
plot(B,spcRe)
subplot(2,1,2)
plot(B,spcIm)