39 vec
filter(
const vec &b,
const vec &a,
const vec &input)
45 cvec
filter(
const vec &b,
const vec &a,
const cvec &input)
51 cvec
filter(
const cvec &b,
const cvec &a,
const cvec &input)
57 cvec
filter(
const cvec &b,
const cvec &a,
const vec &input)
64 vec
filter(
const vec &b,
const int one,
const vec &input)
66 it_assert(one == 1,
"filter(): in a MA filter a=1");
71 cvec
filter(
const vec &b,
const int one,
const cvec &input)
73 it_assert(one == 1,
"filter(): in a MA filter a=1");
78 cvec
filter(
const cvec &b,
const int one,
const cvec &input)
80 it_assert(one == 1,
"filter(): in a MA filter a=1");
85 cvec
filter(
const cvec &b,
const int one,
const vec &input)
87 it_assert(one == 1,
"filter(): in a MA filter a=1");
93 vec
filter(
const int one,
const vec &a,
const vec &input)
95 it_assert(one == 1,
"filter(): in a AR filter b=1");
100 cvec
filter(
const int one,
const vec &a,
const cvec &input)
102 it_assert(one == 1,
"filter(): in a AR filter b=1");
107 cvec
filter(
const int one,
const cvec &a,
const cvec &input)
109 it_assert(one == 1,
"filter(): in a AR filter b=1");
114 cvec
filter(
const int one,
const cvec &a,
const vec &input)
116 it_assert(one == 1,
"filter(): in a AR filter b=1");
125 vec
filter(
const vec &b,
const vec &a,
const vec &input,
const vec &state_in, vec &state_out)
129 vec output = f(input);
134 cvec
filter(
const vec &b,
const vec &a,
const cvec &input,
const cvec &state_in, cvec &state_out)
138 cvec output = f(input);
143 cvec
filter(
const cvec &b,
const cvec &a,
const cvec &input,
const cvec &state_in, cvec &state_out)
147 cvec output = f(input);
152 cvec
filter(
const cvec &b,
const cvec &a,
const vec &input,
const cvec &state_in, cvec &state_out)
156 cvec output = f(input);
162 vec
filter(
const vec &b,
const int one,
const vec &input,
const vec &state_in, vec &state_out)
164 it_assert(one == 1,
"filter(): in a MA filter a=1");
167 vec output = f(input);
172 cvec
filter(
const vec &b,
const int one,
const cvec &input,
const cvec &state_in, cvec &state_out)
174 it_assert(one == 1,
"filter(): in a MA filter a=1");
177 cvec output = f(input);
182 cvec
filter(
const cvec &b,
const int one,
const cvec &input,
const cvec &state_in, cvec &state_out)
184 it_assert(one == 1,
"filter(): in a MA filter a=1");
187 cvec output = f(input);
192 cvec
filter(
const cvec &b,
const int one,
const vec &input,
const cvec &state_in, cvec &state_out)
194 it_assert(one == 1,
"filter(): in a MA filter a=1");
197 cvec output = f(input);
203 vec
filter(
const int one,
const vec &a,
const vec &input,
const vec &state_in, vec &state_out)
205 it_assert(one == 1,
"filter(): in a AR filter b=1");
208 vec output = f(input);
213 cvec
filter(
const int one,
const vec &a,
const cvec &input,
const cvec &state_in, cvec &state_out)
215 it_assert(one == 1,
"filter(): in a AR filter b=1");
218 cvec output = f(input);
223 cvec
filter(
const int one,
const cvec &a,
const cvec &input,
const cvec &state_in, cvec &state_out)
225 it_assert(one == 1,
"filter(): in a AR filter b=1");
228 cvec output = f(input);
233 cvec
filter(
const int one,
const cvec &a,
const vec &input,
const cvec &state_in, cvec &state_out)
235 it_assert(one == 1,
"filter(): in a AR filter b=1");
238 cvec output = f(input);
245 vec a(N + 1), h =
hamming(N + 1);
247 for (
int i = 0;i <
length(a);i++) {
248 a[i] = h[i] *
sinc(cutoff * (i - N / 2.0));
254 template class ITPP_EXPORT MA_Filter<double, double, double>;
255 template class ITPP_EXPORT MA_Filter < double, std::complex<double>,
256 std::complex<double> >;
257 template class ITPP_EXPORT MA_Filter<std::complex<double>, double, std::complex<double> >;
258 template class ITPP_EXPORT MA_Filter < std::complex<double>, std::complex<double>,
259 std::complex<double> >;
261 template class ITPP_EXPORT AR_Filter<double, double, double>;
262 template class ITPP_EXPORT AR_Filter < double, std::complex<double>,
263 std::complex<double> >;
264 template class ITPP_EXPORT AR_Filter < std::complex<double>, double,
265 std::complex<double> >;
266 template class ITPP_EXPORT AR_Filter < std::complex<double>, std::complex<double>,
267 std::complex<double> >;
269 template class ITPP_EXPORT ARMA_Filter<double, double, double>;
270 template class ITPP_EXPORT ARMA_Filter < double, std::complex<double>,
271 std::complex<double> >;
272 template class ITPP_EXPORT ARMA_Filter < std::complex<double>, double,
273 std::complex<double> >;
274 template class ITPP_EXPORT ARMA_Filter < std::complex<double>, std::complex<double>,
275 std::complex<double> >;