cwt_fw {SynchWave} | R Documentation |
Forward Continuous Wavelet Transform
Description
This function performs forward continuous wavelet transform, discretized, as described in Sec. 4.3.3 of [1] and Sec. IIIA of [2]. This code is translated from MATLAB Synchrosqueezing Toolbox, version 1.1 developed by Eugene Brevdo (http://www.math.princeton.edu/~ebrevdo/).
Usage
cwt_fw(x, type, nv, dt, opt)
Arguments
x |
input signal vector, length |
type |
wavelet type, string (see |
nv |
number of voices (suggest |
dt |
sampling period (default, |
opt |
list of options. |
Details
This function performs forward continuous wavelet transform, discretized, as described in Sec. 4.3.3 of [1] and Sec. IIIA of [2]. This algorithm uses the FFT and samples the wavelet atoms in the fourier domain. Options such as padding of the original signal are allowed. Returns the vector of scales and, if requested, the analytic time-derivative of the wavelet transform (as described in Sec. IIIB of [2].
Value
Wx |
|
asc |
|
dWx |
|
References
[1] Mallat, S (2009) A Wavelet Tour of Signal Processing, New York: Academic Press.
[2] Thakur, G., Brevdo, E., Fuckar, N. S. and Wu, H-T. (2013) The Synchrosqueezing algorithm for time-varying spectral analysis: Robustness properties and new paleoclimate applications. Signal Processing, 93, 1079–1094.
See Also
cwt_iw
, wfiltfn
, est_riskshrink_thresh
.
Examples
tt <- seq(0, 10, , 1024)
f0 <- (1+0.6*cos(2*tt))*cos(4*pi*tt+1.2*tt^2)
sigma <- 0.5
f <- f0 + sigma*rnorm(length(tt))
# Continuous wavelet transform
nv <- 32
opt <- list(type = "bump")
cwtfit <- cwt_fw(f, opt$type, nv, tt[2]-tt[1], opt)