awbirdsall/pyccutof

make mass calibration independent of m/z range

awbirdsall opened this issue · 0 comments

Currently, mass calibration functions are in the form m/z = f(FFT bins) (i.e., applied directly to bins in the FFT file). This works only if the m/z range is the same for the calibration source and where the calibration is applied. The calibration cannot be applied to an FFT file of arbitrary m/z range that might differ from the original calibration source. (For example, in one case FFT[0] might correspond to 15 m/z whereas in another file FFT[0] might correspond to 20 m/z.)

To fix this, need to rewrite calibration functions (create_cal_poly(), apply_mz_cal()) so that they account for the fact that FFT[0] (through FFT[-1]) can differ for different FFT files. Using readmassrange() will probably be helpful.