 Topic: How does centWave compute area under curve? (Read 2283 times)

## How does centWave compute area under curve? ##### June 30, 2011, 06:06:03 PM
Good evening,

I would like to evaluate how much area under the curve centWave actually obtains on a manually curated set. I have the raw data points corresponding to each feature detected, but when I sum the intensity values of the centroids it generally underestimates the intensity that is reported in the "into" and "intb" columns of the matrix returned by findPeaks.centWave().  Why are the intensities different? I read the following part of the documentation for findPeaks.centWave():

integrate: Integration method. If ‘=1’ peak limits are found through
descent on the mexican hat filtered data, if ‘=2’ the descent
is done on the real data. Method 2 is very accurate but prone
to noise, while method 1 is more robust to noise but less
exact.

I suppose that the mexican hat operation or the real descent alter the way centWave quantitates.
I could not find an answer in the published paper.
In other words, why doesn't it operate like this?

area under feature = int(1) + int(2) + ... + int(n)

Chris

## Re: How does centWave compute area under curve? ##### Reply #1 – July 01, 2011, 12:36:16 PM
How does xcms calculates raw peak areas?

## Re: How does centWave compute area under curve? ##### Reply #2 – July 12, 2011, 01:54:22 PM
Got busy with other things When you say it is normalized by the scan rate, then I would guess you are doing something like the following to adjust for variability in scan rate of any given feature.
>scan_rate_avg = difference of all adjacent scans and divide  by n scans.
>scale_factor = (scan(i) - scan(i - 1)) / scan_rate_avg;
>new_spectrum_intensity = spectrum_intensity(i)  / scale_factor; #inverse relation

EXAMPLE:

Suppose the average scan rate is 1 scan per second. Then if the current scan time minus previous scan time (t(i) - t(i - 1)) is 0.5 or 2 scans per second, the normalization might scale the intensity by a factor of 2 because its time to accumulate packet ions from the Orbitrap was reduced by half.

>scale_factor = (1/2) / 1
>new_spectrum_intensity = spectrum_intensity(i) / scale_factor; # equal to spectrum_intensity * 2

We recently queried THERMO's tech support for the LTQ-Orbitrap platform (have not heard back yet) to know how they report intensity. Do you have any insider edge on this?

Appreciate the expertise Chris