modwt                package:waveslim                R Documentation

(_I_n_v_e_r_s_e) _M_a_x_i_m_a_l _O_v_e_r_l_a_p _D_i_s_c_r_e_t_e _W_a_v_e_l_e_t _T_r_a_n_s_f_o_r_m

_D_e_s_c_r_i_p_t_i_o_n:

     This function performs a level J decomposition of the input vector
     using the non-decimated discrete wavelet transform. The inverse
     transform performs the reconstruction of a vector or time series
     from its maximal overlap discrete wavelet transform.

_U_s_a_g_e:

     modwt(x, wf = "la8", n.levels = 4, boundary = "periodic")
     imodwt(y)

_A_r_g_u_m_e_n_t_s:

       x: a vector or time series containing the data be to decomposed.
           There is *no* restriction on its length. 

       y: Object of class '"modwt"'. 

      wf: Name of the wavelet filter to use in the decomposition.  By
          default this is set to '"la8"', the Daubechies orthonormal
          compactly supported wavelet of length L=8 (Daubechies, 1992),
          least asymmetric family.  

n.levels: Specifies the depth of the decomposition.  This must be a
          number less than or equal to log(length(x),2). 

boundary: Character string specifying the boundary condition.   If
          'boundary=="periodic"' the defaulTRUE, then the vector you
          decompose is assumed to be periodic on its defined interval,
           if 'boundary=="reflection"', the vector beyond its
          boundaries is assumed to be a symmetric reflection of itself. 

_D_e_t_a_i_l_s:

     The code implements the one-dimensional non-decimated DWT using
     the pyramid algorithm.  The actual transform is performed in C
     using pseudocode from Percival and Walden (2001).  That means
     convolutions, not inner products, are used to apply the wavelet
     filters.

     The MODWT goes by several names in the statistical and engineering
     literature, such as, the ``stationary DWT'',
     ``translation-invariant DWT'', and ``time-invariant DWT''.

     The inverse MODWT implements the one-dimensional inverse transform
     using the pyramid algorithm (Mallat, 1989).

_V_a_l_u_e:

     Object of class '"modwt"', basically, a list with the following
     components  

      d?: Wavelet coefficient vectors.

      s?: Scaling coefficient vector.

 wavelet: Name of the wavelet filter used.

boundary: How the boundaries were handled.

_A_u_t_h_o_r(_s):

     B. Whitcher

_R_e_f_e_r_e_n_c_e_s:

     Gencay, R., F. Selcuk and B. Whitcher (2001) _An Introduction to
     Wavelets and Other Filtering Methods in Finance and Economics_,
     Academic Press.

     Percival, D. B. and P. Guttorp (1994) Long-memory processes, the
     Allan variance and wavelets, In _Wavelets and Geophysics_, pages
     325-344, Academic Press.

     Percival, D. B. and A. T. Walden (2000) _Wavelet Methods for Time
     Series Analysis_, Cambridge University Press.

_S_e_e _A_l_s_o:

     'dwt', 'idwt', 'mra'.

_E_x_a_m_p_l_e_s:

     ## Figure 4.23 in Gencay, Selcuk and Whitcher (2001)
     data(ibm)     
     ibm.returns <- diff(log(ibm))
     # Haar
     ibmr.haar <- modwt(ibm.returns, "haar")
     names(ibmr.haar) <- c("w1", "w2", "w3", "w4", "v4")
     # LA(8)
     ibmr.la8 <- modwt(ibm.returns, "la8")
     names(ibmr.la8) <- c("w1", "w2", "w3", "w4", "v4")
     # shift the MODWT vectors
     ibmr.la8 <- phase.shift(ibmr.la8, "la8")
     ## plot partial MODWT for IBM data
     par(mfcol=c(6,1), pty="m", mar=c(5-2,4,4-2,2))
     plot.ts(ibm.returns, axes=FALSE, ylab="", main="(a)")
     for(i in 1:5)
       plot.ts(ibmr.haar[[i]], axes=FALSE, ylab=names(ibmr.haar)[i])
     axis(side=1, at=seq(0,368,by=23), 
       labels=c(0,"",46,"",92,"",138,"",184,"",230,"",276,"",322,"",368))
     par(mfcol=c(6,1), pty="m", mar=c(5-2,4,4-2,2))
     plot.ts(ibm.returns, axes=FALSE, ylab="", main="(b)")
     for(i in 1:5)
       plot.ts(ibmr.la8[[i]], axes=FALSE, ylab=names(ibmr.la8)[i])
     axis(side=1, at=seq(0,368,by=23), 
       labels=c(0,"",46,"",92,"",138,"",184,"",230,"",276,"",322,"",368))

