coherent WaveBurst
Library Reference Guide
home
cWB_docker
git
cWB
library
wat
Meyer.hh
Go to the documentation of this file.
1
/*
2
# Copyright (C) 2019 Sergey Klimenko
3
#
4
# This program is free software: you can redistribute it and/or modify
5
# it under the terms of the GNU General Public License as published by
6
# the Free Software Foundation, either version 3 of the License, or
7
# (at your option) any later version.
8
#
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
# GNU General Public License for more details.
13
#
14
# You should have received a copy of the GNU General Public License
15
# along with this program. If not, see <https://www.gnu.org/licenses/>.
16
*/
17
18
19
// Wavelet Analysis Tool
20
//--------------------------------------------------------------------
21
// Implementation of
22
// Meyer wavelets using Fast Wavelet Transform
23
// References:
24
//--------------------------------------------------------------------
25
26
//$Id: Meyer.hh,v 0.2 2001/08/06 19:37:00 klimenko Exp $
27
#ifndef MEYER_HH
28
#define MEYER_HH
29
30
#include "
WaveDWT.hh
"
31
32
//namespace datacondAPI {
33
//namespace wat {
34
35
template
<
class
DataType_t>
36
class
Meyer
:
public
WaveDWT
<DataType_t>
37
{
38
private
:
39
40
//: forward LP filter coefficients.
41
double
*
pLForward
;
//!
42
//: inverse LP filter coefficients.
43
double
*
pLInverse
;
//!
44
//: forward LP filter coefficients.
45
double
*
pHForward
;
//!
46
//: inverse LP filter coefficients.
47
double
*
pHInverse
;
//!
48
49
void
setFilter
();
50
51
public
:
52
53
//: default construct
54
Meyer
();
55
56
//: construct from base class
57
Meyer
(
const
Wavelet
&);
58
59
//: copy constructors
60
Meyer
(
const
Meyer<DataType_t>
&);
61
62
//: construct from wavelet parameters
63
Meyer
(
int
m
,
int
tree
=0,
enum
BORDER
border=
B_CYCLE
);
64
65
//: destructor
66
virtual
~Meyer
();
67
68
//: Duplicate on heap
69
virtual
Meyer
*
Clone
()
const
;
70
71
//: calculate wavelet filter
72
//!param: taper function order n
73
//!param: beta(n,n) - value of Euler's beta function
74
//!param: integration step
75
double
filter
(
int
,
double
,
double
=1.
e
-6);
76
77
// get maximum possible level of decomposition
78
int
getMaxLevel
();
79
80
//: decomposition method
81
virtual
void
forward
(
int
level,
int
layer);
82
//: reconstruction method
83
virtual
void
inverse
(
int
level,
int
layer);
84
85
ClassDef(
Meyer
,1);
86
87
};
// class Meyer
88
89
//}; // namespace wat
90
//}; // namespace datacondAPI
91
92
#endif // MEYER_HH
93
tree
TTree * tree
Definition:
TimeSortTree.C:20
Meyer::pLInverse
double * pLInverse
Definition:
Meyer.hh:43
Meyer::setFilter
void setFilter()
Definition:
Meyer.cc:628
B_CYCLE
Definition:
Wavelet.hh:37
WaveDWT
Definition:
WaveDWT.hh:44
BORDER
BORDER
Definition:
Wavelet.hh:36
Wavelet
Definition:
Wavelet.hh:51
m
int m
Definition:
cwb_net.C:28
Meyer::filter
double filter(int, double, double=1.e-6)
param: taper function order n param: beta(n,n) - value of Euler's beta function param: integration st...
Definition:
Meyer.cc:585
Meyer::inverse
virtual void inverse(int level, int layer)
Definition:
Meyer.cc:715
Meyer::~Meyer
virtual ~Meyer()
Definition:
Meyer.cc:541
Meyer::Meyer
Meyer()
Definition:
Meyer.cc:496
WaveDWT.hh
Meyer::forward
virtual void forward(int level, int layer)
Definition:
Meyer.cc:698
e
double e
Definition:
CreateListEBBH.C:35
Meyer::Clone
virtual Meyer * Clone() const
return: Wavelet* - duplicate of *this, allocated on heap
Definition:
Meyer.cc:551
Meyer::pHInverse
double * pHInverse
Definition:
Meyer.hh:47
Meyer
Definition:
Meyer.hh:36
Meyer::pHForward
double * pHForward
Definition:
Meyer.hh:45
Meyer::getMaxLevel
int getMaxLevel()
Definition:
Meyer.cc:557
Meyer::pLForward
double * pLForward
Definition:
Meyer.hh:41