⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qa_pll_carriertracking.py

📁 这是用python语言写的一个数字广播的信号处理工具包。利用它
💻 PY
字号:
#!/usr/bin/env python## Copyright 2004 Free Software Foundation, Inc.# # This file is part of GNU Radio# # GNU Radio is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation; either version 3, or (at your option)# any later version.# # GNU Radio is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the# GNU General Public License for more details.# # You should have received a copy of the GNU General Public License# along with GNU Radio; see the file COPYING.  If not, write to# the Free Software Foundation, Inc., 51 Franklin Street,# Boston, MA 02110-1301, USA.# from gnuradio import gr, gr_unittestimport mathclass test_sig_source (gr_unittest.TestCase):    def setUp (self):        self.fg = gr.flow_graph()    def tearDown (self):        self.fg = None    def test_pll_carriertracking (self):        expected_result = ((1.00000238419+6.47922693275e-09j),                           (0.998399555683+0.0565364062786j),                           (0.994261980057+0.10695001483j),                           (0.98843306303+0.151648163795j),                           (0.981579363346+0.191063538194j),                           (0.974212288857+0.225630432367j),                           (0.966734290123+0.255773901939j),                           (0.959442555904+0.281897842884j),                           (0.952551782131+0.304379671812j),                           (0.946205317974+0.323566257954j),                           (0.940503358841+0.339778244495j),                           (0.935505151749+0.353307723999j),                           (0.931235432625+0.364419162273j),                           (0.927616357803+0.373535633087j),                           (0.924710214138+0.380666583776j),                           (0.922494113445+0.386005342007j),                           (0.92093116045+0.389725029469j),                           (0.919974088669+0.391981720924j),                           (0.919572234154+0.392916500568j),                           (0.919680893421+0.392660915852j),                           (0.920248389244+0.39133310318j),                           (0.921222627163+0.389039844275j),                           (0.922548472881+0.385877460241j),                           (0.924184799194+0.381939411163j),                           (0.926086127758+0.377309292555j),                           (0.928135097027+0.37224984169j),                           (0.930293083191+0.366814315319j),                           (0.932614028454+0.360868781805j),                           (0.935064375401+0.354473829269j),                           (0.937613248825+0.347684770823j),                           (0.940225422382+0.340550601482j),                           (0.942881464958+0.33312189579j),                           (0.945559620857+0.325443327427j),                           (0.948240220547+0.31755694747j),                           (0.950899422169+0.309499144554j),                           (0.953524827957+0.301307469606j),                           (0.956105649471+0.293015599251j),                           (0.958630502224+0.284654557705j),                           (0.96103054285+0.276443749666j),                           (0.963361799717+0.26819768548j),                           (0.965623259544+0.259936869144j),                           (0.967810571194+0.251679092646j),                           (0.969916880131+0.243440493941j),                           (0.971936583519+0.235235646367j),                           (0.97387367487+0.227080151439j),                           (0.975726902485+0.218987599015j),                           (0.977494239807+0.210969462991j),                           (0.979169845581+0.203035995364j),                           (0.980761289597+0.195199295878j),                           (0.982269346714+0.187469303608j),                           (0.983659446239+0.180052131414j),                           (0.984931468964+0.1729388237j),                           (0.986136198044+0.165923252702j),                           (0.987275123596+0.159012272954j),                           (0.988349795341+0.15221118927j),                           (0.989354014397+0.145524248481j),                           (0.990296065807+0.138957872987j),                           (0.991178870201+0.132516458631j),                           (0.992005050182+0.126204773784j),                           (0.992770493031+0.120025672019j),                           (0.993480443954+0.113984130323j),                           (0.994139909744+0.108083210886j),                           (0.994751393795+0.102326385677j),                           (0.995293080807+0.0969148278236j),                           (0.995791256428+0.091630294919j),                           (0.996252119541+0.0864710733294j),                           (0.996678769588+0.0814334899187j),                           (0.997069239616+0.0765165910125j),                           (0.997423350811+0.071716658771j),                           (0.997748315334+0.0670333206654j),                           (0.998046517372+0.0624645166099j),                           (0.998317599297+0.058009263128j),                           (0.998557567596+0.053665690124j),                           (0.998775064945+0.0494344644248j),                           (0.998971700668+0.0453144386411j),                           (0.999140620232+0.0415064357221j),                           (0.99927687645+0.0379924885929j),                           (0.999400436878+0.0345549099147j),                           (0.999511957169+0.0311931278557j),                           (0.99961233139+0.0279070306569j),                           (0.999694347382+0.0246965941042j),                           (0.999765276909+0.0215622838587j),                           (0.999826848507+0.0185046810657j),                           (0.999880313873+0.0155246723443j),                           (0.999920129776+0.0126227736473j),                           (0.999949812889+0.00980060640723j),                           (0.99997317791+0.00705910893157j),                           (0.999990820885+0.00439921114594j),                           (0.999998450279+0.00202245195396j),                           (0.999998092651-0.00029227725463j),                           (0.999994516373-0.00254815118387j),                           (0.999988794327-0.00474932929501j),                           (0.999977111816-0.00689708162099j),                           (0.999957799911-0.00899503659457j),                           (0.999936699867-0.0110441967845j),                           (0.999914228916-0.0130464555696j),                           (0.999889075756-0.0150024276227j),                           (0.999855577946-0.0169130507857j),                           (0.999821305275-0.0187777336687j),                           (0.999786794186-0.0205969288945j))        sampling_freq = 10e3        freq = sampling_freq / 100        alpha = 0.1        beta = alpha * alpha / 4.0        maxf = 1        minf = -1        src = gr.sig_source_c (sampling_freq, gr.GR_COS_WAVE, freq, 1.0)        pll = gr.pll_carriertracking_cc(alpha, beta, maxf, minf)        head = gr.head (gr.sizeof_gr_complex, int (freq))        dst = gr.vector_sink_c ()        self.fg.connect (src, pll, head)        self.fg.connect (head, dst)        self.fg.run ()        dst_data = dst.data ()        self.assertComplexTuplesAlmostEqual (expected_result, dst_data, 5)if __name__ == '__main__':    gr_unittest.main ()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -