As a newbie in MRS, I just realized that LCModel does not only do the fitting/modelling but it also does some processing on the data such as frequency correction (shift), zero-order and first-order phase correction.
I have done all these corrections in my processing pipeline and now that I have realized thay are being done by LCModel, I was hoping to disable these inside LCModel to avoid redundancy.
You can fix the phases by setting DEGZER (the expectation value for the zero-order phase parameter), SDDEGZ (the standard deviation for the zero-order phase parameter), DEGPPM(the expectation value for the first-order phase parameter) and SDDEGP (the standard deviation for the first-order phase parameter) all to zero (See LCModel manual, section 9.7 and following). This should constrain both corrections. However, let me say that you might find that giving a little bit of phasing freedom to the modeling process will actually improve your phase estimate (I find it very difficult to near-impossible to reliably pre-phase a spectrum perfectly in an automated fashion!).
For the frequency correction, thereâs two things happening here:
a global phase shift (based on the three singlets) estimated at the very beginning. I believe that you can (see Section 11.3. in the manual) deactivate that by setting FIXSHF=T and PPMSHF = 0.
frequency shifts applied to the individual metabolites. I believe these can be fixed by setting DESDSH=0. (which is the standard deviation of the estimated parameters, i.e., youâll put an infinitely high penalty on applying a frequency shifts, Section 11.13) for the metabolites - for MMs and lipids, youâll need to modify the definitions in the control file as well by setting the standard deviations of the shifts to 0 (see Section 11.7)
Thanks Georg for sharing your experience
I could easily disable these corrections in the LCModel.
This global phase shift is actually what we also refer to as âzero-order phase correctionâ, right?
So, If I have understood correctly from the âOspreyProcessâ function, you do the frequency shift using the âosp_XReferencingâ function and then zero-order phase correction by applying a global phase estimated by âop_phaseCrChoâ. Then you will let the LCModel handle the first-order phase corrections. Right?
I was wondering, since you do these steps externally (outside LCModel), do you still let LCModel do these corrections again?
Yeah, we do, because we primarily use our own linear-combination modeling algorithm instead of shipping the spectra off to LCModel. Both these steps (initial frequency referencing and an initial guess for the phase - yes youâre right thatâs a zero-order phase correction) are never meant to be final or perfect⌠just to get the spectra roughly into the right ballpark before the fitting algorithm takes over.
Again, I think full modeling is actually the most informed way of doing frequency-and-phase adjustment, rather than just trying to fixate on a couple very narrow spectral features.