Basis set simulation for sLaser 110 TE

Dear Developers,

I am a beginner in MRS signal processing. We have a 3T GE scanner that we use for scientific projects besides everyday clinical work. I use Osprey for quantification of the general MRS applications (PROBE-p TE=35 and 144). It works perfectly.
I am very much interested in 2HG quantification, and I set up a sLaser sequence with 110 TE for this project. I tried to simulate the basis sets using two different approaches:

  1. I used the MATLAB code BasisSetSimulation by Jessica Archibald. In this case, I received basis sets shifted by about -2ppm. I assume that the problem would be the center frequency; however, it is set to 2.02, which is the correct value in my case (if I am not mistaken…). Do you have any idea what could be the problem?

  1. In parallel, I also tried MRSCloud. Unfortunately, I could not figure out how to transform the .RAW format to .mat. Is there any way to do it? In other basis set simulators, I had to be very specific with the measurement parameters, but not with MRSCloud. What is the reason for this? It didn’t even ask for the B0 field strength. Do I complete the “missing” data while applying the .RAW format?

Which one is the better, more reliable method? Do you have any further suggestions how I can progress?

Best,
András

Hi András,

I am happy to comment on our MATLAB BasisSetSimulation code.

From what you show here, I would first check whether you are plotting the final processed basis set or one of the intermediate MATLAB outputs. You can also look at the final generated .PDF

We’ve tested a simulation with your settings and the results look good.

There is a function in FID-A that can help you conver the .raw to .mat inputOutput/io_readlcmraw_dotraw.m

I hope this helps!

Dear Jessica,

Thank you for the suggestions!
I checked the final pdf and the individual metabolite spectra as well, and all of them seemed to be fine.
I used Osprey to create the basis.mat file for further application (fit_makeBasis.m). This is where the spectrum somehow shifts, I had attached that shifted plot to my original post. I also realised that your code has the centreFreq variable, while the Osprey code searches for centerFreq. When I replaced centerFreq to centreFreq in the Opsrey code, the spectrum is shifted even more to the negative direction (see below). If I understand well, this is because the code uses a preset centerFreq=3 in the absence of centerFreq tag.


I guess I can simply try to find a certain centerFreq to get the proper sperctrum, but I am not really convinced by the precision of this strategy. Do you have any idea how I should progress?

Best,
András

Hi András,

Thanks for the additional details. For fitting in Osprey, I use this function:

libraries/FID-A/inputOutput/io_LCMBasis.m to convert the .basis.

With this approach, the metabolite spectra remain correctly aligned in my experience.

Dear Jessica,

Thank you very much for your help! The fitting worked properly with the io_LCMBasis.m function. Finally, all the peaks seem to be in the correct locations.

Best,
András