Learn R Programming

wavethresh (version 4.7.3)

conbar: Performs inverse DWT reconstruction step

Description

Wrapper to the C function conbar which is the main function in WaveThresh to do filter convolution/reconstruction with data. Although users use the wr function to perform a complete inverse discrete wavelet transform (DWT) this function repeatedly uses the conbar routine, once for each level to reconstruct the next finest level. The C conbar routine is possibly the most frequently utilized by WaveThresh.

Usage

conbar(c.in, d.in, filter)

Value

A vector containing the reconstructed coefficients.

Arguments

c.in

The father wavelet coefficients that you wish to reconstruct in this level's convolution.

d.in

The mother wavelet coefficients that you wish to reconstruct in this level's convolution.

filter

A given filter that you wish to use in the level reconstruction. This should be the output from the filter.select function.

Author

G P Nason

Details

The wr function performs the inverse wavelet transform on an wd.object class object.

Internally, the wr function uses the C conbar function. Other functions also make use of conbar and some R functions also would benefit from using the fast C code of the conbar reconstruction hence this WaveThresh function. Some of the other functions that use conbar are listed in the SEE ALSO section. Many other functions call C code that then uses the C version of conbar.

See Also

av.basis InvBasis.wp wr

Examples

Run this code
#
# Let's generate some test data, just some 32 normal variates.
#
v <- rnorm(32)
#
# Now take the wavelet transform with default filter arguments (which
# are filter.number=10, family="DaubLeAsymm")
#
vwd <- wd(v)
#
# Now, let's take an arbitrary level, say 2, and reconstruct level 3
# scaling function coefficients
#
c.in <- accessC(vwd, lev=2)
d.in <- accessD(vwd, lev=2)
#
conbar(c.in, d.in, filter.select(filter.number=10, family="DaubLeAsymm"))
#[1] -0.50368115  0.04738620 -0.90331807  1.08497622  0.90490528  0.06252717
#[7]  2.55894899 -1.26067508
#
# Ok, this was the pure reconstruction from using only level 2 information.
#
# Let's check this against the "original" level 3 coefficients (which get
# stored on the decomposition step in wd)
#
accessC(vwd, lev=3)
#[1] -0.50368115  0.04738620 -0.90331807  1.08497622  0.90490528  0.06252717
#[7]  2.55894899 -1.26067508
#
# Yep, the same numbers!
#

Run the code above in your browser using DataLab