cwt()
when scales has length 1.getRidge()
supports a scaleToWinSize
parameter. This argument controls how
scales get mapped to window sizes. These windows are used to track the local
maxima into ridges. MassSpecWavelet had a criteria of winsize <- 2*scale+1
,
while xcms modified it to winsize <- floor(scale/2)
. This new argument enables
xcms maintainers to call MassSpecWavelet's getRidge (if they want to) using their
criteria, while it still lets us preserve backwards compatibility in our results.
See ?getRidge
for further details.
The getLocalMaximumCWT()
is_amp_thres_relative
parameter is now isAmpThreshRelative
,
for consistency with other parameter capitalization in the package. Since it
was introduced 10 days ago, I don't think there will be more than one user using
it.
getLocalMaximumCWT()
and peakDetectionCWT
have a exclude0scaleAmpThresh
parameter. When computing the relative amp.Th
, if this parameter is set
to TRUE
, the amp.Th
will exclude the zero-th scale from the
max(wCoefs)
. The zero-th scale corresponds to the original signal, that may
have a much larger baseline than the wavelet coefficients and can distort the
threshold calculation. The default value is FALSE
to preserve backwards
compatibility.
peakDetectionCWT
lets the user pass custom arguments to getRidge()
.
The improvements in localMaxima()
and cwt()
provide significant speed-ups
to peakDetectionCWT()
as well as better scalability.
A prepareWavelets()
function lets the user pre-compute the daughter wavelets
for more efficient cwt()
calculations when applied on multiple spectra. When
used transforming 1000 spectra, of 2000 points long each, using 25 different
scales, cwt()
is twice as fast as in previous versions. Further improvements
to avoid some memory allocations are still feasible in future versions.
Through the prepareWavelets()
function, we provide the extendLengthScales
argument, that provides the same functionality than the extendLengthMSW
argument
in xcms:::MSW.cwt()
.
The peakDetectionCWT()
function accepts a prepared_wavelets
object in the
scales argument for better efficiency.
localMaxima()
has a more efficient implementation of the algorithm, now being
10x faster than before, while giving the same results.
Experimentally, localMaxima()
can use a new and different algorithm for
detecting local maxima. See the new "Finding local maxima" vignette for
further details.
cwt()
has a matrix in the wavelet
argumentsd
-> stats::sd
)man/
files.