spandsp 3.0.0
math_fixed_tables.h
1/* THIS FILE WAS AUTOMATICALLY GENERATED - ANY MODIFICATIONS MADE TO THIS
2 FILE MAY BE OVERWRITTEN DURING FUTURE BUILDS OF THE SOFTWARE */
3
4static const uint16_t fixed_reciprocal_table[129] =
5{
6 32768,
7 32514,
8 32264,
9 32018,
10 31775,
11 31536,
12 31301,
13 31069,
14 30840,
15 30615,
16 30394,
17 30175,
18 29959,
19 29747,
20 29537,
21 29331,
22 29127,
23 28926,
24 28728,
25 28533,
26 28340,
27 28150,
28 27962,
29 27777,
30 27594,
31 27414,
32 27236,
33 27060,
34 26887,
35 26715,
36 26546,
37 26379,
38 26214,
39 26052,
40 25891,
41 25732,
42 25575,
43 25420,
44 25267,
45 25116,
46 24966,
47 24818,
48 24672,
49 24528,
50 24385,
51 24245,
52 24105,
53 23967,
54 23831,
55 23697,
56 23564,
57 23432,
58 23302,
59 23173,
60 23046,
61 22920,
62 22795,
63 22672,
64 22550,
65 22429,
66 22310,
67 22192,
68 22075,
69 21960,
70 21845,
71 21732,
72 21620,
73 21509,
74 21400,
75 21291,
76 21183,
77 21077,
78 20972,
79 20867,
80 20764,
81 20662,
82 20560,
83 20460,
84 20361,
85 20262,
86 20165,
87 20068,
88 19973,
89 19878,
90 19784,
91 19692,
92 19600,
93 19508,
94 19418,
95 19329,
96 19240,
97 19152,
98 19065,
99 18979,
100 18893,
101 18809,
102 18725,
103 18641,
104 18559,
105 18477,
106 18396,
107 18316,
108 18236,
109 18157,
110 18079,
111 18001,
112 17924,
113 17848,
114 17772,
115 17697,
116 17623,
117 17549,
118 17476,
119 17404,
120 17332,
121 17261,
122 17190,
123 17120,
124 17050,
125 16981,
126 16913,
127 16845,
128 16777,
129 16710,
130 16644,
131 16578,
132 16513,
133 16448,
134 16384
135};
136
137static const uint16_t fixed_sqrt_table[193] =
138{
139 32768,
140 33023,
141 33276,
142 33527,
143 33776,
144 34024,
145 34270,
146 34514,
147 34756,
148 34996,
149 35235,
150 35472,
151 35708,
152 35942,
153 36175,
154 36406,
155 36636,
156 36864,
157 37091,
158 37316,
159 37540,
160 37763,
161 37985,
162 38205,
163 38424,
164 38642,
165 38858,
166 39073,
167 39287,
168 39500,
169 39712,
170 39923,
171 40132,
172 40341,
173 40548,
174 40755,
175 40960,
176 41164,
177 41368,
178 41570,
179 41771,
180 41972,
181 42171,
182 42369,
183 42567,
184 42763,
185 42959,
186 43154,
187 43348,
188 43541,
189 43733,
190 43925,
191 44115,
192 44305,
193 44494,
194 44682,
195 44869,
196 45056,
197 45242,
198 45427,
199 45611,
200 45795,
201 45977,
202 46160,
203 46341,
204 46522,
205 46702,
206 46881,
207 47059,
208 47237,
209 47415,
210 47591,
211 47767,
212 47942,
213 48117,
214 48291,
215 48465,
216 48637,
217 48809,
218 48981,
219 49152,
220 49322,
221 49492,
222 49661,
223 49830,
224 49998,
225 50166,
226 50332,
227 50499,
228 50665,
229 50830,
230 50995,
231 51159,
232 51323,
233 51486,
234 51649,
235 51811,
236 51972,
237 52134,
238 52294,
239 52454,
240 52614,
241 52773,
242 52932,
243 53090,
244 53248,
245 53405,
246 53562,
247 53719,
248 53874,
249 54030,
250 54185,
251 54340,
252 54494,
253 54647,
254 54801,
255 54954,
256 55106,
257 55258,
258 55410,
259 55561,
260 55712,
261 55862,
262 56012,
263 56162,
264 56311,
265 56459,
266 56608,
267 56756,
268 56903,
269 57051,
270 57198,
271 57344,
272 57490,
273 57636,
274 57781,
275 57926,
276 58071,
277 58215,
278 58359,
279 58503,
280 58646,
281 58789,
282 58931,
283 59073,
284 59215,
285 59357,
286 59498,
287 59639,
288 59779,
289 59919,
290 60059,
291 60199,
292 60338,
293 60477,
294 60615,
295 60753,
296 60891,
297 61029,
298 61166,
299 61303,
300 61440,
301 61576,
302 61712,
303 61848,
304 61984,
305 62119,
306 62254,
307 62388,
308 62523,
309 62657,
310 62790,
311 62924,
312 63057,
313 63190,
314 63323,
315 63455,
316 63587,
317 63719,
318 63850,
319 63982,
320 64113,
321 64243,
322 64374,
323 64504,
324 64634,
325 64763,
326 64893,
327 65022,
328 65151,
329 65279,
330 65408,
331 65535
332};
333
334static const int16_t fixed_log10_table[129] =
335{
336 -9864,
337 -9753,
338 -9644,
339 -9534,
340 -9426,
341 -9319,
342 -9212,
343 -9106,
344 -9001,
345 -8897,
346 -8794,
347 -8691,
348 -8589,
349 -8488,
350 -8387,
351 -8287,
352 -8188,
353 -8090,
354 -7992,
355 -7895,
356 -7798,
357 -7702,
358 -7607,
359 -7512,
360 -7419,
361 -7325,
362 -7233,
363 -7140,
364 -7049,
365 -6958,
366 -6868,
367 -6778,
368 -6689,
369 -6600,
370 -6512,
371 -6424,
372 -6337,
373 -6251,
374 -6165,
375 -6079,
376 -5994,
377 -5910,
378 -5826,
379 -5742,
380 -5659,
381 -5577,
382 -5495,
383 -5413,
384 -5332,
385 -5252,
386 -5171,
387 -5092,
388 -5012,
389 -4934,
390 -4855,
391 -4777,
392 -4700,
393 -4623,
394 -4546,
395 -4470,
396 -4394,
397 -4318,
398 -4243,
399 -4168,
400 -4094,
401 -4020,
402 -3947,
403 -3873,
404 -3801,
405 -3728,
406 -3656,
407 -3584,
408 -3513,
409 -3442,
410 -3371,
411 -3301,
412 -3231,
413 -3162,
414 -3092,
415 -3023,
416 -2955,
417 -2887,
418 -2819,
419 -2751,
420 -2684,
421 -2617,
422 -2550,
423 -2484,
424 -2418,
425 -2352,
426 -2287,
427 -2222,
428 -2157,
429 -2092,
430 -2028,
431 -1964,
432 -1900,
433 -1837,
434 -1774,
435 -1711,
436 -1648,
437 -1586,
438 -1524,
439 -1462,
440 -1401,
441 -1340,
442 -1279,
443 -1218,
444 -1158,
445 -1097,
446 -1038,
447 -978,
448 -918,
449 -859,
450 -800,
451 -742,
452 -683,
453 -625,
454 -567,
455 -509,
456 -452,
457 -395,
458 -338,
459 -281,
460 -224,
461 -168,
462 -112,
463 -56,
464 0
465};
466
467static const int16_t fixed_sine_table[257] =
468{
469 0,
470 201,
471 402,
472 603,
473 804,
474 1005,
475 1206,
476 1407,
477 1608,
478 1809,
479 2009,
480 2210,
481 2411,
482 2611,
483 2811,
484 3012,
485 3212,
486 3412,
487 3612,
488 3812,
489 4011,
490 4211,
491 4410,
492 4609,
493 4808,
494 5007,
495 5205,
496 5404,
497 5602,
498 5800,
499 5998,
500 6195,
501 6393,
502 6590,
503 6787,
504 6983,
505 7180,
506 7376,
507 7571,
508 7767,
509 7962,
510 8157,
511 8351,
512 8546,
513 8740,
514 8933,
515 9127,
516 9319,
517 9512,
518 9704,
519 9896,
520 10088,
521 10279,
522 10469,
523 10660,
524 10850,
525 11039,
526 11228,
527 11417,
528 11605,
529 11793,
530 11980,
531 12167,
532 12354,
533 12540,
534 12725,
535 12910,
536 13095,
537 13279,
538 13463,
539 13646,
540 13828,
541 14010,
542 14192,
543 14373,
544 14553,
545 14733,
546 14912,
547 15091,
548 15269,
549 15447,
550 15624,
551 15800,
552 15976,
553 16151,
554 16326,
555 16500,
556 16673,
557 16846,
558 17018,
559 17190,
560 17361,
561 17531,
562 17700,
563 17869,
564 18037,
565 18205,
566 18372,
567 18538,
568 18703,
569 18868,
570 19032,
571 19195,
572 19358,
573 19520,
574 19681,
575 19841,
576 20001,
577 20160,
578 20318,
579 20475,
580 20632,
581 20788,
582 20943,
583 21097,
584 21251,
585 21403,
586 21555,
587 21706,
588 21856,
589 22006,
590 22154,
591 22302,
592 22449,
593 22595,
594 22740,
595 22884,
596 23028,
597 23170,
598 23312,
599 23453,
600 23593,
601 23732,
602 23870,
603 24008,
604 24144,
605 24279,
606 24414,
607 24548,
608 24680,
609 24812,
610 24943,
611 25073,
612 25202,
613 25330,
614 25457,
615 25583,
616 25708,
617 25833,
618 25956,
619 26078,
620 26199,
621 26320,
622 26439,
623 26557,
624 26674,
625 26791,
626 26906,
627 27020,
628 27133,
629 27246,
630 27357,
631 27467,
632 27576,
633 27684,
634 27791,
635 27897,
636 28002,
637 28106,
638 28209,
639 28311,
640 28411,
641 28511,
642 28610,
643 28707,
644 28803,
645 28899,
646 28993,
647 29086,
648 29178,
649 29269,
650 29359,
651 29448,
652 29535,
653 29622,
654 29707,
655 29792,
656 29875,
657 29957,
658 30038,
659 30118,
660 30196,
661 30274,
662 30350,
663 30425,
664 30499,
665 30572,
666 30644,
667 30715,
668 30784,
669 30853,
670 30920,
671 30986,
672 31050,
673 31114,
674 31177,
675 31238,
676 31298,
677 31357,
678 31415,
679 31471,
680 31527,
681 31581,
682 31634,
683 31686,
684 31737,
685 31786,
686 31834,
687 31881,
688 31927,
689 31972,
690 32015,
691 32058,
692 32099,
693 32138,
694 32177,
695 32214,
696 32251,
697 32286,
698 32319,
699 32352,
700 32383,
701 32413,
702 32442,
703 32470,
704 32496,
705 32522,
706 32546,
707 32568,
708 32590,
709 32610,
710 32629,
711 32647,
712 32664,
713 32679,
714 32693,
715 32706,
716 32718,
717 32729,
718 32738,
719 32746,
720 32753,
721 32758,
722 32762,
723 32766,
724 32767,
725 32767
726};
727
728static const uint16_t fixed_arctan_table[257] =
729{
730 1,
731 41,
732 81,
733 122,
734 163,
735 204,
736 244,
737 285,
738 326,
739 367,
740 407,
741 448,
742 489,
743 529,
744 570,
745 610,
746 651,
747 692,
748 732,
749 773,
750 813,
751 854,
752 894,
753 935,
754 975,
755 1015,
756 1056,
757 1096,
758 1136,
759 1177,
760 1217,
761 1257,
762 1297,
763 1337,
764 1377,
765 1417,
766 1457,
767 1497,
768 1537,
769 1577,
770 1617,
771 1656,
772 1696,
773 1736,
774 1775,
775 1815,
776 1854,
777 1894,
778 1933,
779 1973,
780 2012,
781 2051,
782 2090,
783 2129,
784 2168,
785 2207,
786 2246,
787 2285,
788 2324,
789 2363,
790 2401,
791 2440,
792 2478,
793 2517,
794 2555,
795 2594,
796 2632,
797 2670,
798 2708,
799 2746,
800 2784,
801 2822,
802 2860,
803 2897,
804 2935,
805 2973,
806 3010,
807 3047,
808 3085,
809 3122,
810 3159,
811 3196,
812 3233,
813 3270,
814 3307,
815 3344,
816 3380,
817 3417,
818 3453,
819 3490,
820 3526,
821 3562,
822 3599,
823 3635,
824 3670,
825 3706,
826 3742,
827 3778,
828 3813,
829 3849,
830 3884,
831 3920,
832 3955,
833 3990,
834 4025,
835 4060,
836 4095,
837 4129,
838 4164,
839 4199,
840 4233,
841 4267,
842 4302,
843 4336,
844 4370,
845 4404,
846 4438,
847 4471,
848 4505,
849 4539,
850 4572,
851 4605,
852 4639,
853 4672,
854 4705,
855 4738,
856 4771,
857 4803,
858 4836,
859 4869,
860 4901,
861 4933,
862 4966,
863 4998,
864 5030,
865 5062,
866 5094,
867 5125,
868 5157,
869 5188,
870 5220,
871 5251,
872 5282,
873 5313,
874 5344,
875 5375,
876 5406,
877 5437,
878 5467,
879 5498,
880 5528,
881 5559,
882 5589,
883 5619,
884 5649,
885 5679,
886 5708,
887 5738,
888 5768,
889 5797,
890 5826,
891 5856,
892 5885,
893 5914,
894 5943,
895 5972,
896 6000,
897 6029,
898 6058,
899 6086,
900 6114,
901 6142,
902 6171,
903 6199,
904 6227,
905 6254,
906 6282,
907 6310,
908 6337,
909 6365,
910 6392,
911 6419,
912 6446,
913 6473,
914 6500,
915 6527,
916 6554,
917 6580,
918 6607,
919 6633,
920 6660,
921 6686,
922 6712,
923 6738,
924 6764,
925 6790,
926 6815,
927 6841,
928 6867,
929 6892,
930 6917,
931 6943,
932 6968,
933 6993,
934 7018,
935 7043,
936 7068,
937 7092,
938 7117,
939 7141,
940 7166,
941 7190,
942 7214,
943 7238,
944 7262,
945 7286,
946 7310,
947 7334,
948 7358,
949 7381,
950 7405,
951 7428,
952 7451,
953 7475,
954 7498,
955 7521,
956 7544,
957 7566,
958 7589,
959 7612,
960 7635,
961 7657,
962 7679,
963 7702,
964 7724,
965 7746,
966 7768,
967 7790,
968 7812,
969 7834,
970 7856,
971 7877,
972 7899,
973 7920,
974 7942,
975 7963,
976 7984,
977 8005,
978 8026,
979 8047,
980 8068,
981 8089,
982 8110,
983 8131,
984 8151,
985 8172,
986 8192
987};
988