channelizers


Namechannelizers JSON
Version 1.0 PyPI version JSON
download
home_pagehttps://github.com/WhataDavid/Channelizer
SummaryA python package for ultra bandwidth signal process, can divide signal into several narrow bandwidth signal
upload_time2024-11-24 04:12:31
maintainerNone
docs_urlNone
authorduxu
requires_pythonNone
licenseMIT
keywords python channelizer pfb ultra bandwidth signal astronomy
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# Channelizer
### For ultra bandwidth signal process ###
### Supporting: ###
- Critically sampled channelizer
- Integer-oversampled channelizer
- Rationally-oversampled channelizer
### Using them by modify M and D ###
### Code Example: ###
```python
    # filter taps:
    TAPS = 63
    # channel_num(branch), Number of frequency bands :
    CHANNEL_NUM = 4
    # M equal channel_num(branch), more article call it M:
    M = CHANNEL_NUM
    # Decimation factor
    D = 3
    # if D = M : Critical polyphase filter bank(CSPFB)
    # if M is multiples of D : Integer-oversample filter bank(IOSPFB)
    # else if D < M : Rationally-oversampled filter bank(ROSPFB)

    np_data = np.loadtxt(r'\mini_data.txt')
    coe = realignment_coe(TAPS, CHANNEL_NUM, D)
    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)
    fft_res = np.fft.ifft(polyphase_filter_res, axis=0)
    plot_sub(fft_res, CHANNEL_NUM, "DX " + str(CHANNEL_NUM) + "/" + str(D) + "X channelizer with z gcd result:")
    
    coe = realignment_coe(TAPS, CHANNEL_NUM, D)
    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)
    rotate_res = circular_rotate(polyphase_filter_res, CHANNEL_NUM, D)
    fft_res = np.fft.ifft(rotate_res, axis=0)
    plot_sub(fft_res, CHANNEL_NUM,"DX " + str(CHANNEL_NUM) + "/" + str(D) + "X channelizer with z gcd and rotate result:")
    
    coe = realignment_coe(TAPS, CHANNEL_NUM, D)
    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)
    rotate_res = circular_rotate(polyphase_filter_res, CHANNEL_NUM, D)
    cut_res = cut_extra_channel_data_by_tail(np.fft.fft(np.fft.ifft(rotate_res, axis=0)), CHANNEL_NUM,D) * D / M
    plot_sub(np.fft.ifft(cut_res), CHANNEL_NUM,"DX " + str(CHANNEL_NUM) + "/" + str(D) + "X channelizer with z gcd rotate and cut result:")
```
### Install ###
```pip install channelizer```

Or clone code
### More detail and information please access curent project's pypi website ###

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/WhataDavid/Channelizer",
    "name": "channelizers",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "python, channelizer, PFB, ultra bandwidth signal, astronomy",
    "author": "duxu",
    "author_email": "duxu@xao.ac.cn",
    "download_url": "https://files.pythonhosted.org/packages/9f/40/3a890bf59a9b0bf7ca9565e5dc47cfadc7cd0ec6b4eb083ffb7befa91115/channelizers-1.0.tar.gz",
    "platform": null,
    "description": "\r\n# Channelizer\r\n### For ultra bandwidth signal process ###\r\n### Supporting: ###\r\n- Critically sampled channelizer\r\n- Integer-oversampled channelizer\r\n- Rationally-oversampled channelizer\r\n### Using them by modify M and D ###\r\n### Code Example: ###\r\n```python\r\n    # filter taps:\r\n    TAPS = 63\r\n    # channel_num(branch), Number of frequency bands :\r\n    CHANNEL_NUM = 4\r\n    # M equal channel_num(branch), more article call it M:\r\n    M = CHANNEL_NUM\r\n    # Decimation factor\r\n    D = 3\r\n    # if D = M : Critical polyphase filter bank(CSPFB)\r\n    # if M is multiples of D : Integer-oversample filter bank(IOSPFB)\r\n    # else if D < M : Rationally-oversampled filter bank(ROSPFB)\r\n\r\n    np_data = np.loadtxt(r'\\mini_data.txt')\r\n    coe = realignment_coe(TAPS, CHANNEL_NUM, D)\r\n    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)\r\n    fft_res = np.fft.ifft(polyphase_filter_res, axis=0)\r\n    plot_sub(fft_res, CHANNEL_NUM, \"DX \" + str(CHANNEL_NUM) + \"/\" + str(D) + \"X channelizer with z gcd result:\")\r\n    \r\n    coe = realignment_coe(TAPS, CHANNEL_NUM, D)\r\n    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)\r\n    rotate_res = circular_rotate(polyphase_filter_res, CHANNEL_NUM, D)\r\n    fft_res = np.fft.ifft(rotate_res, axis=0)\r\n    plot_sub(fft_res, CHANNEL_NUM,\"DX \" + str(CHANNEL_NUM) + \"/\" + str(D) + \"X channelizer with z gcd and rotate result:\")\r\n    \r\n    coe = realignment_coe(TAPS, CHANNEL_NUM, D)\r\n    polyphase_filter_res = polyphase_filter_bank_with_denominator_z(np_data, coe, CHANNEL_NUM, D)\r\n    rotate_res = circular_rotate(polyphase_filter_res, CHANNEL_NUM, D)\r\n    cut_res = cut_extra_channel_data_by_tail(np.fft.fft(np.fft.ifft(rotate_res, axis=0)), CHANNEL_NUM,D) * D / M\r\n    plot_sub(np.fft.ifft(cut_res), CHANNEL_NUM,\"DX \" + str(CHANNEL_NUM) + \"/\" + str(D) + \"X channelizer with z gcd rotate and cut result:\")\r\n```\r\n### Install ###\r\n```pip install channelizer```\r\n\r\nOr clone code\r\n### More detail and information please access curent project's pypi website ###\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A python package for ultra bandwidth signal process, can divide signal into several narrow bandwidth signal",
    "version": "1.0",
    "project_urls": {
        "Homepage": "https://github.com/WhataDavid/Channelizer"
    },
    "split_keywords": [
        "python",
        " channelizer",
        " pfb",
        " ultra bandwidth signal",
        " astronomy"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2418f1483b12958d10e77020e1602208bc93a7d2ff37b57d9e46e7d909f5ad71",
                "md5": "9d19d48b1af25f4897b7237378607798",
                "sha256": "ff59e2db6b0057181a91f41befbc68fcd16d44923359350168a16e65ba954b6b"
            },
            "downloads": -1,
            "filename": "channelizers-1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9d19d48b1af25f4897b7237378607798",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 1960,
            "upload_time": "2024-11-24T04:12:28",
            "upload_time_iso_8601": "2024-11-24T04:12:28.993957Z",
            "url": "https://files.pythonhosted.org/packages/24/18/f1483b12958d10e77020e1602208bc93a7d2ff37b57d9e46e7d909f5ad71/channelizers-1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9f403a890bf59a9b0bf7ca9565e5dc47cfadc7cd0ec6b4eb083ffb7befa91115",
                "md5": "179f817578841ec50d242e34a3df9332",
                "sha256": "2922c5f48372fa300cf4ea6775564293ded95c50b982c95f220b5efee0019241"
            },
            "downloads": -1,
            "filename": "channelizers-1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "179f817578841ec50d242e34a3df9332",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 19078,
            "upload_time": "2024-11-24T04:12:31",
            "upload_time_iso_8601": "2024-11-24T04:12:31.336334Z",
            "url": "https://files.pythonhosted.org/packages/9f/40/3a890bf59a9b0bf7ca9565e5dc47cfadc7cd0ec6b4eb083ffb7befa91115/channelizers-1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-24 04:12:31",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "WhataDavid",
    "github_project": "Channelizer",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "channelizers"
}
        
Elapsed time: 0.91866s