Here is an elaboration of what we have been considering.
Our confusion arises mainly because we've seen a different way of integrating the same data: (to our understanding) XCMS performs a time correction for scan rate and then simply sums up the peaks, while XCalibur does "connect the dot" integration.
Our working model is that when Xcalibur records a centroid, that centroid represents the total number of ions that would have been flowing into the mass spectrometer since the last scan. We realize that the LTQ or Orbitrap don't actually collect ions the entire time between scans because they need time to scan them, but the number reported in a .RAW file corrects for this. If a centroid actually represents this model, then summing the ions up in an XIC seems to us to be the most accurate way to quantitate a peak.
We drew up some simple examples that demonstrate that changes in scan rate change the quantitation derived from these 3 ways of quantitating data.
(http://http://dl.dropbox.com/u/14129144/quantitation_modes.svg)
Your image did not make it into the posting for some reason.
Both feature detection algorithms, matchedFilter and centWave, use the same type of normalization
pwid <- (scantime[peakrange[2]] - scantime[peakrange[1]])/(peakrange[2] - peakrange[1])
peaks[p,"into"] <- pwid * sum(d[lm[1]:lm[2]])
to compensate for scan rate changes.
Colin came up with this normalization factor and I used the same normalization for centWave,
to make the intensities calculated by matchedFilter and centWave comparable.
I think the initial idea was to compensate for inter-sample scan rate changes,
e.g. running th same sample with the same gradient with e.g. 1.5 Hz or 2 Hz scan rate should result in similar
feature intensities, although the number of centroids that are integrated for each feature will be different.
It was designed for Q or TOF data, not for Orbitrap.
I am not sure what "a connect the centroids model" is supposed to mean.
Sounds like either fitting a model or just summing up the intensity values of the centroids.
The latter can easily be achieved by just setting pwid to 1 in the source code.
If a different type of normalization turns out to work better with Orbitrap data
then I would be happy to include it as an option for centWave.