\HeaderA{filter.select}{Provide wavelet filter coefficients.}{filter.select}
\keyword{utilities}{filter.select}
\begin{Description}\relax
This function stores the filter coefficients necessary for doing a discrete wavelet transform (and its inverse).
\end{Description}
\begin{Usage}
\begin{verbatim}
filter.select(filter.number, family="DaubLeAsymm", constant=1)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{filter.number}] This selects the desired filter, an integer that takes a value dependent upon the family that you select.
\item[\code{family}] This selects the basic family that the wavelet comes from. The choices are \bold{DaubExPhase} for Daubechies' extremal phase wavelets, \bold{DaubLeAsymm} for Daubechies' ``least-asymmetric'' wavelets, \bolf{Lawton} for Lawton's complex-valued wavelets, \bold{LittlewoodPaley} for a bad approximation to Littlewood-Paley wavelets.
\item[\code{constant}] This constant is applied as a multiplier to all the coefficients. It can be a vector, and so you can adapt the filter coefficients to be whatever you want. (This is feature of negative utility, or ``there is less to this than meets the eye'' as my old PhD supervisor would say [GPN]).
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
This function contains at least three types of filter. Two types can be selected with family set to DaubExPhase, these wavelets are the Haar wavelet (selected by filter.number=1 within this family) and Daubechies ``extremal phase'' wavelets selected by filter.numbers ranging from 2 to 10). Setting family to DaubLeAsymm gives you Daubechies least asymmetric wavelets, but here the filter number ranges from 4 to 10. For Daubechies wavelets, filter.number corresponds to the N of that paper, the wavelets become more regular as the filter.number increases, but they are all of compact support. 

Setting family equal to ``Lawton'' chooses complex-valued wavelets. The only wavelet available is the one with ``filter.number'' equal to 3. 

The function \code{\LinkA{compare.filters}{compare.filters}} can be used to compare two filters.
\end{Details}
\begin{Value}
Alist is returned with four components describing the filter: 

\begin{ldescription}
\item[\code{H}] A vector containing the filter coefficients.
\item[\code{G}] A vector containing filter coefficients (if Lawton wavelets are selected, otherwise this is NULL).
\item[\code{name}] A character string containing the name of the filter.
\item[\code{family}] A character string containing the family of the filter.
\item[\code{filter.number}] The filter number used to select the filter from within a family.
\end{ldescription}
\end{Value}
\begin{Section}{RELEASE}
Version 3.5.3 Copyright Guy Nason 1994
\end{Section}
\begin{Note}\relax
The (Daubechies) filter coefficients should always sum to sqrt(2). This is a useful check on their validity.
\end{Note}
\begin{SeeAlso}\relax
\code{\LinkA{wd}{wd}}, \code{\LinkA{wr}{wr}}, \code{\LinkA{wr.wd}{wr.wd}}, \code{\LinkA{accessC}{accessC}}, \code{\LinkA{accessD}{accessD}}, \code{\LinkA{compare.filters}{compare.filters}}, \code{\LinkA{imwd}{imwd}}, \code{\LinkA{imwr}{imwr}}, \code{\LinkA{threshold}{threshold}}, \code{\LinkA{draw}{draw}}.
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
#This function is usually called by others. However, on occasion you may wish to look at the coefficients themselves.

#
# look at the filter coefficients for N=4 (by default Daubechies'
# least-asymmetric wavelets.)
#
#filter.select(4)
#$H:
#[1] -0.07576571 -0.02963553  0.49761867  0.80373875  0.29785780
#[6] -0.09921954 -0.01260397  0.03222310
#
#$G:
#NULL
#
#$name:
#[1] "Daub cmpct on least asymm N=4"
#
#$family:
#[1] "DaubLeAsymm"
#
#$filter.number:
#[1] 4
\end{ExampleCode}
\end{Examples}

