c09 Chapter Contents
c09 Chapter Introduction
NAG Library Manual

# NAG Library Function Documentnag_imodwt (c09dbc)

## 1  Purpose

nag_imodwt (c09dbc) computes the inverse one-dimensional maximal overlap discrete wavelet transform (MODWT) at a single level. The initialization function nag_wfilt (c09aac) must be called first to set up the MODWT options.

## 2  Specification

 #include #include
 void nag_imodwt (Integer lenc, const double ca[], const double cd[], Integer n, double y[], const Integer icomm[], NagError *fail)

## 3  Description

nag_imodwt (c09dbc) performs the inverse operation of nag_modwt (c09dac). That is, given sets of ${n}_{c}$ approximation coefficients and detail coefficients, computed by nag_modwt (c09dac) using a MODWT as set up by the initialization function nag_wfilt (c09aac), on a real data array of length $n$, nag_imodwt (c09dbc) will reconstruct the data array ${y}_{i}$, for $\mathit{i}=1,2,\dots ,n$, from which the coefficients were derived.

## 4  References

Percival D B and Walden A T (2000) Wavelet Methods for Time Series Analysis Cambridge University Press

## 5  Arguments

1:     lencIntegerInput
On entry: the dimension of the arrays ca and cd.
Constraint: ${\mathbf{lenc}}\ge {n}_{c}$, where ${n}_{c}$ is the value returned in nwc by the call to the initialization function nag_wfilt (c09aac).
2:     ca[lenc]const doubleInput
On entry: the ${n}_{c}$ approximation coefficients, ${C}_{a}$. These will normally be the result of some transformation on the coefficients computed by nag_modwt (c09dac).
3:     cd[lenc]const doubleInput
On entry: the ${n}_{c}$ detail coefficients, ${C}_{d}$. These will normally be the result of some transformation on the coefficients computed by nag_modwt (c09dac).
4:     nIntegerInput
On entry: $n$, the length of the original data array from which the wavelet coefficients were computed by nag_modwt (c09dac) 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 ${C}_{a}$ and ${C}_{d}$ 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_ARRAY_DIM_LEN
On entry, array dimension lenc not large enough: ${\mathbf{lenc}}=⟨\mathit{\text{value}}⟩$ but must be at least $⟨\mathit{\text{value}}⟩$.
On entry, argument $⟨\mathit{\text{value}}⟩$ had an illegal value.
NE_INITIALIZATION
On entry, n is inconsistent with the value passed to the initialization function: ${\mathbf{n}}=⟨\mathit{\text{value}}⟩$, n should be $⟨\mathit{\text{value}}⟩$.
On entry, the initialization function nag_wfilt (c09aac) has not been called first or it has not been called with ${\mathbf{wtrans}}=\mathrm{Nag_MODWTSingle}$, or the communication array icomm has become corrupted.
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.

Not applicable.