Seeks the whitest transform of a discrete wavelet packet transform (DWPT)
Description
This function seeks the whitest orthonormal transform of a DWPT. The goal is to segment the normalized frequency interval [0, 1/2] into subintervals such that, within each subinterval, the variability of the (corresponding) spectral density function (SDF) is minimized, i.e., each segment of the SDF is as flat as possible. Given an Npoint uniformly sampled time series X, and denoting W(j,n) as the DWPT crystal at level j and (sequency ordered) oscillation index n, this optimization is achieved as follows:
 1
Perform a level J  2 partial DWPT of X where J=floor(log2(N)). By definition, W(0,0)=X. Begin step
2
with j=n=0. 2
Perform a white noise test on the current (parent) crystal: W(j,n). If it passes (or the current crystal is in the last decomposition level) retain the crystal. Otherwise, discard the current parent crystal and perform the white noise test on its children: W(j+1,2n) and W(j+1,2n+1).
 3
Repeat step
2
as many times as necessary until a suitable transform is found.
Usage
1  wavDWPTWhitest(x, significance=0.05, test="port2", wavelet="s8", n.level=NULL)

Arguments
x 
a vector containing a uniformlysampled realvalued time series or an
object of class 
n.level 
the number of decomposition levels. This argument is used only if

significance 
a numeric value on the interval (0,1)
which qualitatively signifies the fraction of times that the
white noise hypothesis is incorrectly rejected.
The 
test 
a character string denoting the white noise test to use.
Options are 
wavelet 
a character string denoting the filter type.
See 
Value
a list
containing the level
and osc
vectors denoting
the level and oscillation index, respectively, of the whitest transform.
References
D. B. Percival, S. Sardy and A. C. Davison, Wavestrapping Time Series: Adaptive WaveletBased Bootstrapping, in W. J. Fitzgerald, R. L. Smith, A. T. Walden and P. C. Young (Eds.), Nonlinear and Nonstationary Signal Processing, Cambridge, England: Cambridge University Press, 2001.
See Also
wavDWPT
, wavBootstrap
.
Examples
1 2 3 4 5 6 7 8  ## calculate the DWPT of the sunspots series
W < wavDWPT(as.numeric(sunspots), wavelet="s8", n.levels=9)
## find the whitest transform based on the
## Portmanteau I white noise test
z < wavDWPTWhitest(W, test="port1")
print(z)
