qampy


Nameqampy JSON
Version 0.5.0 PyPI version JSON
download
home_page
SummaryA python based package of communications qampy tools
upload_time2023-02-08 09:47:14
maintainer
docs_urlNone
authorJochen Schröder, Mikael Mazur and Zonglong He
requires_python>=3.7
licenseGPLv3
keywords digital signal processing communications photonics science
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # QAMPy a DSP chain for optical communication signals

[![DOI](https://zenodo.org/badge/124787512.svg)](https://zenodo.org/badge/latestdoi/124787512)

<!-- start description -->
QAMPy is a dsp chain for simulation and equalisation of signals from optical communication transmissions.
It is written in Python, but has been designed for high performance and most performance critical 
functions are written with [pythran](https://github.com/serge-sans-paille/pythran) to run at speed of compiled c or c++
code.

QAMPy can equalise BPSK, QPSK and higher-order QAM signals as well as simulate signal impairments. 

## Equalisation 

For signal equalisation it contains:

 * CMA and modified CMA equalisation algorithms 
 * Radius directed equalisers
 * several decision directed equaliser implementations 
 * phase recovery using blind phase search (BPS) and ViterbiViterbi algorithms
 * frequency offset compensation
 * a complete set of pilot-based equalisation routines, including frame synchronization, frequency offset 
estimation, adaptive equalisation and phase recovery
 * additional data-aided and real-valued adaptive equaliser routines
 
## Impairments
 
It can simulate the following impairments:

 * frequency offset
 * SNR
 * PMD
 * phase noise
 * transceiver impairments such as modulator nonlinearity, DAC frequency response and limited ENOB
 
## Signal Quality Metrics

QAMpy is designed to make working with QAM signals easy and includes calculations for several
performance metrics:

 * Symbol Error Rate (SER)
 * Bit Error Rate (BER)
 * Error Vector Magnitude (EVM)
 * Generalized Mututal Information (GMI)
 
<!-- end description -->

## Documentation

We put a strong focus on documenting our functions and most public functions should be well documented. 
Use help in jupyter notebook to excess the documenation. 

You can access documentation with an extensive API at our [website](http://qampy.org).

For examples of how to use QAMpy see the Scripts and the Notebooks subdirectory, note that not all files are up-to-date
You should in particular look at the *cma_equaliser.py* and *64_qam_equalisation.py* files. 

## Installation
Installation instructions can be found here [here](http://qampy.org/installation/index.html#).

## Status

QAMpy is still in alpha status, however we daily in our work. We will try to keep the basic API stable
across releases, but implementation details under core might change without notice.

## Licence and Authors

QAMpy was written by Mikael Mazur and Jochen Schröder from the Photonics Laboratory at Chalmers University of Technology 
and is licenced under GPLv3 or later. 

## Citing

If you use QAMpy in your work please cite us as `Jochen Schröder and Mikael Mazur, "QAMPy a DSP chain for optical 
communications, DOI: 10.5281/zenodo.1195720"`.

## Acknowledgements
The GPU graphics card used for part of this work was donated by NVIDIA Corporation

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "qampy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "Jochen Schr\u00f6der <jochen.schroeder@chalmers.se>",
    "keywords": "digital signal processing,communications,photonics,science",
    "author": "Jochen Schr\u00f6der, Mikael Mazur and Zonglong He",
    "author_email": "Jochen Schr\u00f6der <jochen.schroeder@chalmers.se>, Mikael Mazur <mik.mazur@gmail.com>, Zonglong He <zonglong.he@chalmers.se>",
    "download_url": "https://files.pythonhosted.org/packages/af/f0/d6cac3e15c1bb93db4a4798038e5cbdcca0f873582a46cb5d373b8d87164/qampy-0.5.0.tar.gz",
    "platform": null,
    "description": "# QAMPy a DSP chain for optical communication signals\n\n[![DOI](https://zenodo.org/badge/124787512.svg)](https://zenodo.org/badge/latestdoi/124787512)\n\n<!-- start description -->\nQAMPy is a dsp chain for simulation and equalisation of signals from optical communication transmissions.\nIt is written in Python, but has been designed for high performance and most performance critical \nfunctions are written with [pythran](https://github.com/serge-sans-paille/pythran) to run at speed of compiled c or c++\ncode.\n\nQAMPy can equalise BPSK, QPSK and higher-order QAM signals as well as simulate signal impairments. \n\n## Equalisation \n\nFor signal equalisation it contains:\n\n * CMA and modified CMA equalisation algorithms \n * Radius directed equalisers\n * several decision directed equaliser implementations \n * phase recovery using blind phase search (BPS) and ViterbiViterbi algorithms\n * frequency offset compensation\n * a complete set of pilot-based equalisation routines, including frame synchronization, frequency offset \nestimation, adaptive equalisation and phase recovery\n * additional data-aided and real-valued adaptive equaliser routines\n \n## Impairments\n \nIt can simulate the following impairments:\n\n * frequency offset\n * SNR\n * PMD\n * phase noise\n * transceiver impairments such as modulator nonlinearity, DAC frequency response and limited ENOB\n \n## Signal Quality Metrics\n\nQAMpy is designed to make working with QAM signals easy and includes calculations for several\nperformance metrics:\n\n * Symbol Error Rate (SER)\n * Bit Error Rate (BER)\n * Error Vector Magnitude (EVM)\n * Generalized Mututal Information (GMI)\n \n<!-- end description -->\n\n## Documentation\n\nWe put a strong focus on documenting our functions and most public functions should be well documented. \nUse help in jupyter notebook to excess the documenation. \n\nYou can access documentation with an extensive API at our [website](http://qampy.org).\n\nFor examples of how to use QAMpy see the Scripts and the Notebooks subdirectory, note that not all files are up-to-date\nYou should in particular look at the *cma_equaliser.py* and *64_qam_equalisation.py* files. \n\n## Installation\nInstallation instructions can be found here [here](http://qampy.org/installation/index.html#).\n\n## Status\n\nQAMpy is still in alpha status, however we daily in our work. We will try to keep the basic API stable\nacross releases, but implementation details under core might change without notice.\n\n## Licence and Authors\n\nQAMpy was written by Mikael Mazur and Jochen Schr\u00f6der from the Photonics Laboratory at Chalmers University of Technology \nand is licenced under GPLv3 or later. \n\n## Citing\n\nIf you use QAMpy in your work please cite us as `Jochen Schr\u00f6der and Mikael Mazur, \"QAMPy a DSP chain for optical \ncommunications, DOI: 10.5281/zenodo.1195720\"`.\n\n## Acknowledgements\nThe GPU graphics card used for part of this work was donated by NVIDIA Corporation\n",
    "bugtrack_url": null,
    "license": "GPLv3",
    "summary": "A python based package of communications qampy tools",
    "version": "0.5.0",
    "split_keywords": [
        "digital signal processing",
        "communications",
        "photonics",
        "science"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aff0d6cac3e15c1bb93db4a4798038e5cbdcca0f873582a46cb5d373b8d87164",
                "md5": "389c1aef008e38bfbc8c5de470b624d8",
                "sha256": "957ccefbc89b7c280cb10643da6bdc78e78812a1c46e3367dd273c635cf8d981"
            },
            "downloads": -1,
            "filename": "qampy-0.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "389c1aef008e38bfbc8c5de470b624d8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 81074564,
            "upload_time": "2023-02-08T09:47:14",
            "upload_time_iso_8601": "2023-02-08T09:47:14.636611Z",
            "url": "https://files.pythonhosted.org/packages/af/f0/d6cac3e15c1bb93db4a4798038e5cbdcca0f873582a46cb5d373b8d87164/qampy-0.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-02-08 09:47:14",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "qampy"
}
        
Elapsed time: 0.47381s