diff options
author | Philipp Aigner <phaigner@gmail.com> | 2014-11-13 21:42:21 +0100 |
---|---|---|
committer | Philipp Aigner <phaigner@gmail.com> | 2014-11-13 21:42:21 +0100 |
commit | eee9ec984898cae90934881392fdc88da1d63ea8 (patch) | |
tree | 122a6089813de27523429eb07c86028d649a7dd8 | |
parent | 8a8bfef084ed7a6ddc506f81690041d3b15a9540 (diff) |
Corrected the fast_atan2f function. Recalculated the table and corrected some errors in the code.
Error before correction: <0.111 degrees.
Error after correction: <8.20E-5 degrees
Some QA tests failed after correcting fast_atan2f function. The tests were also fixed.
-rw-r--r-- | gnuradio-runtime/lib/math/fast_atan2f.cc | 140 | ||||
-rwxr-xr-x | gr-analog/python/analog/qa_pll_carriertracking.py | 200 | ||||
-rwxr-xr-x | gr-analog/python/analog/qa_pll_freqdet.py | 198 | ||||
-rwxr-xr-x | gr-analog/python/analog/qa_pll_refout.py | 198 |
4 files changed, 368 insertions, 368 deletions
diff --git a/gnuradio-runtime/lib/math/fast_atan2f.cc b/gnuradio-runtime/lib/math/fast_atan2f.cc index 20e21be32b..d78ca5d84e 100644 --- a/gnuradio-runtime/lib/math/fast_atan2f.cc +++ b/gnuradio-runtime/lib/math/fast_atan2f.cc @@ -29,79 +29,79 @@ namespace gr { /* Constant definitions */ /***************************************************************************/ - #define TAN_MAP_RES 0.003921569 /* (smallest non-zero value in table) */ + #define TAN_MAP_RES 0.00390625 /* TAN_MAP_RES = 1.0 / 256.0 */ #define RAD_PER_DEG 0.017453293 #define TAN_MAP_SIZE 256 /* arctangents from 0 to pi/4 radians */ static float - fast_atan_table[257] = { - 0.000000e+00, 3.921549e-03, 7.842976e-03, 1.176416e-02, - 1.568499e-02, 1.960533e-02, 2.352507e-02, 2.744409e-02, - 3.136226e-02, 3.527947e-02, 3.919560e-02, 4.311053e-02, - 4.702413e-02, 5.093629e-02, 5.484690e-02, 5.875582e-02, - 6.266295e-02, 6.656816e-02, 7.047134e-02, 7.437238e-02, - 7.827114e-02, 8.216752e-02, 8.606141e-02, 8.995267e-02, - 9.384121e-02, 9.772691e-02, 1.016096e-01, 1.054893e-01, - 1.093658e-01, 1.132390e-01, 1.171087e-01, 1.209750e-01, - 1.248376e-01, 1.286965e-01, 1.325515e-01, 1.364026e-01, - 1.402496e-01, 1.440924e-01, 1.479310e-01, 1.517652e-01, - 1.555948e-01, 1.594199e-01, 1.632403e-01, 1.670559e-01, - 1.708665e-01, 1.746722e-01, 1.784728e-01, 1.822681e-01, - 1.860582e-01, 1.898428e-01, 1.936220e-01, 1.973956e-01, - 2.011634e-01, 2.049255e-01, 2.086818e-01, 2.124320e-01, - 2.161762e-01, 2.199143e-01, 2.236461e-01, 2.273716e-01, - 2.310907e-01, 2.348033e-01, 2.385093e-01, 2.422086e-01, - 2.459012e-01, 2.495869e-01, 2.532658e-01, 2.569376e-01, - 2.606024e-01, 2.642600e-01, 2.679104e-01, 2.715535e-01, - 2.751892e-01, 2.788175e-01, 2.824383e-01, 2.860514e-01, - 2.896569e-01, 2.932547e-01, 2.968447e-01, 3.004268e-01, - 3.040009e-01, 3.075671e-01, 3.111252e-01, 3.146752e-01, - 3.182170e-01, 3.217506e-01, 3.252758e-01, 3.287927e-01, - 3.323012e-01, 3.358012e-01, 3.392926e-01, 3.427755e-01, - 3.462497e-01, 3.497153e-01, 3.531721e-01, 3.566201e-01, - 3.600593e-01, 3.634896e-01, 3.669110e-01, 3.703234e-01, - 3.737268e-01, 3.771211e-01, 3.805064e-01, 3.838825e-01, - 3.872494e-01, 3.906070e-01, 3.939555e-01, 3.972946e-01, - 4.006244e-01, 4.039448e-01, 4.072558e-01, 4.105574e-01, - 4.138496e-01, 4.171322e-01, 4.204054e-01, 4.236689e-01, - 4.269229e-01, 4.301673e-01, 4.334021e-01, 4.366272e-01, - 4.398426e-01, 4.430483e-01, 4.462443e-01, 4.494306e-01, - 4.526070e-01, 4.557738e-01, 4.589307e-01, 4.620778e-01, - 4.652150e-01, 4.683424e-01, 4.714600e-01, 4.745676e-01, - 4.776654e-01, 4.807532e-01, 4.838312e-01, 4.868992e-01, - 4.899573e-01, 4.930055e-01, 4.960437e-01, 4.990719e-01, - 5.020902e-01, 5.050985e-01, 5.080968e-01, 5.110852e-01, - 5.140636e-01, 5.170320e-01, 5.199904e-01, 5.229388e-01, - 5.258772e-01, 5.288056e-01, 5.317241e-01, 5.346325e-01, - 5.375310e-01, 5.404195e-01, 5.432980e-01, 5.461666e-01, - 5.490251e-01, 5.518738e-01, 5.547124e-01, 5.575411e-01, - 5.603599e-01, 5.631687e-01, 5.659676e-01, 5.687566e-01, - 5.715357e-01, 5.743048e-01, 5.770641e-01, 5.798135e-01, - 5.825531e-01, 5.852828e-01, 5.880026e-01, 5.907126e-01, - 5.934128e-01, 5.961032e-01, 5.987839e-01, 6.014547e-01, - 6.041158e-01, 6.067672e-01, 6.094088e-01, 6.120407e-01, - 6.146630e-01, 6.172755e-01, 6.198784e-01, 6.224717e-01, - 6.250554e-01, 6.276294e-01, 6.301939e-01, 6.327488e-01, - 6.352942e-01, 6.378301e-01, 6.403565e-01, 6.428734e-01, - 6.453808e-01, 6.478788e-01, 6.503674e-01, 6.528466e-01, - 6.553165e-01, 6.577770e-01, 6.602282e-01, 6.626701e-01, - 6.651027e-01, 6.675261e-01, 6.699402e-01, 6.723452e-01, - 6.747409e-01, 6.771276e-01, 6.795051e-01, 6.818735e-01, - 6.842328e-01, 6.865831e-01, 6.889244e-01, 6.912567e-01, - 6.935800e-01, 6.958943e-01, 6.981998e-01, 7.004964e-01, - 7.027841e-01, 7.050630e-01, 7.073330e-01, 7.095943e-01, - 7.118469e-01, 7.140907e-01, 7.163258e-01, 7.185523e-01, - 7.207701e-01, 7.229794e-01, 7.251800e-01, 7.273721e-01, - 7.295557e-01, 7.317307e-01, 7.338974e-01, 7.360555e-01, - 7.382053e-01, 7.403467e-01, 7.424797e-01, 7.446045e-01, - 7.467209e-01, 7.488291e-01, 7.509291e-01, 7.530208e-01, - 7.551044e-01, 7.571798e-01, 7.592472e-01, 7.613064e-01, - 7.633576e-01, 7.654008e-01, 7.674360e-01, 7.694633e-01, - 7.714826e-01, 7.734940e-01, 7.754975e-01, 7.774932e-01, - 7.794811e-01, 7.814612e-01, 7.834335e-01, 7.853983e-01, - 7.853983e-01 - }; + fast_atan_table[258] = { + 0.000000e00, 3.906230e-03, 7.812341e-03, 1.171821e-02, + 1.562373e-02, 1.952877e-02, 2.343321e-02, 2.733694e-02, + 3.123983e-02, 3.514178e-02, 3.904265e-02, 4.294233e-02, + 4.684071e-02, 5.073767e-02, 5.463308e-02, 5.852683e-02, + 6.241881e-02, 6.630889e-02, 7.019697e-02, 7.408292e-02, + 7.796663e-02, 8.184799e-02, 8.572688e-02, 8.960318e-02, + 9.347678e-02, 9.734757e-02, 1.012154e-01, 1.050803e-01, + 1.089420e-01, 1.128004e-01, 1.166554e-01, 1.205070e-01, + 1.243550e-01, 1.281993e-01, 1.320398e-01, 1.358763e-01, + 1.397089e-01, 1.435373e-01, 1.473615e-01, 1.511813e-01, + 1.549967e-01, 1.588076e-01, 1.626138e-01, 1.664153e-01, + 1.702119e-01, 1.740036e-01, 1.777902e-01, 1.815717e-01, + 1.853479e-01, 1.891188e-01, 1.928843e-01, 1.966442e-01, + 2.003986e-01, 2.041471e-01, 2.078899e-01, 2.116268e-01, + 2.153577e-01, 2.190825e-01, 2.228012e-01, 2.265135e-01, + 2.302196e-01, 2.339192e-01, 2.376123e-01, 2.412988e-01, + 2.449787e-01, 2.486517e-01, 2.523180e-01, 2.559773e-01, + 2.596296e-01, 2.632749e-01, 2.669130e-01, 2.705439e-01, + 2.741675e-01, 2.777837e-01, 2.813924e-01, 2.849937e-01, + 2.885874e-01, 2.921734e-01, 2.957517e-01, 2.993222e-01, + 3.028849e-01, 3.064396e-01, 3.099864e-01, 3.135251e-01, + 3.170558e-01, 3.205782e-01, 3.240925e-01, 3.275984e-01, + 3.310961e-01, 3.345853e-01, 3.380661e-01, 3.415384e-01, + 3.450022e-01, 3.484573e-01, 3.519038e-01, 3.553416e-01, + 3.587707e-01, 3.621909e-01, 3.656023e-01, 3.690049e-01, + 3.723984e-01, 3.757831e-01, 3.791587e-01, 3.825252e-01, + 3.858827e-01, 3.892310e-01, 3.925701e-01, 3.959001e-01, + 3.992208e-01, 4.025322e-01, 4.058343e-01, 4.091271e-01, + 4.124104e-01, 4.156844e-01, 4.189490e-01, 4.222040e-01, + 4.254496e-01, 4.286857e-01, 4.319122e-01, 4.351292e-01, + 4.383366e-01, 4.415343e-01, 4.447224e-01, 4.479009e-01, + 4.510697e-01, 4.542287e-01, 4.573781e-01, 4.605177e-01, + 4.636476e-01, 4.667677e-01, 4.698781e-01, 4.729786e-01, + 4.760693e-01, 4.791502e-01, 4.822213e-01, 4.852826e-01, + 4.883340e-01, 4.913755e-01, 4.944071e-01, 4.974289e-01, + 5.004408e-01, 5.034428e-01, 5.064349e-01, 5.094171e-01, + 5.123895e-01, 5.153519e-01, 5.183044e-01, 5.212470e-01, + 5.241796e-01, 5.271024e-01, 5.300153e-01, 5.329182e-01, + 5.358112e-01, 5.386944e-01, 5.415676e-01, 5.444309e-01, + 5.472844e-01, 5.501279e-01, 5.529616e-01, 5.557854e-01, + 5.585993e-01, 5.614034e-01, 5.641976e-01, 5.669819e-01, + 5.697565e-01, 5.725211e-01, 5.752760e-01, 5.780211e-01, + 5.807564e-01, 5.834818e-01, 5.861976e-01, 5.889035e-01, + 5.915997e-01, 5.942862e-01, 5.969629e-01, 5.996300e-01, + 6.022873e-01, 6.049350e-01, 6.075731e-01, 6.102014e-01, + 6.128202e-01, 6.154294e-01, 6.180289e-01, 6.206189e-01, + 6.231993e-01, 6.257702e-01, 6.283316e-01, 6.308835e-01, + 6.334259e-01, 6.359588e-01, 6.384823e-01, 6.409964e-01, + 6.435011e-01, 6.459964e-01, 6.484824e-01, 6.509590e-01, + 6.534263e-01, 6.558844e-01, 6.583331e-01, 6.607727e-01, + 6.632030e-01, 6.656241e-01, 6.680361e-01, 6.704389e-01, + 6.728325e-01, 6.752171e-01, 6.775926e-01, 6.799591e-01, + 6.823166e-01, 6.846650e-01, 6.870045e-01, 6.893350e-01, + 6.916566e-01, 6.939693e-01, 6.962732e-01, 6.985682e-01, + 7.008544e-01, 7.031318e-01, 7.054005e-01, 7.076604e-01, + 7.099116e-01, 7.121542e-01, 7.143881e-01, 7.166133e-01, + 7.188300e-01, 7.210381e-01, 7.232377e-01, 7.254287e-01, + 7.276113e-01, 7.297855e-01, 7.319512e-01, 7.341085e-01, + 7.362574e-01, 7.383980e-01, 7.405303e-01, 7.426544e-01, + 7.447701e-01, 7.468777e-01, 7.489770e-01, 7.510682e-01, + 7.531513e-01, 7.552262e-01, 7.572931e-01, 7.593520e-01, + 7.614028e-01, 7.634456e-01, 7.654805e-01, 7.675074e-01, + 7.695265e-01, 7.715377e-01, 7.735410e-01, 7.755366e-01, + 7.775243e-01, 7.795043e-01, 7.814766e-01, 7.834412e-01, + 7.853982e-01, 7.853982e-01 + }; /***************************************************************************** @@ -147,8 +147,8 @@ namespace gr { base_angle = z; else { /* find index and interpolation value */ - alpha = z * (float)TAN_MAP_SIZE - .5; - index = (int)alpha & 0xff; + alpha = z * (float)TAN_MAP_SIZE; + index = (int)alpha; alpha -= (float)index; /* determine base angle based on quadrant and */ /* add or subtract table value from base angle based on quadrant */ diff --git a/gr-analog/python/analog/qa_pll_carriertracking.py b/gr-analog/python/analog/qa_pll_carriertracking.py index d05e49641a..10ad414644 100755 --- a/gr-analog/python/analog/qa_pll_carriertracking.py +++ b/gr-analog/python/analog/qa_pll_carriertracking.py @@ -33,106 +33,106 @@ class test_pll_carriertracking(gr_unittest.TestCase): self.tb = None def test_pll_carriertracking(self): - expected_result = ((1.00000238419+7.21919457547e-09j), - (0.998025715351+0.062790453434j), - (0.992777824402+0.119947694242j), - (0.985192835331+0.171441286802j), - (0.976061582565+0.217501848936j), - (0.966034710407+0.258409559727j), - (0.95565611124+0.294477283955j), - (0.945357382298+0.326030552387j), - (0.935475051403+0.353395611048j), - (0.926258146763+0.376889169216j), - (0.917895197868+0.39681750536j), - (0.910515546799+0.413470208645j), - (0.904196679592+0.427117019892j), - (0.898972511292+0.438006043434j), - (0.894769787788+0.446523308754j), - (0.891652584076+0.452715367079j), - (0.8895829916+0.456773489714j), - (0.888502895832+0.458873122931j), - (0.888343691826+0.459175437689j), - (0.889035582542+0.457833081484j), - (0.890497922897+0.454985737801j), - (0.892645597458+0.450762689114j), - (0.895388305187+0.445282936096j), - (0.898648142815+0.438664674759j), - (0.902342617512+0.431016951799j), - (0.906392872334+0.422441422939j), - (0.910642921925+0.413191765547j), - (0.915039420128+0.403358519077j), - (0.919594764709+0.392864197493j), - (0.92425006628+0.381792247295j), - (0.928944349289+0.370217680931j), - (0.933634519577+0.358220815659j), - (0.938279032707+0.345874190331j), - (0.942840516567+0.333247303963j), - (0.947280526161+0.32040438056j), - (0.951574921608+0.307409763336j), - (0.955703914165+0.294323593378j), - (0.959648966789+0.281201630831j), - (0.963392794132+0.268095195293j), - (0.966880619526+0.255221515894j), - (0.970162451267+0.242447137833j), - (0.973235487938+0.229809194803j), - (0.97609680891+0.217341512442j), - (0.978744983673+0.20507311821j), - (0.981189727783+0.193033605814j), - (0.983436584473+0.181248426437j), - (0.985490739346+0.169738590717j), - (0.987353682518+0.158523857594j), - (0.989041447639+0.147622272372j), - (0.990563035011+0.137049794197j), - (0.991928339005+0.126818582416j), - (0.993117690086+0.117111675441j), - (0.994156062603+0.107930034399j), - (0.995076179504+0.0990980416536j), - (0.995887458324+0.0906178802252j), - (0.996591091156+0.0824909061193j), - (0.997202515602+0.0747182965279j), - (0.997730851173+0.0672992765903j), - (0.998185396194+0.0602316558361j), - (0.99856698513+0.0535135567188j), - (0.998885989189+0.0471420884132j), - (0.99915266037+0.0411129891872j), - (0.999372899532+0.0354214012623j), - (0.999548316002+0.0300626158714j), - (0.999680638313+0.0252036750317j), - (0.999784469604+0.020652115345j), - (0.999865531921+0.0163950324059j), - (0.999923825264+0.0124222636223j), - (0.999960243702+0.00872156023979j), - (0.999983668327+0.00528120994568j), - (0.999997138977+0.00209015607834j), - (1.00000119209-0.00086285173893j), - (0.999992132187-0.00358882546425j), - (0.999979138374-0.00609711557627j), - (0.999963641167-0.00839691981673j), - (0.999947249889-0.0104993218556j), - (0.999924004078-0.0122378543019j), - (0.999904811382-0.0136305987835j), - (0.999888062477-0.0148707330227j), - (0.9998742342-0.0159679055214j), - (0.999856114388-0.0169314742088j), - (0.999839782715-0.0177700817585j), - (0.999826967716-0.0184917747974j), - (0.999818325043-0.0191045701504j), - (0.999807476997-0.0196143388748j), - (0.999797284603-0.0200265944004j), - (0.999791204929-0.0203481912613j), - (0.99978852272-0.0205836892128j), - (0.99978530407-0.0207380950451j), - (0.999785065651-0.0206423997879j), - (0.999787807465-0.0204866230488j), - (0.999794304371-0.0202808082104j), - (0.999800384045-0.0200312435627j), - (0.999803245068-0.0197458267212j), - (0.9998087883-0.0194311738014j), - (0.999816894531-0.0190933048725j), - (0.999825954437-0.0187371373177j), - (0.999829888344-0.0183679759502j), - (0.999835848808-0.017987690866j), - (0.999844014645-0.0176006518304j)) + expected_result = ((1.000002384185791+7.219194575469601e-09j), + (0.9980257153511047+0.06279045343399048j), + (0.992796003818512+0.11979719996452332j), + (0.9852395057678223+0.17117266356945038j), + (0.9761406779289246+0.2171468883752823j), + (0.9661445617675781+0.25799843668937683j), + (0.9557913541793823+0.29403796792030334j), + (0.9455097317695618+0.3255884349346161j), + (0.935634434223175+0.35297322273254395j), + (0.9264140129089355+0.37650591135025024j), + (0.918036699295044+0.3964899182319641j), + (0.9106329679489136+0.4132115840911865j), + (0.9042812585830688+0.42693787813186646j), + (0.899017333984375+0.4379141628742218j), + (0.89484703540802+0.4463684558868408j), + (0.891755223274231+0.45251286029815674j), + (0.8897027969360352+0.4565400779247284j), + (0.8886303901672363+0.45862627029418945j), + (0.8884686827659607+0.4589335024356842j), + (0.8891477584838867+0.4576151967048645j), + (0.8905870318412781+0.4548112750053406j), + (0.8927018642425537+0.4506511092185974j), + (0.8954030275344849+0.4452534019947052j), + (0.898613452911377+0.43873584270477295j), + (0.9022520780563354+0.4312065541744232j), + (0.9062415361404419+0.42276597023010254j), + (0.9104995131492615+0.4135076403617859j), + (0.9149653315544128+0.4035266935825348j), + (0.9195748567581177+0.3929111361503601j), + (0.9242699146270752+0.3817441761493683j), + (0.9289909601211548+0.37010061740875244j), + (0.9336962103843689+0.3580598831176758j), + (0.9383456707000732+0.3456934690475464j), + (0.9429033994674683+0.3330692648887634j), + (0.9473329186439514+0.3202497363090515j), + (0.9516113996505737+0.3072968125343323j), + (0.9557210206985474+0.2942683696746826j), + (0.9596443772315979+0.2812172472476959j), + (0.963365912437439+0.2681918740272522j), + (0.9668760299682617+0.2552390694618225j), + (0.9701738357543945+0.24240154027938843j), + (0.9732568264007568+0.22971850633621216j), + (0.9761228561401367+0.21722495555877686j), + (0.9787704944610596+0.20495179295539856j), + (0.9812103509902954+0.1929289996623993j), + (0.98344886302948+0.18118229508399963j), + (0.9854917526245117+0.1697331666946411j), + (0.9873413443565369+0.1586003601551056j), + (0.989014744758606+0.147801473736763j), + (0.9905213713645935+0.1373506784439087j), + (0.9918720126152039+0.12725868821144104j), + (0.9930678606033325+0.1175333634018898j), + (0.9941287040710449+0.10818269848823547j), + (0.9950648546218872+0.0992119163274765j), + (0.995887041091919+0.09062285721302032j), + (0.9965973496437073+0.08241605758666992j), + (0.9972119927406311+0.07459107041358948j), + (0.997741162776947+0.06714606285095215j), + (0.9981945753097534+0.06007742881774902j), + (0.9985741376876831+0.05337977409362793j), + (0.9988903999328613+0.04704824090003967j), + (0.9991542100906372+0.04107558727264404j), + (0.9993717074394226+0.03545379638671875j), + (0.9995449185371399+0.03017553687095642j), + (0.9996798634529114+0.025230854749679565j), + (0.999785304069519+0.02061113715171814j), + (0.9998669624328613+0.01630493998527527j), + (0.9999253749847412+0.012303531169891357j), + (0.999961256980896+0.008596181869506836j), + (0.9999842047691345+0.005170613527297974j), + (0.9999972581863403+0.0020167529582977295j), + (1.0000011920928955-0.0008766651153564453j), + (0.9999923706054688-0.0035211145877838135j), + (0.999980092048645-0.00592736154794693j), + (0.9999660849571228-0.008106544613838196j), + (0.9999516606330872-0.010069712996482849j), + (0.9999289512634277-0.011828280985355377j), + (0.9999079704284668-0.013392657041549683j), + (0.9998894333839417-0.01477348804473877j), + (0.9998739957809448-0.015980780124664307j), + (0.9998545050621033-0.017024904489517212j), + (0.9998371601104736-0.017916440963745117j), + (0.9998237490653992-0.01866436004638672j), + (0.999815046787262-0.01927858591079712j), + (0.9998044967651367-0.019767403602600098j), + (0.9997949600219727-0.020140081644058228j), + (0.9997900128364563-0.020405471324920654j), + (0.9997888207435608-0.020570307970046997j), + (0.9997872114181519-0.020643681287765503j), + (0.9997851848602295-0.020633310079574585j), + (0.9997866153717041-0.020545780658721924j), + (0.9997920989990234-0.020388543605804443j), + (0.9997975826263428-0.02016708254814148j), + (0.9998003840446472-0.019888341426849365j), + (0.99980628490448-0.019558459520339966j), + (0.9998152256011963-0.019182950258255005j), + (0.9998254179954529-0.01876668632030487j), + (0.9998309016227722-0.01831553876399994j), + (0.999838650226593-0.017833217978477478j), + (0.9998488426208496-0.017324130982160568j)) sampling_freq = 10e3 freq = sampling_freq / 100 diff --git a/gr-analog/python/analog/qa_pll_freqdet.py b/gr-analog/python/analog/qa_pll_freqdet.py index 0166a40258..c7a8aa8363 100755 --- a/gr-analog/python/analog/qa_pll_freqdet.py +++ b/gr-analog/python/analog/qa_pll_freqdet.py @@ -34,105 +34,105 @@ class test_pll_freqdet(gr_unittest.TestCase): def test_pll_freqdet(self): expected_result = (0.0, - 4.33888922882e-08, - 0.367369994515, - 1.08135249597, - 2.10983253908, - 3.42221529438, - 4.98940390402, - 6.78379190842, - 8.77923286024, - 10.9510106794, - 13.2758363182, - 15.7317829127, - 18.2982902299, - 20.9561068599, - 23.6755271122, - 26.452952094, - 29.2731265301, - 32.1219053479, - 34.9862418188, - 37.8540971414, - 40.7144315483, - 43.5571390869, - 46.3730179743, - 49.1537231663, - 51.8917218889, - 54.58026103, - 57.2015358514, - 59.7513664199, - 62.2380533124, - 64.657612252, - 67.006640002, - 69.2822432184, - 71.4820384499, - 73.6041047056, - 75.6469478817, - 77.6094829742, - 79.4909866472, - 81.2911031615, - 83.0097850853, - 84.6355598352, - 86.1820937186, - 87.6504420946, - 89.0418441206, - 90.3577286819, - 91.5996432431, - 92.7692775646, - 93.8684162704, - 94.8989269904, - 95.8627662892, - 96.7619381633, - 97.598505899, - 98.362769679, - 99.0579904444, - 99.6992633875, - 100.288805948, - 100.828805921, - 101.321421457, - 101.76878699, - 102.17300138, - 102.536116055, - 102.860158727, - 103.147085962, - 103.398830608, - 103.617254366, - 103.792467691, - 103.939387906, - 104.060030865, - 104.15631756, - 104.230085975, - 104.283067372, - 104.316933727, - 104.333238432, - 104.333440018, - 104.318914008, - 104.290941063, - 104.250742554, - 104.187634452, - 104.103822339, - 104.013227468, - 103.916810336, - 103.815448432, - 103.709936239, - 103.600997093, - 103.489283183, - 103.375351833, - 103.259712936, - 103.142828952, - 103.025091195, - 102.90686726, - 102.776726069, - 102.648078982, - 102.521459607, - 102.397294831, - 102.275999684, - 102.157882471, - 102.043215927, - 101.93218978, - 101.824958181, - 101.72159228, - 101.622151366) + 4.338889228818161e-08, + 0.3776331578612825, + 1.0993741049896133, + 2.1332509128284287, + 3.448827166947317, + 5.017193050406445, + 6.810936277840595, + 8.804128662605573, + 10.972292025122194, + 13.292363360097312, + 15.742678902380248, + 18.302902979158944, + 20.954030233328815, + 23.678333003762834, + 26.459293141999492, + 29.2815901542755, + 32.13105969864019, + 34.99462836613535, + 37.860284035876894, + 40.71702547869386, + 43.5548208542428, + 46.364569172614004, + 49.138038040003174, + 51.86783994277676, + 54.547378886619114, + 57.17080592915505, + 59.73298657053974, + 62.229444428114014, + 64.65634937843706, + 67.01044048049889, + 69.28902004673668, + 71.48990028218192, + 73.61137363954212, + 75.65217724529884, + 77.61146325478951, + 79.48876920728905, + 81.28396466515709, + 82.9972452848542, + 84.62912095897468, + 86.18033873945902, + 87.65188876657749, + 89.0449983399466, + 90.36106669970881, + 91.6016768844999, + 92.76854829957963, + 93.86354857479924, + 94.88865206171563, + 95.84592204664062, + 96.73751075064077, + 97.56564154258655, + 98.33257336525031, + 99.04061259327368, + 99.69208931723288, + 100.28935141465512, + 100.83475862103487, + 101.33065881389933, + 101.77937615484109, + 102.18323480545271, + 102.54452335342484, + 102.8654948125462, + 103.14836662270359, + 103.39530879191456, + 103.6084320383601, + 103.78982336428665, + 103.94148676616939, + 104.06536695064705, + 104.16337305045634, + 104.23733119256288, + 104.28900821409572, + 104.32008794641274, + 104.33220678900258, + 104.32694185151738, + 104.30578723783803, + 104.27016590404165, + 104.22144151636876, + 104.16091845122337, + 104.08982993720561, + 104.00932619714447, + 103.9205337379343, + 103.82447234476369, + 103.72213808688659, + 103.6144440277858, + 103.50225579907487, + 103.38636788456353, + 103.26755105212685, + 103.14649306386876, + 103.02383425002395, + 102.90019122489248, + 102.7761213129379, + 102.65211069081985, + 102.5286218192634, + 102.40608158509168, + 102.28486944325857, + 102.16532927481605, + 102.04778124488143, + 101.93248622873554, + 101.81969324369186, + 101.70961573316195, + 101.60243156665544) sampling_freq = 10e3 freq = sampling_freq / 100 diff --git a/gr-analog/python/analog/qa_pll_refout.py b/gr-analog/python/analog/qa_pll_refout.py index f85a027aa3..835b6a4522 100755 --- a/gr-analog/python/analog/qa_pll_refout.py +++ b/gr-analog/python/analog/qa_pll_refout.py @@ -34,105 +34,105 @@ class test_pll_refout(gr_unittest.TestCase): def test_pll_refout(self): expected_result = ((1+0j), - (1+6.4087357643e-10j), - (0.999985277653+0.00542619498447j), - (0.999868750572+0.0162021834403j), - (0.99948567152+0.0320679470897j), - (0.99860727787+0.0527590736747j), - (0.996953129768+0.0780025869608j), - (0.994203746319+0.107512556016j), - (0.990011692047+0.140985429287j), - (0.984013140202+0.178095817566j), - (0.975838363171+0.218493551016j), - (0.965121984482+0.261800557375j), - (0.95151245594+0.307610183954j), - (0.934681296349+0.355486690998j), - (0.914401650429+0.404808044434j), - (0.890356600285+0.455263823271j), - (0.862329125404+0.506348133087j), - (0.830152392387+0.557536482811j), - (0.793714106083+0.608290970325j), - (0.752960026264+0.658066213131j), - (0.707896590233+0.706316053867j), - (0.658591926098+0.752500295639j), - (0.605175673962+0.796091973782j), - (0.547837555408+0.836584687233j), - (0.48682525754+0.873499393463j), - (0.42244040966+0.906390726566j), - (0.355197101831+0.934791445732j), - (0.285494059324+0.958380460739j), - (0.213591173291+0.976923108101j), - (0.139945343137+0.990159213543j), - (0.065038472414+0.997882783413j), - (-0.0106285437942+0.999943494797j), - (-0.0865436866879+0.996248066425j), - (-0.162189796567+0.986759603024j), - (-0.23705175519+0.971496999264j), - (-0.310622543097+0.950533330441j), - (-0.38240903616+0.923993110657j), - (-0.451937526464+0.89204955101j), - (-0.518758952618+0.854920566082j), - (-0.582311093807+0.812966048717j), - (-0.642372369766+0.76639264822j), - (-0.698591887951+0.715520322323j), - (-0.750654160976+0.660695314407j), - (-0.798280358315+0.602286040783j), - (-0.841228663921+0.540679454803j), - (-0.87929558754+0.476276367903j), - (-0.912315964699+0.409486919641j), - (-0.940161883831+0.340728074312j), - (-0.962742805481+0.270418733358j), - (-0.980004072189+0.198977485299j), - (-0.991925954819+0.126818284392j), - (-0.99851256609+0.0545223206282j), - (-0.999846458435-0.0175215266645j), - (-0.996021270752-0.0891158208251j), - (-0.987133920193-0.159895718098j), - (-0.973306238651-0.2295101583j), - (-0.954683184624-0.297624111176j), - (-0.931430280209-0.363919824362j), - (-0.903732538223-0.428097635508j), - (-0.871792256832-0.489875763655j), - (-0.835827112198-0.548992812634j), - (-0.796068251133-0.605206847191j), - (-0.752758979797-0.658296227455j), - (-0.706152498722-0.70805978775j), - (-0.656641483307-0.754202902317j), - (-0.604367733002-0.79670548439j), - (-0.549597978592-0.835429251194j), - (-0.492602348328-0.870254516602j), - (-0.433654457331-0.901079237461j), - (-0.373029649258-0.927819430828j), - (-0.31100410223-0.950408577919j), - (-0.247853919864-0.968797445297j), - (-0.183855071664-0.982953369617j), - (-0.119282215834-0.992860376835j), - (-0.0544078871608-0.998518764973j), - (0.0104992967099-0.999944865704j), - (0.0749994292855-0.997183561325j), - (0.138844624162-0.990314185619j), - (0.201967850327-0.979392170906j), - (0.264124274254-0.964488625526j), - (0.325075358152-0.945688128471j), - (0.3845885396-0.92308807373j), - (0.442438393831-0.89679890871j), - (0.498407125473-0.866943061352j), - (0.552284479141-0.833655714989j), - (0.603869199753-0.797083437443j), - (0.652970373631-0.757383465767j), - (0.69940674305-0.714723825455j), - (0.743007957935-0.66928255558j), - (0.78350687027-0.62138313055j), - (0.820889055729-0.571087777615j), - (0.855021059513-0.51859331131j), - (0.885780930519-0.46410369873j), - (0.913058102131-0.407829582691j), - (0.936754107475-0.349988251925j), - (0.956783294678-0.290801793337j), - (0.973072886467-0.230497643352j), - (0.985563337803-0.169307261705j), - (0.9942086339-0.1074674353j), - (0.9989772439-0.0452152714133j)) + (1+6.408735764296125e-10j), + (0.9999844431877136+0.005577784031629562j), + (0.9998642802238464+0.016474783420562744j), + (0.9994739890098572+0.032431427389383316j), + (0.9985847473144531+0.05318402871489525j), + (0.996917188167572+0.07846084982156754j), + (0.9941533207893372+0.10797744989395142j), + (0.9899479150772095+0.14143235981464386j), + (0.9839394092559814+0.1785029172897339j), + (0.9757603406906128+0.2188417762517929j), + (0.9650475978851318+0.26207470893859863j), + (0.9514514803886414+0.30779871344566345j), + (0.9346449971199036+0.35558223724365234j), + (0.9143316149711609+0.40496626496315j), + (0.8902531862258911+0.4554659426212311j), + (0.8621962666511536+0.5065743923187256j), + (0.8299974799156189+0.5577671527862549j), + (0.7935484647750854+0.6085070967674255j), + (0.7527987360954285+0.6582507491111755j), + (0.7077582478523254+0.7064547538757324j), + (0.6584978699684143+0.7525825500488281j), + (0.6051493883132935+0.7961119413375854j), + (0.547903835773468+0.8365413546562195j), + (0.48700881004333496+0.8733970522880554j), + (0.42276495695114136+0.90623939037323j), + (0.35552138090133667+0.9346681237220764j), + (0.2856702208518982+0.9583280086517334j), + (0.21364101767539978+0.976912260055542j), + (0.13989387452602386+0.9901664853096008j), + (0.06491273641586304+0.9978909492492676j), + (-0.01080091018229723+0.9999416470527649j), + (-0.08673560619354248+0.9962313771247864j), + (-0.16237612068653107+0.9867289662361145j), + (-0.23721040785312653+0.9714583158493042j), + (-0.3107353150844574+0.95049649477005j), + (-0.3824624717235565+0.9239710569381714j), + (-0.45192304253578186+0.892056941986084j), + (-0.5186731219291687+0.8549726009368896j), + (-0.5822963714599609+0.812976598739624j), + (-0.6424083709716797+0.7663624882698059j), + (-0.6986585855484009+0.7154552340507507j), + (-0.7507330775260925+0.6606056690216064j), + (-0.7983550429344177+0.6021870970726013j), + (-0.841286301612854+0.5405898094177246j), + (-0.879327654838562+0.47621726989746094j), + (-0.912318229675293+0.4094819128513336j), + (-0.9401354789733887+0.340800940990448j), + (-0.9626938104629517+0.27059316635131836j), + (-0.979943573474884+0.1992751508951187j), + (-0.9918696284294128+0.12725839018821716j), + (-0.9984893202781677+0.054946307092905045j), + (-0.9998509287834167-0.017267409712076187j), + (-0.9960314631462097-0.08900183439254761j), + (-0.9871346950531006-0.1598907858133316j), + (-0.9732890129089355-0.2295832633972168j), + (-0.9546451568603516-0.29774588346481323j), + (-0.9313743710517883-0.3640628457069397j), + (-0.9036663174629211-0.42823725938796997j), + (-0.8717266321182251-0.48999255895614624j), + (-0.8357754945755005-0.5490713119506836j), + (-0.7960456013679504-0.6052366495132446j), + (-0.7527803182601929-0.658271849155426j), + (-0.706232488155365-0.7079799771308899j), + (-0.6566619873046875-0.7541850209236145j), + (-0.6043350696563721-0.7967302799224854j), + (-0.5495226979255676-0.8354787826538086j), + (-0.4924990236759186-0.8703129887580872j), + (-0.4335414469242096-0.9011335968971252j), + (-0.3729270100593567-0.927860677242279j), + (-0.3109343349933624-0.9504314064979553j), + (-0.2478405237197876-0.9688008427619934j), + (-0.18392162024974823-0.9829409122467041j), + (-0.11945075541734695-0.9928401112556458j), + (-0.05469784513115883-0.9985029697418213j), + (0.010069688782095909-0.9999492764472961j), + (0.07459097355604172-0.9972141981124878j), + (0.13860897719860077-0.9903472065925598j), + (0.2018725872039795-0.979411780834198j), + (0.2641367018222809-0.964485228061676j), + (0.32516375184059143-0.9456577301025391j), + (0.3847236633300781-0.9230318069458008j), + (0.44259318709373474-0.8967224955558777j), + (0.49855801463127136-0.8668563365936279j), + (0.5524120926856995-0.8335711359977722j), + (0.6039596796035767-0.7970148921012878j), + (0.6530137062072754-0.7573460936546326j), + (0.6993972063064575-0.7147331833839417j), + (0.7429447770118713-0.6693527102470398j), + (0.7835012078285217-0.6213902235031128j), + (0.8209227919578552-0.5710391998291016j), + (0.8550769090652466-0.5185011625289917j), + (0.8858439326286316-0.46398329734802246j), + (0.9131162166595459-0.4076994061470032j), + (0.936798632144928-0.3498689830303192j), + (0.956809401512146-0.2907160222530365j), + (0.9730796813964844-0.23046888411045074j), + (0.9855544567108154-0.16935895383358002j), + (0.9941920042037964-0.10762103646993637j), + (0.9989647269248962-0.045491550117731094j)) sampling_freq = 10e3 freq = sampling_freq / 100 |