Learn R Programming

waveslim (version 1.12)

wavelet.filter: 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.

Value

  • Vector of wavelet coefficients.

Details

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

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

Run this code
## 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)

Run the code above in your browser using DataLab