Skip to content

Commit 4e9eda4

Browse files
committed
Renaming.
1 parent 40a8f25 commit 4e9eda4

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed

README

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
.. -*- mode: rst -*-
2+
3+
.. image:: https://secure.travis-ci.org/veeresht/CommPy.svg?branch=master
4+
:target: https://secure.travis-ci.org/veeresht/CommPy
5+
6+
.. image:: https://coveralls.io/repos/veeresht/CommPy/badge.svg
7+
:target: https://coveralls.io/r/veeresht/CommPy
8+
9+
.. image:: https://badge.fury.io/py/scikit-commpy.svg
10+
:target: https://badge.fury.io/py/scikit-commpy
11+
12+
.. image:: https://readthedocs.org/projects/commpy/badge/?version=latest
13+
:target: http://commpy.readthedocs.io/en/latest/?badge=latest
14+
:alt: Documentation Status
15+
16+
17+
CommPy
18+
======
19+
20+
CommPy is an open source toolkit implementing digital communications algorithms
21+
in Python using NumPy and SciPy.
22+
23+
Objectives
24+
----------
25+
- To provide readable and useable implementations of algorithms used in the research, design and implementation of digital communication systems.
26+
27+
Available Features
28+
------------------
29+
Channel Coding
30+
~~~~~~~~~~~~~~
31+
- Encoder for Convolutional Codes (Polynomial, Recursive Systematic). Supports all rates and puncture matrices.
32+
- Viterbi Decoder for Convolutional Codes (Hard Decision Output).
33+
- MAP Decoder for Convolutional Codes (Based on the BCJR algorithm).
34+
- Encoder for a rate-1/3 systematic parallel concatenated Turbo Code.
35+
- Turbo Decoder for a rate-1/3 systematic parallel concatenated turbo code (Based on the MAP decoder/BCJR algorithm).
36+
- Binary Galois Field GF(2^m) with minimal polynomials and cyclotomic cosets.
37+
- Create all possible generator polynomials for a (n,k) cyclic code.
38+
- Random Interleavers and De-interleavers.
39+
- Belief Propagation (BP) Decoder for LDPC Codes.
40+
41+
Channel Models
42+
~~~~~~~~~~~~~~
43+
- Binary Erasure Channel (BEC)
44+
- Binary Symmetric Channel (BSC)
45+
- Binary AWGN Channel (BAWGNC)
46+
47+
Filters
48+
~~~~~~~
49+
- Rectangular
50+
- Raised Cosine (RC), Root Raised Cosine (RRC)
51+
- Gaussian
52+
53+
Impairments
54+
~~~~~~~~~~~
55+
- Carrier Frequency Offset (CFO)
56+
57+
Modulation/Demodulation
58+
~~~~~~~~~~~~~~~~~~~~~~~
59+
- Phase Shift Keying (PSK)
60+
- Quadrature Amplitude Modulation (QAM)
61+
- OFDM Tx/Rx signal processing
62+
63+
Sequences
64+
~~~~~~~~~
65+
- PN Sequence
66+
- Zadoff-Chu (ZC) Sequence
67+
68+
Utilities
69+
~~~~~~~~~
70+
- Decimal to bit-array, bit-array to decimal.
71+
- Hamming distance, Euclidean distance.
72+
- Upsample
73+
74+
FAQs
75+
----
76+
Why are you developing this?
77+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
78+
During my coursework in communication theory and systems at UCSD, I realized that the best way to actually learn and understand the theory is to try and implement ''the Math'' in practice :). Having used Scipy before, I thought there should be a similar package for Digital Communications in Python. This is a start!
79+
80+
What programming languages do you use?
81+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
82+
CommPy uses Python as its base programming language and python packages like NumPy, SciPy and Matplotlib.
83+
84+
How can I contribute?
85+
~~~~~~~~~~~~~~~~~~~~~
86+
Implement any feature you want and send me a pull request :). If you want to suggest new features or discuss anything related to CommPy, please get in touch with me (veeresht@gmail.com).
87+
88+
How do I use CommPy?
89+
~~~~~~~~~~~~~~~~~~~~
90+
Requirements/Dependencies
91+
^^^^^^^^^^^^^^^^^^^^^^^^^
92+
- python 2.7 or above
93+
- numpy 1.9 or above
94+
- scipy 0.15 or above
95+
- matplotlib 1.4 or above
96+
- nose 1.3 or above
97+
98+
Installation
99+
^^^^^^^^^^^^
100+
101+
- To use the released version on PyPi, use pip or conda to install as follows::
102+
103+
$ pip install scikit-commpy
104+
$ conda install -c https://conda.binstar.org/veeresht scikit-commpy
105+
106+
- To work with the development branch, clone from github and install as follows::
107+
108+
$ git clone https://github.com/veeresht/CommPy.git
109+
$ cd CommPy
110+
$ python setup.py install
111+
112+
Citing CommPy
113+
^^^^^^^^^^^^^
114+
If you use CommPy for a publication, presentation or a demo, I request you to please cite CommPy as follows:
115+
116+
Veeresh Taranalli, "CommPy: Digital Communication with Python, version 0.3.0. Available at https://github.com/veeresht/CommPy", 2015.
117+
118+
I would also greatly appreciate your feedback if you have found CommPy useful. Just send me a mail: veeresht@gmail.com
119+
120+
For more details on CommPy, please visit http://veeresht.github.com/CommPy

0 commit comments

Comments
 (0)