1// -------------------------------------------------------------------------
2// SWT - Scilab wavelet toolbox
3// Copyright (C) 2010-2014  Holger Nahrstaedt
4//
5// This program is free software; you can redistribute it and/or modify
6// it under the terms of the GNU General Public License as published by
7// the Free Software Foundation; either version 2 of the License, or
8// (at your option) any later version.
9//
10// This program is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13// GNU General Public License for more details.
14//
15// You should have received a copy of the GNU General Public License
16// along with this program; if not, write to the Free Software
17// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18//-------------------------------------------------------------------------
19//
20//  <-- NO CHECK ERROR OUTPUT -->
21// dwt1d  Test
22loadmatfile("-mat",get_swt_path()+"tests/unit_tests/Data.mat");
23// wavedec
24// haar
25[cA1,cD1]=dwt(s1,'haar');
26[cA2,cD2]=dwt(cA1,'haar');
27[cA3,cD3]=dwt(cA2,'haar');
28c0=[cA3 cD3 cD2 cD1];
29l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
30[c,l]=wavedec(s1,3,'haar');
31assert_checkalmostequal ( c , c0 , %eps );
32assert_checkalmostequal ( l , l0 , %eps );
33// db1
34for N=1:36
35wname="db"+sprintf("%d",N);
36[cA1,cD1]=dwt(s1,wname);
37[cA2,cD2]=dwt(cA1,wname);
38[cA3,cD3]=dwt(cA2,wname);
39c0=[cA3 cD3 cD2 cD1];
40l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
41[c,l]=wavedec(s1,3,wname);
42assert_checkalmostequal ( c , c0 , %eps );
43assert_checkalmostequal ( l , l0 , %eps );
44end;
45// coif1
46for N=1:17
47wname="coif"+sprintf("%d",N);
48[cA1,cD1]=dwt(s1,wname);
49[cA2,cD2]=dwt(cA1,wname);
50[cA3,cD3]=dwt(cA2,wname);
51c0=[cA3 cD3 cD2 cD1];
52l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
53[c,l]=wavedec(s1,3,wname);
54assert_checkalmostequal ( c , c0 , %eps );
55assert_checkalmostequal ( l , l0 , %eps );
56end;
57for N=2:20
58wname="sym"+sprintf("%d",N);
59// sym4
60[cA1,cD1]=dwt(s1,wname);
61[cA2,cD2]=dwt(cA1,wname);
62[cA3,cD3]=dwt(cA2,wname);
63c0=[cA3 cD3 cD2 cD1];
64l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
65[c,l]=wavedec(s1,3,wname);
66assert_checkalmostequal ( c , c0 , %eps );
67assert_checkalmostequal ( l , l0 , %eps );
68end;
69// bior1.1
70bior_fam=["bior1.1","bior1.3", "bior1.5", "bior2.2", "bior2.4", "bior2.6",...
71"bior2.8", "bior3.1", "bior3.3", "bior3.5", "bior3.7",...
72"bior3.9", "bior4.4", "bior5.5", "bior6.8"];
73// bior1.1
74for i=1:max(size(bior_fam))
75[cA1,cD1]=dwt(s1,bior_fam(i));
76[cA2,cD2]=dwt(cA1,bior_fam(i));
77[cA3,cD3]=dwt(cA2,bior_fam(i));
78c0=[cA3 cD3 cD2 cD1];
79l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
80[c,l]=wavedec(s1,3,bior_fam(i));
81assert_checkalmostequal ( c , c0 , %eps );
82assert_checkalmostequal ( l , l0 , %eps );
83end;
84for i=1:max(size(bior_fam))
85// wavedec type 2 iput
86Lo_D=rand(1,20,'normal');
87Hi_D=rand(1,20,'normal');
88[cA1,cD1]=dwt(s1,Lo_D,Hi_D);
89[cA2,cD2]=dwt(cA1,Lo_D,Hi_D);
90[cA3,cD3]=dwt(cA2,Lo_D,Hi_D);
91c0=[cA3 cD3 cD2 cD1];
92l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
93[c,l]=wavedec(s1,3,Lo_D,Hi_D);
94assert_checkalmostequal ( c , c0 , %eps );
95assert_checkalmostequal ( l , l0 , %eps );
96[cA1,cD1]=dwt(s1,bior_fam(i));
97[cA2,cD2]=dwt(cA1,bior_fam(i));
98[cA3,cD3]=dwt(cA2,bior_fam(i));
99[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
100c0=[cA3 cD3 cD2 cD1];
101l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
102[c,l]=wavedec(s1,3,Lo_D,Hi_D);
103assert_checkalmostequal ( c , c0 , %eps );
104assert_checkalmostequal ( l , l0 , %eps );
105end;
106// type 3
107// asymh
108for i=1:max(size(bior_fam))
109dwtmode('asymh');
110[cA1,cD1]=dwt(s1,bior_fam(i),'mode','asymh');
111[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','asymh');
112[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','asymh');
113[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
114c0=[cA3 cD3 cD2 cD1];
115l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
116[c,l]=wavedec(s1,3,Lo_D,Hi_D);
117assert_checkalmostequal ( c , c0 , %eps );
118assert_checkalmostequal ( l , l0 , %eps );
119// symw
120dwtmode('symw');
121[cA1,cD1]=dwt(s1,bior_fam(i),'mode','symw');
122[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','symw');
123[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','symw');
124[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
125c0=[cA3 cD3 cD2 cD1];
126l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
127[c,l]=wavedec(s1,3,Lo_D,Hi_D);
128assert_checkalmostequal ( c , c0 , %eps );
129assert_checkalmostequal ( l , l0 , %eps );
130// asymw
131dwtmode('asymw');
132[cA1,cD1]=dwt(s1,bior_fam(i),'mode','asymw');
133[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','asymw');
134[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','asymw');
135[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
136c0=[cA3 cD3 cD2 cD1];
137l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
138[c,l]=wavedec(s1,3,Lo_D,Hi_D);
139assert_checkalmostequal ( c , c0 , %eps );
140assert_checkalmostequal ( l , l0 , %eps );
141// zpd
142dwtmode('zpd');
143[cA1,cD1]=dwt(s1,bior_fam(i),'mode','zpd');
144[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','zpd');
145[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','zpd');
146[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
147c0=[cA3 cD3 cD2 cD1];
148l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
149[c,l]=wavedec(s1,3,Lo_D,Hi_D);
150assert_checkalmostequal ( c , c0 , %eps );
151assert_checkalmostequal ( l , l0 , %eps );
152// sp0
153dwtmode('sp0');
154[cA1,cD1]=dwt(s1,bior_fam(i),'mode','sp0');
155[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','sp0');
156[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','sp0');
157[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
158c0=[cA3 cD3 cD2 cD1];
159l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
160[c,l]=wavedec(s1,3,Lo_D,Hi_D);
161assert_checkalmostequal ( c , c0 , %eps );
162assert_checkalmostequal ( l , l0 , %eps );
163// sp1
164dwtmode('sp1');
165[cA1,cD1]=dwt(s1,bior_fam(i),'mode','sp1');
166[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','sp1');
167[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','sp1');
168[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
169c0=[cA3 cD3 cD2 cD1];
170l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
171[c,l]=wavedec(s1,3,Lo_D,Hi_D);
172assert_checkalmostequal ( c , c0 , %eps );
173assert_checkalmostequal ( l , l0 , %eps );
174// ppd
175dwtmode('ppd');
176[cA1,cD1]=dwt(s1,bior_fam(i),'mode','ppd');
177[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','ppd');
178[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','ppd');
179[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
180c0=[cA3 cD3 cD2 cD1];
181l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
182[c,l]=wavedec(s1,3,Lo_D,Hi_D);
183assert_checkalmostequal ( c , c0 , %eps );
184assert_checkalmostequal ( l , l0 , %eps );
185// per
186dwtmode('per');
187[cA1,cD1]=dwt(s1,bior_fam(i),'mode','per');
188[cA2,cD2]=dwt(cA1,bior_fam(i),'mode','per');
189[cA3,cD3]=dwt(cA2,bior_fam(i),'mode','per');
190[Lo_D,Hi_D]=wfilters(bior_fam(i),'d');
191c0=[cA3 cD3 cD2 cD1];
192l0=[length(cA3) length(cD3) length(cD2) length(cD1) length(s1)];
193[c,l]=wavedec(s1,3,Lo_D,Hi_D);
194assert_checkalmostequal ( c , c0 , %eps );
195assert_checkalmostequal ( l , l0 , %eps );
196dwtmode("symh");
197end;
198!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
199!!     WARNING: Change DWT Extension Mode   !!
200!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
201**********************************************
202** DWT Extension Mode: Half Asymmetrization **
203**********************************************
204!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
205!!     WARNING: Change DWT Extension Mode   !!
206!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
207**********************************************
208** DWT Extension Mode: Whole Symmetrization **
209**********************************************
210!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
211!!     WARNING: Change DWT Extension Mode   !!
212!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
213**********************************************
214** DWT Extension Mode: Whole Asymmetrization**
215**********************************************
216!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
217!!     WARNING: Change DWT Extension Mode   !!
218!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
219**********************************************
220**     DWT Extension Mode: Zero Padding     **
221**********************************************
222!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
223!!     WARNING: Change DWT Extension Mode   !!
224!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
225**********************************************
226** DWT Extension Mode: order 0 smooth padding*
227**********************************************
228!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
229!!     WARNING: Change DWT Extension Mode   !!
230!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
231**********************************************
232** DWT Extension Mode: order 1 smooth padding*
233**********************************************
234!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
235!!     WARNING: Change DWT Extension Mode   !!
236!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
237**********************************************
238**    DWT Extension Mode: Periodic Padding  **
239**********************************************
240!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
241!!     WARNING: Change DWT Extension Mode   !!
242!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
243**********************************************
244**    DWT Extension Mode: Periodization     **
245**********************************************
246!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
247!!     WARNING: Change DWT Extension Mode   !!
248!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
249**********************************************
250** DWT Extension Mode: Half Symmetrization  **
251**********************************************
252!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
253!!     WARNING: Change DWT Extension Mode   !!
254!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
255**********************************************
256** DWT Extension Mode: Half Asymmetrization **
257**********************************************
258!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
259!!     WARNING: Change DWT Extension Mode   !!
260!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
261**********************************************
262** DWT Extension Mode: Whole Symmetrization **
263**********************************************
264!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
265!!     WARNING: Change DWT Extension Mode   !!
266!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
267**********************************************
268** DWT Extension Mode: Whole Asymmetrization**
269**********************************************
270!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
271!!     WARNING: Change DWT Extension Mode   !!
272!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
273**********************************************
274**     DWT Extension Mode: Zero Padding     **
275**********************************************
276!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
277!!     WARNING: Change DWT Extension Mode   !!
278!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
279**********************************************
280** DWT Extension Mode: order 0 smooth padding*
281**********************************************
282!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
283!!     WARNING: Change DWT Extension Mode   !!
284!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
285**********************************************
286** DWT Extension Mode: order 1 smooth padding*
287**********************************************
288!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
289!!     WARNING: Change DWT Extension Mode   !!
290!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
291**********************************************
292**    DWT Extension Mode: Periodic Padding  **
293**********************************************
294!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
295!!     WARNING: Change DWT Extension Mode   !!
296!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
297**********************************************
298**    DWT Extension Mode: Periodization     **
299**********************************************
300!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
301!!     WARNING: Change DWT Extension Mode   !!
302!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
303**********************************************
304** DWT Extension Mode: Half Symmetrization  **
305**********************************************
306!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
307!!     WARNING: Change DWT Extension Mode   !!
308!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
309**********************************************
310** DWT Extension Mode: Half Asymmetrization **
311**********************************************
312!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
313!!     WARNING: Change DWT Extension Mode   !!
314!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
315**********************************************
316** DWT Extension Mode: Whole Symmetrization **
317**********************************************
318!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
319!!     WARNING: Change DWT Extension Mode   !!
320!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
321**********************************************
322** DWT Extension Mode: Whole Asymmetrization**
323**********************************************
324!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
325!!     WARNING: Change DWT Extension Mode   !!
326!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
327**********************************************
328**     DWT Extension Mode: Zero Padding     **
329**********************************************
330!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
331!!     WARNING: Change DWT Extension Mode   !!
332!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
333**********************************************
334** DWT Extension Mode: order 0 smooth padding*
335**********************************************
336!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
337!!     WARNING: Change DWT Extension Mode   !!
338!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
339**********************************************
340** DWT Extension Mode: order 1 smooth padding*
341**********************************************
342!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
343!!     WARNING: Change DWT Extension Mode   !!
344!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
345**********************************************
346**    DWT Extension Mode: Periodic Padding  **
347**********************************************
348!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
349!!     WARNING: Change DWT Extension Mode   !!
350!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
351**********************************************
352**    DWT Extension Mode: Periodization     **
353**********************************************
354!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
355!!     WARNING: Change DWT Extension Mode   !!
356!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
357**********************************************
358** DWT Extension Mode: Half Symmetrization  **
359**********************************************
360!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
361!!     WARNING: Change DWT Extension Mode   !!
362!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
363**********************************************
364** DWT Extension Mode: Half Asymmetrization **
365**********************************************
366!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
367!!     WARNING: Change DWT Extension Mode   !!
368!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
369**********************************************
370** DWT Extension Mode: Whole Symmetrization **
371**********************************************
372!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
373!!     WARNING: Change DWT Extension Mode   !!
374!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
375**********************************************
376** DWT Extension Mode: Whole Asymmetrization**
377**********************************************
378!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
379!!     WARNING: Change DWT Extension Mode   !!
380!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
381**********************************************
382**     DWT Extension Mode: Zero Padding     **
383**********************************************
384!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
385!!     WARNING: Change DWT Extension Mode   !!
386!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
387**********************************************
388** DWT Extension Mode: order 0 smooth padding*
389**********************************************
390!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
391!!     WARNING: Change DWT Extension Mode   !!
392!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
393**********************************************
394** DWT Extension Mode: order 1 smooth padding*
395**********************************************
396!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
397!!     WARNING: Change DWT Extension Mode   !!
398!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
399**********************************************
400**    DWT Extension Mode: Periodic Padding  **
401**********************************************
402!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
403!!     WARNING: Change DWT Extension Mode   !!
404!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
405**********************************************
406**    DWT Extension Mode: Periodization     **
407**********************************************
408!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
409!!     WARNING: Change DWT Extension Mode   !!
410!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
411**********************************************
412** DWT Extension Mode: Half Symmetrization  **
413**********************************************
414!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
415!!     WARNING: Change DWT Extension Mode   !!
416!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
417**********************************************
418** DWT Extension Mode: Half Asymmetrization **
419**********************************************
420!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
421!!     WARNING: Change DWT Extension Mode   !!
422!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
423**********************************************
424** DWT Extension Mode: Whole Symmetrization **
425**********************************************
426!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
427!!     WARNING: Change DWT Extension Mode   !!
428!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
429**********************************************
430** DWT Extension Mode: Whole Asymmetrization**
431**********************************************
432!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
433!!     WARNING: Change DWT Extension Mode   !!
434!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
435**********************************************
436**     DWT Extension Mode: Zero Padding     **
437**********************************************
438!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
439!!     WARNING: Change DWT Extension Mode   !!
440!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
441**********************************************
442** DWT Extension Mode: order 0 smooth padding*
443**********************************************
444!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
445!!     WARNING: Change DWT Extension Mode   !!
446!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
447**********************************************
448** DWT Extension Mode: order 1 smooth padding*
449**********************************************
450!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
451!!     WARNING: Change DWT Extension Mode   !!
452!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
453**********************************************
454**    DWT Extension Mode: Periodic Padding  **
455**********************************************
456!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
457!!     WARNING: Change DWT Extension Mode   !!
458!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
459**********************************************
460**    DWT Extension Mode: Periodization     **
461**********************************************
462!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
463!!     WARNING: Change DWT Extension Mode   !!
464!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
465**********************************************
466** DWT Extension Mode: Half Symmetrization  **
467**********************************************
468!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
469!!     WARNING: Change DWT Extension Mode   !!
470!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
471**********************************************
472** DWT Extension Mode: Half Asymmetrization **
473**********************************************
474!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
475!!     WARNING: Change DWT Extension Mode   !!
476!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
477**********************************************
478** DWT Extension Mode: Whole Symmetrization **
479**********************************************
480!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
481!!     WARNING: Change DWT Extension Mode   !!
482!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
483**********************************************
484** DWT Extension Mode: Whole Asymmetrization**
485**********************************************
486!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
487!!     WARNING: Change DWT Extension Mode   !!
488!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
489**********************************************
490**     DWT Extension Mode: Zero Padding     **
491**********************************************
492!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
493!!     WARNING: Change DWT Extension Mode   !!
494!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
495**********************************************
496** DWT Extension Mode: order 0 smooth padding*
497**********************************************
498!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
499!!     WARNING: Change DWT Extension Mode   !!
500!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
501**********************************************
502** DWT Extension Mode: order 1 smooth padding*
503**********************************************
504!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
505!!     WARNING: Change DWT Extension Mode   !!
506!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
507**********************************************
508**    DWT Extension Mode: Periodic Padding  **
509**********************************************
510!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
511!!     WARNING: Change DWT Extension Mode   !!
512!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
513**********************************************
514**    DWT Extension Mode: Periodization     **
515**********************************************
516!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
517!!     WARNING: Change DWT Extension Mode   !!
518!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
519**********************************************
520** DWT Extension Mode: Half Symmetrization  **
521**********************************************
522!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
523!!     WARNING: Change DWT Extension Mode   !!
524!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
525**********************************************
526** DWT Extension Mode: Half Asymmetrization **
527**********************************************
528!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
529!!     WARNING: Change DWT Extension Mode   !!
530!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
531**********************************************
532** DWT Extension Mode: Whole Symmetrization **
533**********************************************
534!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
535!!     WARNING: Change DWT Extension Mode   !!
536!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
537**********************************************
538** DWT Extension Mode: Whole Asymmetrization**
539**********************************************
540!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
541!!     WARNING: Change DWT Extension Mode   !!
542!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
543**********************************************
544**     DWT Extension Mode: Zero Padding     **
545**********************************************
546!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
547!!     WARNING: Change DWT Extension Mode   !!
548!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
549**********************************************
550** DWT Extension Mode: order 0 smooth padding*
551**********************************************
552!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
553!!     WARNING: Change DWT Extension Mode   !!
554!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
555**********************************************
556** DWT Extension Mode: order 1 smooth padding*
557**********************************************
558!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
559!!     WARNING: Change DWT Extension Mode   !!
560!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
561**********************************************
562**    DWT Extension Mode: Periodic Padding  **
563**********************************************
564!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
565!!     WARNING: Change DWT Extension Mode   !!
566!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
567**********************************************
568**    DWT Extension Mode: Periodization     **
569**********************************************
570!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
571!!     WARNING: Change DWT Extension Mode   !!
572!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
573**********************************************
574** DWT Extension Mode: Half Symmetrization  **
575**********************************************
576!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
577!!     WARNING: Change DWT Extension Mode   !!
578!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
579**********************************************
580** DWT Extension Mode: Half Asymmetrization **
581**********************************************
582!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
583!!     WARNING: Change DWT Extension Mode   !!
584!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
585**********************************************
586** DWT Extension Mode: Whole Symmetrization **
587**********************************************
588!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
589!!     WARNING: Change DWT Extension Mode   !!
590!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
591**********************************************
592** DWT Extension Mode: Whole Asymmetrization**
593**********************************************
594!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
595!!     WARNING: Change DWT Extension Mode   !!
596!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
597**********************************************
598**     DWT Extension Mode: Zero Padding     **
599**********************************************
600!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
601!!     WARNING: Change DWT Extension Mode   !!
602!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
603**********************************************
604** DWT Extension Mode: order 0 smooth padding*
605**********************************************
606!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
607!!     WARNING: Change DWT Extension Mode   !!
608!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
609**********************************************
610** DWT Extension Mode: order 1 smooth padding*
611**********************************************
612!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
613!!     WARNING: Change DWT Extension Mode   !!
614!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
615**********************************************
616**    DWT Extension Mode: Periodic Padding  **
617**********************************************
618!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
619!!     WARNING: Change DWT Extension Mode   !!
620!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
621**********************************************
622**    DWT Extension Mode: Periodization     **
623**********************************************
624!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
625!!     WARNING: Change DWT Extension Mode   !!
626!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
627**********************************************
628** DWT Extension Mode: Half Symmetrization  **
629**********************************************
630!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
631!!     WARNING: Change DWT Extension Mode   !!
632!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
633**********************************************
634** DWT Extension Mode: Half Asymmetrization **
635**********************************************
636!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
637!!     WARNING: Change DWT Extension Mode   !!
638!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
639**********************************************
640** DWT Extension Mode: Whole Symmetrization **
641**********************************************
642!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
643!!     WARNING: Change DWT Extension Mode   !!
644!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
645**********************************************
646** DWT Extension Mode: Whole Asymmetrization**
647**********************************************
648!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
649!!     WARNING: Change DWT Extension Mode   !!
650!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
651**********************************************
652**     DWT Extension Mode: Zero Padding     **
653**********************************************
654!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
655!!     WARNING: Change DWT Extension Mode   !!
656!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
657**********************************************
658** DWT Extension Mode: order 0 smooth padding*
659**********************************************
660!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
661!!     WARNING: Change DWT Extension Mode   !!
662!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
663**********************************************
664** DWT Extension Mode: order 1 smooth padding*
665**********************************************
666!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
667!!     WARNING: Change DWT Extension Mode   !!
668!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
669**********************************************
670**    DWT Extension Mode: Periodic Padding  **
671**********************************************
672!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
673!!     WARNING: Change DWT Extension Mode   !!
674!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
675**********************************************
676**    DWT Extension Mode: Periodization     **
677**********************************************
678!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
679!!     WARNING: Change DWT Extension Mode   !!
680!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
681**********************************************
682** DWT Extension Mode: Half Symmetrization  **
683**********************************************
684!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
685!!     WARNING: Change DWT Extension Mode   !!
686!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
687**********************************************
688** DWT Extension Mode: Half Asymmetrization **
689**********************************************
690!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
691!!     WARNING: Change DWT Extension Mode   !!
692!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
693**********************************************
694** DWT Extension Mode: Whole Symmetrization **
695**********************************************
696!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
697!!     WARNING: Change DWT Extension Mode   !!
698!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
699**********************************************
700** DWT Extension Mode: Whole Asymmetrization**
701**********************************************
702!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
703!!     WARNING: Change DWT Extension Mode   !!
704!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
705**********************************************
706**     DWT Extension Mode: Zero Padding     **
707**********************************************
708!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
709!!     WARNING: Change DWT Extension Mode   !!
710!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
711**********************************************
712** DWT Extension Mode: order 0 smooth padding*
713**********************************************
714!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
715!!     WARNING: Change DWT Extension Mode   !!
716!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
717**********************************************
718** DWT Extension Mode: order 1 smooth padding*
719**********************************************
720!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
721!!     WARNING: Change DWT Extension Mode   !!
722!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
723**********************************************
724**    DWT Extension Mode: Periodic Padding  **
725**********************************************
726!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
727!!     WARNING: Change DWT Extension Mode   !!
728!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
729**********************************************
730**    DWT Extension Mode: Periodization     **
731**********************************************
732!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
733!!     WARNING: Change DWT Extension Mode   !!
734!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
735**********************************************
736** DWT Extension Mode: Half Symmetrization  **
737**********************************************
738!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
739!!     WARNING: Change DWT Extension Mode   !!
740!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
741**********************************************
742** DWT Extension Mode: Half Asymmetrization **
743**********************************************
744!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
745!!     WARNING: Change DWT Extension Mode   !!
746!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
747**********************************************
748** DWT Extension Mode: Whole Symmetrization **
749**********************************************
750!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
751!!     WARNING: Change DWT Extension Mode   !!
752!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
753**********************************************
754** DWT Extension Mode: Whole Asymmetrization**
755**********************************************
756!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
757!!     WARNING: Change DWT Extension Mode   !!
758!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
759**********************************************
760**     DWT Extension Mode: Zero Padding     **
761**********************************************
762!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
763!!     WARNING: Change DWT Extension Mode   !!
764!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
765**********************************************
766** DWT Extension Mode: order 0 smooth padding*
767**********************************************
768!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
769!!     WARNING: Change DWT Extension Mode   !!
770!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
771**********************************************
772** DWT Extension Mode: order 1 smooth padding*
773**********************************************
774!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
775!!     WARNING: Change DWT Extension Mode   !!
776!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
777**********************************************
778**    DWT Extension Mode: Periodic Padding  **
779**********************************************
780!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
781!!     WARNING: Change DWT Extension Mode   !!
782!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
783**********************************************
784**    DWT Extension Mode: Periodization     **
785**********************************************
786!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
787!!     WARNING: Change DWT Extension Mode   !!
788!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
789**********************************************
790** DWT Extension Mode: Half Symmetrization  **
791**********************************************
792!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
793!!     WARNING: Change DWT Extension Mode   !!
794!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
795**********************************************
796** DWT Extension Mode: Half Asymmetrization **
797**********************************************
798!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
799!!     WARNING: Change DWT Extension Mode   !!
800!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
801**********************************************
802** DWT Extension Mode: Whole Symmetrization **
803**********************************************
804!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
805!!     WARNING: Change DWT Extension Mode   !!
806!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
807**********************************************
808** DWT Extension Mode: Whole Asymmetrization**
809**********************************************
810!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
811!!     WARNING: Change DWT Extension Mode   !!
812!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
813**********************************************
814**     DWT Extension Mode: Zero Padding     **
815**********************************************
816!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
817!!     WARNING: Change DWT Extension Mode   !!
818!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
819**********************************************
820** DWT Extension Mode: order 0 smooth padding*
821**********************************************
822!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
823!!     WARNING: Change DWT Extension Mode   !!
824!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
825**********************************************
826** DWT Extension Mode: order 1 smooth padding*
827**********************************************
828!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
829!!     WARNING: Change DWT Extension Mode   !!
830!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
831**********************************************
832**    DWT Extension Mode: Periodic Padding  **
833**********************************************
834!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
835!!     WARNING: Change DWT Extension Mode   !!
836!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
837**********************************************
838**    DWT Extension Mode: Periodization     **
839**********************************************
840!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
841!!     WARNING: Change DWT Extension Mode   !!
842!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
843**********************************************
844** DWT Extension Mode: Half Symmetrization  **
845**********************************************
846!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
847!!     WARNING: Change DWT Extension Mode   !!
848!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
849**********************************************
850** DWT Extension Mode: Half Asymmetrization **
851**********************************************
852!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
853!!     WARNING: Change DWT Extension Mode   !!
854!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
855**********************************************
856** DWT Extension Mode: Whole Symmetrization **
857**********************************************
858!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
859!!     WARNING: Change DWT Extension Mode   !!
860!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
861**********************************************
862** DWT Extension Mode: Whole Asymmetrization**
863**********************************************
864!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
865!!     WARNING: Change DWT Extension Mode   !!
866!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
867**********************************************
868**     DWT Extension Mode: Zero Padding     **
869**********************************************
870!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
871!!     WARNING: Change DWT Extension Mode   !!
872!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
873**********************************************
874** DWT Extension Mode: order 0 smooth padding*
875**********************************************
876!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
877!!     WARNING: Change DWT Extension Mode   !!
878!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
879**********************************************
880** DWT Extension Mode: order 1 smooth padding*
881**********************************************
882!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
883!!     WARNING: Change DWT Extension Mode   !!
884!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
885**********************************************
886**    DWT Extension Mode: Periodic Padding  **
887**********************************************
888!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
889!!     WARNING: Change DWT Extension Mode   !!
890!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
891**********************************************
892**    DWT Extension Mode: Periodization     **
893**********************************************
894!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
895!!     WARNING: Change DWT Extension Mode   !!
896!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
897**********************************************
898** DWT Extension Mode: Half Symmetrization  **
899**********************************************
900!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
901!!     WARNING: Change DWT Extension Mode   !!
902!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
903**********************************************
904** DWT Extension Mode: Half Asymmetrization **
905**********************************************
906!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
907!!     WARNING: Change DWT Extension Mode   !!
908!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
909**********************************************
910** DWT Extension Mode: Whole Symmetrization **
911**********************************************
912!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
913!!     WARNING: Change DWT Extension Mode   !!
914!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
915**********************************************
916** DWT Extension Mode: Whole Asymmetrization**
917**********************************************
918!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
919!!     WARNING: Change DWT Extension Mode   !!
920!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
921**********************************************
922**     DWT Extension Mode: Zero Padding     **
923**********************************************
924!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
925!!     WARNING: Change DWT Extension Mode   !!
926!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
927**********************************************
928** DWT Extension Mode: order 0 smooth padding*
929**********************************************
930!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
931!!     WARNING: Change DWT Extension Mode   !!
932!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
933**********************************************
934** DWT Extension Mode: order 1 smooth padding*
935**********************************************
936!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
937!!     WARNING: Change DWT Extension Mode   !!
938!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
939**********************************************
940**    DWT Extension Mode: Periodic Padding  **
941**********************************************
942!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
943!!     WARNING: Change DWT Extension Mode   !!
944!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
945**********************************************
946**    DWT Extension Mode: Periodization     **
947**********************************************
948!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
949!!     WARNING: Change DWT Extension Mode   !!
950!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
951**********************************************
952** DWT Extension Mode: Half Symmetrization  **
953**********************************************
954!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
955!!     WARNING: Change DWT Extension Mode   !!
956!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
957**********************************************
958** DWT Extension Mode: Half Asymmetrization **
959**********************************************
960!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
961!!     WARNING: Change DWT Extension Mode   !!
962!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
963**********************************************
964** DWT Extension Mode: Whole Symmetrization **
965**********************************************
966!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
967!!     WARNING: Change DWT Extension Mode   !!
968!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
969**********************************************
970** DWT Extension Mode: Whole Asymmetrization**
971**********************************************
972!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
973!!     WARNING: Change DWT Extension Mode   !!
974!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
975**********************************************
976**     DWT Extension Mode: Zero Padding     **
977**********************************************
978!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
979!!     WARNING: Change DWT Extension Mode   !!
980!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
981**********************************************
982** DWT Extension Mode: order 0 smooth padding*
983**********************************************
984!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
985!!     WARNING: Change DWT Extension Mode   !!
986!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
987**********************************************
988** DWT Extension Mode: order 1 smooth padding*
989**********************************************
990!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
991!!     WARNING: Change DWT Extension Mode   !!
992!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
993**********************************************
994**    DWT Extension Mode: Periodic Padding  **
995**********************************************
996!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
997!!     WARNING: Change DWT Extension Mode   !!
998!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
999**********************************************
1000**    DWT Extension Mode: Periodization     **
1001**********************************************
1002!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1003!!     WARNING: Change DWT Extension Mode   !!
1004!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1005**********************************************
1006** DWT Extension Mode: Half Symmetrization  **
1007**********************************************
1008