SoDaRadio-5.0.3-master:8901fb5
SoDa_filter_tables.hxx
Go to the documentation of this file.
1 /*
2 Copyright (c) 2013, Matthew H. Reilly (kb1vc)
3 All rights reserved.
4 
5 Redistribution and use in source and binary forms, with or without
6 modification, are permitted provided that the following conditions are
7 met:
8 
9  Redistributions of source code must retain the above copyright
10  notice, this list of conditions and the following disclaimer.
11  Redistributions in binary form must reproduce the above copyright
12  notice, this list of conditions and the following disclaimer in
13  the documentation and/or other materials provided with the
14  distribution.
15 
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28 
29 static unsigned int filt_len_1div26 = 511;
30 static float filt_1div26[511] = {
31  1.680273904475e-06,
32  -1.6244566929945e-06,
33  -1.5300968104647e-06,
34  -1.565354998225e-06,
35  -1.4999390280178e-06,
36  -1.1937050824864e-06,
37  -5.9539320669335e-07,
38  2.5270526121954e-07,
39  1.222597560009e-06,
40  2.1203038774723e-06,
41  2.7255776320599e-06,
42  2.8396209637608e-06,
43  2.33910763485e-06,
44  1.2181292813928e-06,
45  -3.8689096292933e-07,
46  -2.2049084537432e-06,
47  -3.8670006286119e-06,
48  -4.9757063082257e-06,
49  -5.1887358112865e-06,
50  -4.3077605268192e-06,
51  -2.3445301802805e-06,
52  4.4588432585355e-07,
53  3.5861561462035e-06,
54  6.4462017694039e-06,
55  8.3624066104051e-06,
56  8.7765480707888e-06,
57  7.3770915118682e-06,
58  4.1999551630486e-06,
59  -3.2661491035316e-07,
60  -5.4241973228553e-06,
61  -1.0081182521136e-05,
62  -1.3244732479359e-05,
63  -1.4038023137129e-05,
64  -1.1978170010217e-05,
65  -7.1257073539242e-06,
66  -1.4885992404665e-07,
67  7.7511541731454e-06,
68  1.5019245852025e-05,
69  2.0048306950441e-05,
70  2.1504213807673e-05,
71  1.8643334874083e-05,
72  1.1562533146525e-05,
73  1.2337293091249e-06,
74  -1.0556505514041e-05,
75  -2.151186626757e-05,
76  -2.9248626959849e-05,
77  -3.1793813382171e-05,
78  -2.8037837219211e-05,
79  -1.8069021438733e-05,
80  -3.2807474766559e-06,
81  1.3775467718835e-05,
82  2.9805358360326e-05,
83  4.1379155147818e-05,
84  4.5637450825155e-05,
85  4.0943700438919e-05,
86  2.7353359078831e-05,
87  6.7707570647735e-06,
88  -1.7259332139243e-05,
89  -4.0128239009182e-05,
90  -5.7013390179708e-05,
91  -6.3860194845464e-05,
92  -5.829406074794e-05,
93  -4.0274655013767e-05,
94  -1.2322746897448e-05,
95  2.0758577326924e-05,
96  5.2666089785016e-05,
97  7.6756722090184e-05,
98  8.7388608805748e-05,
99  8.1171513312546e-05,
100  5.7869010687563e-05,
101  2.0724622156218e-05,
102  -2.3895604300257e-05,
103  -6.7541289692115e-05,
104  -0.0001012285030712,
105  -0.00011724045761939,
106  -0.00011081253930984,
107  -8.136348136744e-05,
108  -3.295715788208e-05,
109  2.6134620615585e-05,
110  8.4783349706533e-05,
111  0.00013104233951771,
112  0.00015451543646022,
113  0.00014861218729837,
114  0.00011218939136102,
115  5.0216524046173e-05,
116  -2.6755292037443e-05,
117  -0.0001043052492165,
118  -0.00016678038008235,
119  -0.0002003840563328,
120  -0.00019612317390798,
121  -0.00015199834675143,
122  -7.3936337669061e-05,
123  2.4822193163835e-05,
124  0.00012586736754528,
125  0.0002089742191227,
126  0.00025606997672768,
127  0.00025505233235606,
128  0.00020267034123397,
129  0.00010581545767778,
130  -1.9153073797136e-05,
131  -0.00014904974200726,
132  -0.00025807263786077,
133  -0.00032283619315853,
134  -0.00032726262407874,
135  -0.00026633025169564,
136  -0.00014784094190388,
137  8.2857751208968e-06,
138  0.00017321510806985,
139  0.00031441509914822,
140  0.00040196783495181,
141  0.00041477019689028,
142  0.00034536182716851,
143  0.00020231696556264,
144  9.5566088944862e-06,
145  -0.00019747531274957,
146  -0.00037820545940373,
147  -0.00049475928015541,
148  -0.00051974840016935,
149  -0.00044242789011442,
150  -0.0002718972378083,
151  -3.6504948962514e-05,
152  0.00022065569393961,
153  0.00044948645985205,
154  0.00060250785869166,
155  0.00064454089139156,
156  0.0005605016430966,
157  0.00035962955065783,
158  7.508878258262e-05,
159  -0.0002412552840522,
160  -0.000528117974199,
161  -0.00072651215884997,
162  -0.0007916878363031,
163  -0.00070291378621573,
164  -0.00046901272893823,
165  -0.00012829724321646,
166  0.00025740275361746,
167  0.00061375906038744,
168  0.00086808994837095,
169  0.00096397282699303,
170  0.00087342598349219,
171  0.00060408449121597,
172  0.00019965646382121,
173  -0.00026680371290455,
174  -0.00070585500331198,
175  -0.0010286128752617,
176  -0.0011645066553526,
177  -0.0010763468085516,
178  -0.00076954640031569,
179  -0.00029334001044448,
180  0.00026667251172503,
181  0.00080363277742917,
182  0.0012095738128497,
183  0.0013968602399728,
184  0.0013167108468645,
185  0.00097095583490026,
186  0.0004143327970039,
187  -0.00025363648350159,
188  -0.00090610274637139,
189  -0.001412698548023,
190  -0.0016652761419825,
191  -0.0016005563633482,
192  -0.0012150196342638,
193  -0.00056867749918601,
194  0.00022359429409424,
195  0.0010120678938914,
196  0.001640123421577,
197  0.0019749985885014,
198  0.0019353587564323,
199  0.0015100486093827,
200  0.00076385747128477,
201  -0.00017150035819999,
202  -0.0011201413374772,
203  -0.0018946763448478,
204  -0.0023327953833354,
205  -0.0023307119047785,
206  -0.00186667634085,
207  -0.001009402314123,
208  9.1017075291069e-05,
209  0.0012287727737307,
210  0.0021803237508161,
211  0.0027477886336742,
212  0.0027994225419614,
213  0.002299019421007,
214  0.0013178718552572,
215  2.6052966989459e-05,
216  -0.0013362813783145,
217  -0.0025028916202957,
218  -0.0032328164852377,
219  -0.0033593166354209,
220  -0.0028266060337799,
221  -0.0017065076348778,
222  -0.00019073532272105,
223  0.0014408957760575,
224  0.0028712735297191,
225  0.0038067426460222,
226  0.0040363328533985,
227  0.0034777103688489,
228  0.0022001159510382,
229  0.00041859868861509,
230  -0.0015407987893125,
231  -0.0032995500288114,
232  -0.0044985665685266,
233  -0.0048700885654964,
234  -0.0042954127780636,
235  -0.0028363656373215,
236  -0.00073295071662085,
237  0.001634176593676,
238  0.0038109390632562,
239  0.0053552023221401,
240  0.0059245401706376,
241  0.0053493480023152,
242  0.0036761856570885,
243  0.0011712046631145,
244  -0.0017192695609103,
245  -0.0044457584317653,
246  -0.0064574059105068,
247  -0.0073101277440499,
248  -0.0067604606460321,
249  -0.0048260100521972,
250  -0.0017987320023106,
251  0.0017944241944808,
252  0.0052791707032207,
253  0.0079559367401903,
254  0.0092349723325888,
255  0.0087593204909562,
256  0.0064912111027159,
257  0.0027428427372826,
258  -0.0018581429596543,
259  -0.0064664514478228,
260  -0.010166071679114,
261  -0.012142049325975,
262  -0.011846489091411,
263  -0.0091271469682928,
264  -0.0042917164090549,
265  0.0019091302284589,
266  0.0083832080002765,
267  0.013870938793518,
268  0.017166356601196,
269  0.017349055969659,
270  0.01398673708668,
271  0.0072704295796395,
272  -0.0019463326613257,
273  -0.012218431855017,
274  -0.021686330464393,
275  -0.028337468590761,
276  -0.030314525790993,
277  -0.026223383657234,
278  -0.015391238328727,
279  0.0019689725410151,
280  0.024718539959698,
281  0.050889460364741,
282  0.077908374901436,
283  0.10291862234549,
284  0.12315494756724,
285  0.13631619061897,
286  0.14088057009809,
287  0.13631619061897,
288  0.12315494756724,
289  0.10291862234549,
290  0.077908374901436,
291  0.050889460364741,
292  0.024718539959698,
293  0.0019689725410151,
294  -0.015391238328727,
295  -0.026223383657234,
296  -0.030314525790993,
297  -0.028337468590761,
298  -0.021686330464393,
299  -0.012218431855017,
300  -0.0019463326613257,
301  0.0072704295796395,
302  0.01398673708668,
303  0.017349055969659,
304  0.017166356601196,
305  0.013870938793518,
306  0.0083832080002765,
307  0.0019091302284589,
308  -0.0042917164090549,
309  -0.0091271469682928,
310  -0.011846489091411,
311  -0.012142049325975,
312  -0.010166071679114,
313  -0.0064664514478228,
314  -0.0018581429596543,
315  0.0027428427372826,
316  0.0064912111027159,
317  0.0087593204909562,
318  0.0092349723325888,
319  0.0079559367401903,
320  0.0052791707032207,
321  0.0017944241944808,
322  -0.0017987320023106,
323  -0.0048260100521972,
324  -0.0067604606460321,
325  -0.0073101277440499,
326  -0.0064574059105068,
327  -0.0044457584317653,
328  -0.0017192695609103,
329  0.0011712046631145,
330  0.0036761856570885,
331  0.0053493480023152,
332  0.0059245401706376,
333  0.0053552023221401,
334  0.0038109390632562,
335  0.001634176593676,
336  -0.00073295071662085,
337  -0.0028363656373215,
338  -0.0042954127780636,
339  -0.0048700885654964,
340  -0.0044985665685266,
341  -0.0032995500288114,
342  -0.0015407987893125,
343  0.00041859868861509,
344  0.0022001159510382,
345  0.0034777103688489,
346  0.0040363328533985,
347  0.0038067426460222,
348  0.0028712735297191,
349  0.0014408957760575,
350  -0.00019073532272105,
351  -0.0017065076348778,
352  -0.0028266060337799,
353  -0.0033593166354209,
354  -0.0032328164852377,
355  -0.0025028916202957,
356  -0.0013362813783145,
357  2.6052966989459e-05,
358  0.0013178718552572,
359  0.002299019421007,
360  0.0027994225419614,
361  0.0027477886336742,
362  0.0021803237508161,
363  0.0012287727737307,
364  9.1017075291069e-05,
365  -0.001009402314123,
366  -0.00186667634085,
367  -0.0023307119047785,
368  -0.0023327953833354,
369  -0.0018946763448478,
370  -0.0011201413374772,
371  -0.00017150035819999,
372  0.00076385747128477,
373  0.0015100486093827,
374  0.0019353587564323,
375  0.0019749985885014,
376  0.001640123421577,
377  0.0010120678938914,
378  0.00022359429409424,
379  -0.00056867749918601,
380  -0.0012150196342638,
381  -0.0016005563633482,
382  -0.0016652761419825,
383  -0.001412698548023,
384  -0.00090610274637139,
385  -0.00025363648350159,
386  0.0004143327970039,
387  0.00097095583490026,
388  0.0013167108468645,
389  0.0013968602399728,
390  0.0012095738128497,
391  0.00080363277742917,
392  0.00026667251172503,
393  -0.00029334001044448,
394  -0.00076954640031569,
395  -0.0010763468085516,
396  -0.0011645066553526,
397  -0.0010286128752617,
398  -0.00070585500331198,
399  -0.00026680371290455,
400  0.00019965646382121,
401  0.00060408449121597,
402  0.00087342598349219,
403  0.00096397282699303,
404  0.00086808994837095,
405  0.00061375906038744,
406  0.00025740275361746,
407  -0.00012829724321646,
408  -0.00046901272893823,
409  -0.00070291378621573,
410  -0.0007916878363031,
411  -0.00072651215884997,
412  -0.000528117974199,
413  -0.0002412552840522,
414  7.508878258262e-05,
415  0.00035962955065783,
416  0.0005605016430966,
417  0.00064454089139156,
418  0.00060250785869166,
419  0.00044948645985205,
420  0.00022065569393961,
421  -3.6504948962514e-05,
422  -0.0002718972378083,
423  -0.00044242789011442,
424  -0.00051974840016935,
425  -0.00049475928015541,
426  -0.00037820545940373,
427  -0.00019747531274957,
428  9.5566088944862e-06,
429  0.00020231696556264,
430  0.00034536182716851,
431  0.00041477019689028,
432  0.00040196783495181,
433  0.00031441509914822,
434  0.00017321510806985,
435  8.2857751208968e-06,
436  -0.00014784094190388,
437  -0.00026633025169564,
438  -0.00032726262407874,
439  -0.00032283619315853,
440  -0.00025807263786077,
441  -0.00014904974200726,
442  -1.9153073797136e-05,
443  0.00010581545767778,
444  0.00020267034123397,
445  0.00025505233235606,
446  0.00025606997672768,
447  0.0002089742191227,
448  0.00012586736754528,
449  2.4822193163835e-05,
450  -7.3936337669061e-05,
451  -0.00015199834675143,
452  -0.00019612317390798,
453  -0.0002003840563328,
454  -0.00016678038008235,
455  -0.0001043052492165,
456  -2.6755292037443e-05,
457  5.0216524046173e-05,
458  0.00011218939136102,
459  0.00014861218729837,
460  0.00015451543646022,
461  0.00013104233951771,
462  8.4783349706533e-05,
463  2.6134620615585e-05,
464  -3.295715788208e-05,
465  -8.136348136744e-05,
466  -0.00011081253930984,
467  -0.00011724045761939,
468  -0.0001012285030712,
469  -6.7541289692115e-05,
470  -2.3895604300257e-05,
471  2.0724622156218e-05,
472  5.7869010687563e-05,
473  8.1171513312546e-05,
474  8.7388608805748e-05,
475  7.6756722090184e-05,
476  5.2666089785016e-05,
477  2.0758577326924e-05,
478  -1.2322746897448e-05,
479  -4.0274655013767e-05,
480  -5.829406074794e-05,
481  -6.3860194845464e-05,
482  -5.7013390179708e-05,
483  -4.0128239009182e-05,
484  -1.7259332139243e-05,
485  6.7707570647735e-06,
486  2.7353359078831e-05,
487  4.0943700438919e-05,
488  4.5637450825155e-05,
489  4.1379155147818e-05,
490  2.9805358360326e-05,
491  1.3775467718835e-05,
492  -3.2807474766559e-06,
493  -1.8069021438733e-05,
494  -2.8037837219211e-05,
495  -3.1793813382171e-05,
496  -2.9248626959849e-05,
497  -2.151186626757e-05,
498  -1.0556505514041e-05,
499  1.2337293091249e-06,
500  1.1562533146525e-05,
501  1.8643334874083e-05,
502  2.1504213807673e-05,
503  2.0048306950441e-05,
504  1.5019245852025e-05,
505  7.7511541731454e-06,
506  -1.4885992404665e-07,
507  -7.1257073539242e-06,
508  -1.1978170010217e-05,
509  -1.4038023137129e-05,
510  -1.3244732479359e-05,
511  -1.0081182521136e-05,
512  -5.4241973228553e-06,
513  -3.2661491035316e-07,
514  4.1999551630486e-06,
515  7.3770915118682e-06,
516  8.7765480707888e-06,
517  8.3624066104051e-06,
518  6.4462017694039e-06,
519  3.5861561462035e-06,
520  4.4588432585355e-07,
521  -2.3445301802805e-06,
522  -4.3077605268192e-06,
523  -5.1887358112865e-06,
524  -4.9757063082257e-06,
525  -3.8670006286119e-06,
526  -2.2049084537432e-06,
527  -3.8689096292933e-07,
528  1.2181292813928e-06,
529  2.33910763485e-06,
530  2.8396209637608e-06,
531  2.7255776320599e-06,
532  2.1203038774723e-06,
533  1.222597560009e-06,
534  2.5270526121954e-07,
535  -5.9539320669335e-07,
536  -1.1937050824864e-06,
537  -1.4999390280178e-06,
538  -1.565354998225e-06,
539  -1.5300968104647e-06,
540  -1.6244566929945e-06,
541  1.680273904475e-06
542 };
543 static float filt_gain_1div26 = 1.0000036955016;
static float filt_1div26[511]
static unsigned int filt_len_1div26
static float filt_gain_1div26