1 // Author: Aime' Fournier
2 // E-mail: fournier@ucar.edu
5 #include "qf.h" // for pqf ...
8 // See 2009/8/4 e-mail from john@michalakes.us
11 # define DWTAI_W dwtai_w
14 # define DWTAI_W dwtai_w__
16 # define DWTAI_W dwtai_w_
21 void DWTAI_W (char *nam
,// in: filter name
22 int *ran
, // in: filter length
23 real
*u
, // in/out: data & transform
24 real
*s
, // scratch space
25 int *iv
, // v-space lengths
26 int *ia
, // w-space starts
27 int *lm
) { // maximum level
28 pqf
*g
,*h
; // wavelet hpf & lpf
31 //printf("dwtai_w::dwtai_w(%s,%2d,{%6.3f,...},{%6.3f,...},{%2d,...},{%2d,...},%2d)\n",nam,*ran,*u,*s,*iv,*ia,*lm);
33 h
=qf(nam
,*ran
,0); // assign h
34 g
=qf(nam
,*ran
,1); // assign g
35 // PrintFilter(nam,*ran,0,h);
36 // PrintFilter(nam,*ran,1,g);
38 dwtai(u
,s
,iv
,ia
,*lm
,h
,g
);
40 free(g
->fp
);free(g
);free(h
->fp
);free(h
);
43 printf(" dwtai_w: abort because *ran==0.\n");