Create Wavelet Filter

DESCRIPTION:
Create a wavelet filter.

USAGE:
wave.filter(wavelet, filter=NULL, high.pass=F, dual.filter=F,
            even.filter=F, filter.seq=NULL, start=0)
is.dual(x)
is.high.pass(x)
is.low.pass(x)
is.orthogonal(x)
is.symmetric(x)
is.antisymmetric(x)

REQUIRED ARGUMENTS:
wavelet:
a character string giving the wavelet name, e.g. "d4". See wavelet.packet for a list of all available wavelet names. For user-defined filter, input the values the filter argument (see below).
x:
a numeric vector of filter coefficients.

OPTIONAL ARGUMENTS:
filter:
a numeric vector or a list of vectors. If filter is a vector or a list of length 1, it is assumed to be the low-pass filter (therefore the sum of the filter coefficients must be nonzero) and the high-pass filter will be computed by the usual quadrature mirror. If filter is a list of length 2 or more, filter[[1]] will be assumed to be the low-pass filter and filter[[2]] will be assumed to be the high-pass filter.
high.pass:
logical flag indicating if high-pass filter is requested. This argument will be ignored if filter.seq is supplied.
dual.filter:
logical flag indicating if dual filter is requested.
even.filter:
logical flag indicating if pad a zero to make the originally odd length filter become even length.
filter.seq:
a character string of Ls and Hs. If present, cascade filter is computed.
start:
filter start, for user defined filters only.

VALUE:
an object of class wave.filter, see wave.filter.object for details.

is.dual returns TRUE if x is a dual filter, and FALSE otherwise.

is.high.pass returns TRUE if x is a high-pass filter, and FALSE otherwise.

is.low.pass returns TRUE if x is a low-pass filter, and FALSE otherwise.

is.orthogonal returns TRUE if x is an orthogonal filter, and FALSE otherwise.

is.symmetric returns TRUE if x is a symmetric vector, and FALSE otherwise.

is.antisymmetric returns TRUE if x is a anti-symmetric vector, and FALSE otherwise.


DETAILS:
For more details, refer to the chapter "Algorithms and Filters" of the S+WAVELETS User's Manual.


REFERENCES:
Daubechies, I. (1992). Ten Lectures on Wavelets. SIAM, Philadelphia.

SEE ALSO:
transfer.function , wave.filter.object , wavelet .

EXAMPLES:
wf <- wave.filter("s8")
par(mfrow=c(2,2))
plot(wf)                      # plot the 8 taps of low-pass S8
transfer.plot(wf)             # plot the amplitude of the transfer function
transfer.plot(wf, phase=T)    # plot the phase of the transfer function
plot(wavelet("s8"))           # plot the scaling function of S8