nag_idwt (c09cbc) (PDF version)
c09 Chapter Contents
c09 Chapter Introduction
NAG Library Manual

NAG Library Function Document

nag_idwt (c09cbc)

+ Contents

    1  Purpose
    7  Accuracy
    10  Example

1  Purpose

nag_idwt (c09cbc) computes the inverse one-dimensional discrete wavelet transform (DWT) at a single level. The initialization function nag_wfilt (c09aac) must be called first to set up the DWT options.

2  Specification

#include <nag.h>
#include <nagc09.h>
void  nag_idwt (Integer lenc, const double ca[], const double cd[], Integer n, double y[], const Integer icomm[], NagError *fail)

3  Description

nag_idwt (c09cbc) performs the inverse operation of nag_dwt (c09cac). That is, given sets of nc approximation coefficients and detail coefficients, computed by nag_dwt (c09cac) using a DWT as set up by the initialization function nag_wfilt (c09aac), on a real data array of length n, nag_idwt (c09cbc) will reconstruct the data array yi, for i=1,2,,n, from which the coefficients were derived.

4  References

None.

5  Arguments

1:     lencIntegerInput
On entry: the dimension of the arrays ca and cd.
Constraint: lencnc, where nc is the value returned in nwc by the call to the initialization function nag_wfilt (c09aac).
2:     ca[lenc]const doubleInput
On entry: the nc approximation coefficients, Ca. These will normally be the result of some transformation on the coefficients computed by nag_dwt (c09cac).
3:     cd[lenc]const doubleInput
On entry: the nc detail coefficients, Cd. These will normally be the result of some transformation on the coefficients computed by nag_dwt (c09cac).
4:     nIntegerInput
On entry: n, the length of the original data array from which the wavelet coefficients were computed by nag_dwt (c09cac) and the length of the data array y that is to be reconstructed by this function.
Constraint: This must be the same as the value n passed to the initialization function nag_wfilt (c09aac).
5:     y[n]doubleOutput
On exit: the reconstructed data based on approximation and detail coefficients Ca and Cd and the transform options supplied to the initialization function nag_wfilt (c09aac).
6:     icomm[100]const IntegerCommunication Array
On entry: contains details of the discrete wavelet transform and the problem dimension and, possibly, additional information on the previously computed forward transform.
7:     failNagError *Input/Output
The NAG error argument (see Section 3.6 in the Essential Introduction).

6  Error Indicators and Warnings

NE_ALLOC_FAIL
Dynamic memory allocation failed.
NE_ARRAY_DIM_LEN
On entry, array dimension lenc not large enough: lenc=value but must be at least value.
NE_BAD_PARAM
On entry, argument value had an illegal value.
NE_INITIALIZATION
Either the initialization function has not been called first or array icomm has been corrupted.
Either the initialization function was called with wtrans=Nag_MultiLevel or array icomm has been corrupted.
On entry, n is inconsistent with the value passed to the initialization function: n=value, n should be value.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact NAG for assistance.

7  Accuracy

The accuracy of the wavelet transform depends only on the floating-point operations used in the convolution and downsampling and should thus be close to machine precision.

8  Parallelism and Performance

Not applicable.

9  Further Comments

None.

10  Example

See Section 10 in nag_dwt (c09cac).

nag_idwt (c09cbc) (PDF version)
c09 Chapter Contents
c09 Chapter Introduction
NAG Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2014