R: Higher-Order Wavelet Filters

wavelet.filter {waveslim} | R Documentation

## Higher-Order Wavelet Filters

### Description

Create a wavelet filter at arbitrary scale.

### Usage

    wavelet.filter(wf.name, filter.seq = "L", n = 512)

### Arguments

`wf.name` | Character string of wavelet filter.
`filter.seq` | Character string of filter sequence. `H` means high-pass filtering and `L` means low-pass filtering. Sequence is read from right to left.
`n` | Length of zero-padded filter. Frequency resolution will be `n`/2+1.

### Details

Uses `cascade` subroutine to compute higher-order wavelet coefficient vector from a given filtering sequence.

### Value

Vector of wavelet coefficients.

### Author(s)

B. Whitcher

### References

Bruce, A. and H.-Y. Gao (1996). Applied Wavelet Analysis with S-PLUS, Springer: New York.

Doroslovacki, M. L. (1998) On the least asymmetric wavelets, IEEE Transactions on Signal Processing, 46, No. 4, 1125-1130.

Daubechies, I. (1992) Ten Lectures on Wavelets, CBMS-NSF Regional Conference Series in Applied Mathematics, SIAM: Philadelphia.

Morris and Peravali (1999) Minimum-bandwidth discrete-time wavelets, Signal Processing, 76, No. 2, 181-193.

Nielsen, M. (2001) On the Construction and Frequency Localization of Finite Orthogonal Quadrature Filters, Journal of Approximation Theory, 108, No. 1, 36-52.

### See Also

`squared.gain`, `wave.filter`.

### Examples

    ## Figure 4.14 in Gencay, Selcuk and Whitcher (2001)
    par(mfrow=c(3,1), mar=c(5-2,4,4-1,2))
    f.seq <- "HLLLLL"
    plot(c(rep(0,33), wavelet.filter("mb4", f.seq), rep(0,33)), type="l",
         xlab="", ylab="", main="D(4) in black, MB(4) in red")
    lines(c(rep(0,33), wavelet.filter("d4", f.seq), rep(0,33)), col=2)
    plot(c(rep(0,35), -wavelet.filter("mb8", f.seq), rep(0,35)), type="l",
         xlab="", ylab="", main="D(8) in black, -MB(8) in red")
    lines(c(rep(0,35), wavelet.filter("d8", f.seq), rep(0,35)), col=2)
    plot(c(rep(0,39), wavelet.filter("mb16", f.seq), rep(0,39)), type="l",
         xlab="", ylab="", main="D(16) in black, MB(16) in red")
    lines(c(rep(0,39), wavelet.filter("d16", f.seq), rep(0,39)), col=2)

[Package waveslim version 1.8.2 Index]