00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #define BITS 42
00030 #define MAXX 321.54
00031 #define MAXH 322.23
00032 #define TWO23 4398046511104
00033 #define XBIG 15.2492379723
00034
00035
00036
00037
00038
00039
00040
00041 #define SQRTWO 1.4142135623730950
00042 #if BITS<=24
00043 #define ASP1 0.933935835
00044 #define ASP2 -0.504400557
00045 #define ASQ0 0.560363004e1
00046 #define ASQ1 -0.554846723e1
00047 #elif BITS>=25 && BITS<=36
00048 #define ASP1 -0.27516555290596e1
00049 #define ASP2 0.29058762374859e1
00050 #define ASP3 -0.59450144193246
00051 #define ASQ0 -0.16509933202424e2
00052 #define ASQ1 0.24864728969164e2
00053 #define ASQ2 -0.10333867072113e2
00054 #elif BITS>=37 && BITS<=48
00055 #define ASP1 0.85372164366771950e1
00056 #define ASP2 -0.13428707913425312e2
00057 #define ASP3 0.59683157617751534e1
00058 #define ASP4 -0.65404068999335009
00059 #define ASQ0 0.51223298620109691e2
00060 #define ASQ1 -0.10362273186401480e3
00061 #define ASQ2 0.68719597653808806e2
00062 #define ASQ3 -0.16429557557495170e2
00063 #else
00064 #define ASP1 -0.27368494524164255994e2
00065 #define ASP2 0.57208227877891731407e2
00066 #define ASP3 -0.39688862997504877339e2
00067 #define ASP4 0.10152522233806463645e2
00068 #define ASP5 -0.69674573447350646411
00069 #define ASQ0 -0.16421096714498560795e3
00070 #define ASQ1 0.41714430248260412556e3
00071 #define ASQ2 -0.38186303361750149284e3
00072 #define ASQ3 0.15095270841030604719e3
00073 #define ASQ4 -0.23823859153670238830e2
00074 #endif
00075
00076
00077
00078 #define TWO_SQRT3 0.26794919243112270647
00079 #define SQRTTHREE 1.73205080756887729353
00080 #define PI 3.14159265358979323846
00081 #if BITS<=24
00082 #define ATP0 -0.4708325141
00083 #define ATP1 -0.5090958253e-1
00084 #define ATQ0 0.1412500740e1
00085 #elif BITS>=25 && BITS<=32
00086 #define ATP0 -0.144008344874e1
00087 #define ATP1 -0.720026848898
00088 #define ATQ0 0.432025038919e1
00089 #define ATQ1 0.475222584599e1
00090 #elif BITS>=33 && BITS<=50
00091 #define ATP0 -0.427432672026241096e1
00092 #define ATP1 -0.427444985367930329e1
00093 #define ATP2 -0.794391295408336251
00094 #define ATQ0 0.128229801607919841e2
00095 #define ATQ1 0.205171376564218456e2
00096 #define ATQ2 0.919789364835039806e1
00097 #else
00098 #define ATP0 -0.13688768894191926929e2
00099 #define ATP1 -0.20505855195861651981e2
00100 #define ATP2 -0.84946240351320683534e1
00101 #define ATP3 -0.83758299368150059274
00102 #define ATQ0 0.41066306682575781263e2
00103 #define ATQ1 0.86157349597130242515e2
00104 #define ATQ2 0.59578436142597344465e2
00105 #define ATQ3 0.15024001160028576121e2
00106 #endif
00107
00108
00109
00110 #define INVSPI 0.31830988618379067154
00111 #define HALFPI 1.57079632679489661923
00112 #if BITS<=32
00113 #define C1 3.140625
00114 #define C2 9.67653589793e-4
00115 #else
00116 #define C1 3.1416015625
00117 #define C2 -8.908910206761537356617e-6
00118 #endif
00119 #if BITS<=24
00120 #define R1 -0.1666665668e+0
00121 #define R2 0.8333025139e-2
00122 #define R3 -0.1980741872e-3
00123 #define R4 0.2601903036e-5
00124 #elif BITS>=25 && BITS<=32
00125 #define R1 -0.1666666660883
00126 #define R2 0.8333330720556e-2
00127 #define R3 -0.1984083282313e-3
00128 #define R4 0.2752397106775e-5
00129 #define R5 -0.2386834640601e-7
00130 #elif BITS>=33 && BITS<=50
00131 #define R1 -0.166666666666659653
00132 #define R2 0.833333333327592139e-2
00133 #define R3 -0.198412698232225068e-3
00134 #define R4 0.275573164212926457e-5
00135 #define R5 -0.250518708834705760e-7
00136 #define R6 0.160478446323816900e-9
00137 #define R7 -0.737066277507114174e-12
00138 #else
00139 #define R1 -0.16666666666666665052
00140 #define R2 0.83333333333331650314e-2
00141 #define R3 -0.19841269841201840457e-3
00142 #define R4 0.27557319210152756119e-5
00143 #define R5 -0.25052106798274584544e-7
00144 #define R6 0.16058936490371589114e-9
00145 #define R7 -0.76429178068910467734e-12
00146 #define R8 0.27204790957888846175e-14
00147 #endif
00148
00149
00150
00151 #define LOGe2 0.6931471805599453094172321
00152 #define LOG102 0.301029995663981198017
00153 #define INVLOGe2 1.4426950408889634074
00154 #if BITS<=29
00155 #define EXP0 0.24999999950
00156 #define EXP1 0.41602886268e-2
00157 #define EXQ0 0.5
00158 #define EXQ1 0.49987178778e-1
00159 #elif BITS>=30 && BITS<=42
00160 #define EXP0 0.24999999999992
00161 #define EXP1 0.59504254977591e-2
00162 #define EXQ0 0.5
00163 #define EXQ1 0.53567517645222e-1
00164 #define EXQ2 0.29729363682238e-3
00165 #elif BITS>=43 && BITS<=56
00166 #define EXP0 0.249999999999999993
00167 #define EXP1 0.694360001511792852e-2
00168 #define EXP2 0.165203300268279130e-4
00169 #define EXQ0 0.5
00170 #define EXQ1 0.555538666969001188e-1
00171 #define EXQ2 0.495862884905441294e-3
00172 #else
00173 #define EXP0 0.25
00174 #define EXP1 7.5753180159422776666e-3
00175 #define EXP2 3.1555192765684646356e-5
00176 #define EXQ0 0.5
00177 #define EXQ1 5.6817302698551221787e-2
00178 #define EXQ2 6.3121894374398503557e-4
00179 #define EXQ3 7.5104028399870046114e-7
00180 #endif
00181 #if BITS<=24
00182 #define SHP0 -0.713793159e1
00183 #define SHP1 -0.190333399
00184 #define SHQ0 -0.428277109e2
00185 #elif BITS>=25 && BITS<=40
00186 #define SHP0 0.10622288837151e4
00187 #define SHP1 0.31359756456058e2
00188 #define SHP2 0.34364140358506
00189 #define SHQ0 0.63733733021822e4
00190 #define SHQ1 -0.13051012509199e3
00191 #elif BITS>=41 && BITS<=50
00192 #define SHP0 0.23941435923050069e4
00193 #define SHP1 0.85943284838549010e2
00194 #define SHP2 0.13286428669224229e1
00195 #define SHP3 0.77239398202941923e-2
00196 #define SHQ0 0.14364861553830292e5
00197 #define SHQ1 -0.20258336866427869e3
00198 #else
00199 #define SHP0 -0.35181283430177117881e6
00200 #define SHP1 -0.11563521196851768270e5
00201 #define SHP2 -0.16375798202630751372e3
00202 #define SHP3 -0.78966127417357099479
00203 #define SHQ0 -0.21108770058106271242e7
00204 #define SHQ1 0.36162723109421836460e5
00205 #define SHQ2 -0.27773523119650701667e3
00206 #endif
00207
00208
00209
00210 #define SQRTHALF 0.70710678118654752440
00211 #define LOG10e 0.4342944819032518
00212 #define LNC3 0.693359375
00213 #define LNC4 -2.121944400546905827679e-4
00214 #if BITS<=24
00215 #define LNA0 -0.5527074855
00216 #define LNB0 -0.6632718214e1
00217 #elif BITS>=25 && BITS<=32
00218 #define LNA0 -0.4649062303464
00219 #define LNA1 0.1360095468621e-1
00220 #define LNB0 -0.5578873750242e1
00221 #elif BITS>=33 && BITS<=48
00222 #define LNA0 0.37339168963160866e1
00223 #define LNA1 -0.63260866233859665
00224 #define LNA2 0.44445515109803323e-2
00225 #define LNB0 0.44807002755736436e2
00226 #define LNB1 -0.14312354355885324e2
00227 #else
00228 #define LNA0 -0.64124943423745581147e2
00229 #define LNA1 0.16383943563021534222e2
00230 #define LNA2 -0.78956112887491257267
00231 #define LNB0 -0.76949932108494879777e3
00232 #define LNB1 0.31203222091924532844e3
00233 #define LNB2 -0.35667977739034646171e2
00234 #endif
00235
00236
00237
00238 #define L1 2.885390072738
00239 #define L3 0.961800762286
00240 #define L5 0.576584342056
00241 #define L7 0.434259751292
00242 #define T6 0.0002082045327
00243 #define T5 0.001266912225
00244 #define T4 0.009656843287
00245 #define T3 0.05549288453
00246 #define T2 0.2402279975
00247 #define T1 0.6931471019
00248
00249
00250
00251 #define TWOINVPI 0.63661977236758134308
00252 #if BITS<=32
00253 #define C5 1.5703125
00254 #define C6 4.83826794897e-4
00255 #else
00256 #define C5 1.57080078125
00257 #define C6 -4.454455103380768678308e-6
00258 #endif
00259 #if BITS<=24
00260 #define TAP1 -0.958017723e-1
00261 #define TAQ1 -0.429135777e+0
00262 #define TAQ2 0.971685835e-2
00263 #elif BITS>=25 && BITS<=32
00264 #define TAP1 -0.1113614403566
00265 #define TAP2 0.1075154738488e-2
00266 #define TAQ1 -0.4446947720281
00267 #define TAQ2 0.1597339213300e-1
00268 #elif BITS>=33 && BITS<=52
00269 #define TAP1 -0.1282834704095743847
00270 #define TAP2 0.2805918241169988906e-2
00271 #define TAP3 -0.7483634966612065149e-5
00272 #define TAQ1 -0.4616168037429048840
00273 #define TAQ2 0.2334485282206872802e-1
00274 #define TAQ3 -0.2084480442203870948e-3
00275 #else
00276 #define TAP1 -0.13338350006421960681
00277 #define TAP2 0.34248878235890589960e-2
00278 #define TAP3 -0.17861707342254426711e-4
00279 #define TAQ1 -0.46671683339755294240
00280 #define TAQ2 0.25663832289440112864
00281 #define TAQ3 -0.31181531907010027307e-3
00282 #define TAQ4 0.49819433993786512270e-6
00283 #endif
00284
00285
00286
00287 #define LOGe3by2 0.54930614433405484570
00288 #if BITS<=24
00289 #define THP0 -0.8237728127
00290 #define THP1 -0.3831010665e-2
00291 #define THQ0 0.2471319654e1
00292 #elif BITS>=25 && BITS<=36
00293 #define THP0 -0.21063958000245e2
00294 #define THP1 -0.93363475652401
00295 #define THQ0 0.63191874015582e2
00296 #define THQ1 0.28077653470471e2
00297 #elif BITS>=37 && BITS<=48
00298 #define THP0 -0.19059522426982292e2
00299 #define THP1 -0.92318689451426177
00300 #define THP2 -0.36242421934642173e-3
00301 #define THQ0 0.57178567280965817e2
00302 #define THQ1 0.25640987595178975e2
00303 #else
00304 #define THP0 -0.16134119023996228053e4
00305 #define THP1 -0.99225929672236083313e2
00306 #define THP2 -0.96437492777225469787
00307 #define THQ0 0.48402357071988688686e4
00308 #define THQ1 0.22337720718962312926e4
00309 #define THQ2 0.11274474380534949335e3
00310 #endif