OptiCommPy 0.9.0__tar.gz → 0.10.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0/OptiCommPy.egg-info}/PKG-INFO +21 -13
  2. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/OptiCommPy.egg-info/SOURCES.txt +4 -0
  3. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/OptiCommPy.egg-info/requires.txt +2 -1
  4. {OptiCommPy-0.9.0/OptiCommPy.egg-info → OptiCommPy-0.10.0}/PKG-INFO +21 -13
  5. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/README.rst +20 -12
  6. OptiCommPy-0.10.0/optic/comm/fec.py +1055 -0
  7. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/comm/metrics.py +37 -30
  8. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/comm/modulation.py +138 -6
  9. OptiCommPy-0.10.0/optic/comm/ofdm.py +288 -0
  10. OptiCommPy-0.10.0/optic/comm/sources.py +241 -0
  11. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/dsp/carrierRecovery.py +54 -36
  12. OptiCommPy-0.10.0/optic/dsp/carrierRecoveryGPU.py +68 -0
  13. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/dsp/clockRecovery.py +37 -26
  14. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/dsp/core.py +258 -108
  15. OptiCommPy-0.10.0/optic/dsp/coreGPU.py +169 -0
  16. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/dsp/equalization.py +323 -131
  17. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/models/amplification.py +126 -87
  18. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/models/channels.py +37 -59
  19. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/models/devices.py +184 -107
  20. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/models/modelsGPU.py +44 -70
  21. OptiCommPy-0.10.0/optic/models/perturbation.py +607 -0
  22. OptiCommPy-0.10.0/optic/models/tx.py +337 -0
  23. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/plot.py +30 -19
  24. OptiCommPy-0.10.0/optic/utils.py +326 -0
  25. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/setup.py +4 -3
  26. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/tests/test_dsp.py +1 -1
  27. OptiCommPy-0.9.0/optic/comm/ofdm.py +0 -268
  28. OptiCommPy-0.9.0/optic/dsp/coreGPU.py +0 -52
  29. OptiCommPy-0.9.0/optic/models/tx.py +0 -195
  30. OptiCommPy-0.9.0/optic/utils.py +0 -170
  31. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/LICENSE +0 -0
  32. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/OptiCommPy.egg-info/dependency_links.txt +0 -0
  33. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/OptiCommPy.egg-info/top_level.txt +0 -0
  34. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/optic/__init__.py +0 -0
  35. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/runner +0 -0
  36. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/setup.cfg +0 -0
  37. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/tests/test_metrics.py +0 -0
  38. {OptiCommPy-0.9.0 → OptiCommPy-0.10.0}/tests/test_modulation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: OptiCommPy
3
- Version: 0.9.0
3
+ Version: 0.10.0
4
4
  Summary: Optical Communications Algorithms with Python
5
5
  Home-page: https://github.com/edsonportosilva/OptiCommPy
6
6
  Maintainer: Edson Porto da Silva
@@ -35,7 +35,7 @@ components of fiber optic communication systems, for educational and research pu
35
35
  :width: 600px
36
36
  :align: center
37
37
 
38
- |PyPI| |PyPI - Downloads| |Documentation Status| |DOI|
38
+ |PyPI| |PyPI - Downloads| |Documentation Status| |DOI| |JOSS|
39
39
 
40
40
  Available features
41
41
  ------------------
@@ -58,8 +58,9 @@ Available features
58
58
  - *Several NxN MIMO adaptive equalization algorithms*.
59
59
  - *Carrier phase recovery algorithms.*
60
60
 
61
+ - Functions to implement forward error correction (FEC) encoders and decoders.
61
62
  - For most of the cases, `Numba <https://numba.pydata.org/>`__ is used
62
- to speed up the core DSP functions.
63
+ to speed up the code.
63
64
  - Evaluate transmission performance with metrics such as:
64
65
 
65
66
  - *Bit-error-rate* (BER).
@@ -75,9 +76,15 @@ Available features
75
76
  How can I contribute?
76
77
  ---------------------
77
78
 
78
- If you want to contribute to this project, implement the feature you
79
- want and send me a pull request. If you want to suggest new features or
80
- discuss anything related to OptiCommPy, please get in touch with me
79
+ - If you want to contribute to this project:
80
+ - Create a new issue in the GitHub repository to discuss the feature you want to implement.
81
+ - Fork the repository and create a new branch.
82
+ - Make sure you have the latest version of the code.
83
+ - Check the conventions adopted in the code writing (e.g. naming conventions, docstrings, etc.).
84
+ - Remember to write an example of usage for the new feature you are implementing.
85
+ - After the process is finished, send a pull request.
86
+
87
+ - If you want to suggest or discuss anything related to OptiCommPy, please get in touch via e-mail
81
88
  (edsonporto88@gmail.com).
82
89
 
83
90
  Requirements/Dependencies
@@ -87,14 +94,15 @@ Requirements/Dependencies
87
94
  - numpy>=1.24.4
88
95
  - scipy>=1.13.0
89
96
  - matplotlib>=3.7.0
90
- - numba>=0.54.1,<=0.57.0
97
+ - numba>=0.54.1
91
98
  - tqdm>=4.64.1
92
99
  - simple-pid>=1.0.1
93
100
  - mpl-scatter-density>=0.7.0
94
101
  - sphinx-rtd-theme>=1.2.2
95
102
  - nbsphinx>=0.9.3
96
103
  - nbsphinx-link>=1.3.0
97
- - cupy-cuda12x >= 13.1.0 (optional, in case GPU processing is desired)
104
+ - prettytable>=3.16.0
105
+ - cupy-cuda12x>=13.1.0 (optional, in case GPU processing is desired)
98
106
 
99
107
  Installation
100
108
  ------------
@@ -123,16 +131,16 @@ You can find the latest documentation in
123
131
  Citing this repository
124
132
  ----------------------
125
133
 
126
- Edson Porto da Silva, Adolfo Herbster, Carlos Daniel Fontes da Silva, &
127
- Joaquin Matres. (2023). edsonportosilva/OptiCommPy: v0.7.0-alpha
128
- (v0.7.0-alpha). Zenodo. https://doi.org/10.5281/zenodo.10304945
134
+ Edson Porto da Silva, Adolfo Fernandes Herbster. "OptiCommPy: Open-source Simulation of Fiber Optic Communications with Python", *Journal of Open Source Software*, 9(98), 6600, (2024) https://doi.org/10.21105/joss.06600
129
135
 
130
136
  .. |PyPI| image:: https://img.shields.io/pypi/v/OptiCommPy?label=pypi%20package
131
137
  .. |PyPI - Downloads| image:: https://img.shields.io/pypi/dm/OptiCommPy
132
138
  .. |Documentation Status| image:: https://readthedocs.org/projects/opticommpy/badge/?version=latest
133
139
  :target: https://opticommpy.readthedocs.io/en/latest/?badge=latest
134
- .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.10304945.svg
135
- :target: https://doi.org/10.5281/zenodo.10304945
140
+ .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.11450597.svg
141
+ :target: https://doi.org/10.5281/zenodo.11450597
142
+ .. |JOSS| image:: https://joss.theoj.org/papers/10.21105/joss.06600/status.svg
143
+ :target: https://doi.org/10.21105/joss.06600
136
144
 
137
145
 
138
146
 
@@ -10,10 +10,13 @@ OptiCommPy.egg-info/top_level.txt
10
10
  optic/__init__.py
11
11
  optic/plot.py
12
12
  optic/utils.py
13
+ optic/comm/fec.py
13
14
  optic/comm/metrics.py
14
15
  optic/comm/modulation.py
15
16
  optic/comm/ofdm.py
17
+ optic/comm/sources.py
16
18
  optic/dsp/carrierRecovery.py
19
+ optic/dsp/carrierRecoveryGPU.py
17
20
  optic/dsp/clockRecovery.py
18
21
  optic/dsp/core.py
19
22
  optic/dsp/coreGPU.py
@@ -22,6 +25,7 @@ optic/models/amplification.py
22
25
  optic/models/channels.py
23
26
  optic/models/devices.py
24
27
  optic/models/modelsGPU.py
28
+ optic/models/perturbation.py
25
29
  optic/models/tx.py
26
30
  tests/test_dsp.py
27
31
  tests/test_metrics.py
@@ -3,9 +3,10 @@ scipy>=1.13.0
3
3
  matplotlib>=3.7.0
4
4
  sympy
5
5
  tqdm>=4.64.1
6
- numba<=0.57,>=0.54.0
6
+ numba>=0.54.0
7
7
  simple-pid>=1.0.1
8
8
  mpl-scatter-density>=0.7.0
9
9
  sphinx-rtd-theme>=1.2.2
10
10
  nbsphinx>=0.9.3
11
11
  nbsphinx-link>=1.3.0
12
+ prettytable>=3.16.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: OptiCommPy
3
- Version: 0.9.0
3
+ Version: 0.10.0
4
4
  Summary: Optical Communications Algorithms with Python
5
5
  Home-page: https://github.com/edsonportosilva/OptiCommPy
6
6
  Maintainer: Edson Porto da Silva
@@ -35,7 +35,7 @@ components of fiber optic communication systems, for educational and research pu
35
35
  :width: 600px
36
36
  :align: center
37
37
 
38
- |PyPI| |PyPI - Downloads| |Documentation Status| |DOI|
38
+ |PyPI| |PyPI - Downloads| |Documentation Status| |DOI| |JOSS|
39
39
 
40
40
  Available features
41
41
  ------------------
@@ -58,8 +58,9 @@ Available features
58
58
  - *Several NxN MIMO adaptive equalization algorithms*.
59
59
  - *Carrier phase recovery algorithms.*
60
60
 
61
+ - Functions to implement forward error correction (FEC) encoders and decoders.
61
62
  - For most of the cases, `Numba <https://numba.pydata.org/>`__ is used
62
- to speed up the core DSP functions.
63
+ to speed up the code.
63
64
  - Evaluate transmission performance with metrics such as:
64
65
 
65
66
  - *Bit-error-rate* (BER).
@@ -75,9 +76,15 @@ Available features
75
76
  How can I contribute?
76
77
  ---------------------
77
78
 
78
- If you want to contribute to this project, implement the feature you
79
- want and send me a pull request. If you want to suggest new features or
80
- discuss anything related to OptiCommPy, please get in touch with me
79
+ - If you want to contribute to this project:
80
+ - Create a new issue in the GitHub repository to discuss the feature you want to implement.
81
+ - Fork the repository and create a new branch.
82
+ - Make sure you have the latest version of the code.
83
+ - Check the conventions adopted in the code writing (e.g. naming conventions, docstrings, etc.).
84
+ - Remember to write an example of usage for the new feature you are implementing.
85
+ - After the process is finished, send a pull request.
86
+
87
+ - If you want to suggest or discuss anything related to OptiCommPy, please get in touch via e-mail
81
88
  (edsonporto88@gmail.com).
82
89
 
83
90
  Requirements/Dependencies
@@ -87,14 +94,15 @@ Requirements/Dependencies
87
94
  - numpy>=1.24.4
88
95
  - scipy>=1.13.0
89
96
  - matplotlib>=3.7.0
90
- - numba>=0.54.1,<=0.57.0
97
+ - numba>=0.54.1
91
98
  - tqdm>=4.64.1
92
99
  - simple-pid>=1.0.1
93
100
  - mpl-scatter-density>=0.7.0
94
101
  - sphinx-rtd-theme>=1.2.2
95
102
  - nbsphinx>=0.9.3
96
103
  - nbsphinx-link>=1.3.0
97
- - cupy-cuda12x >= 13.1.0 (optional, in case GPU processing is desired)
104
+ - prettytable>=3.16.0
105
+ - cupy-cuda12x>=13.1.0 (optional, in case GPU processing is desired)
98
106
 
99
107
  Installation
100
108
  ------------
@@ -123,16 +131,16 @@ You can find the latest documentation in
123
131
  Citing this repository
124
132
  ----------------------
125
133
 
126
- Edson Porto da Silva, Adolfo Herbster, Carlos Daniel Fontes da Silva, &
127
- Joaquin Matres. (2023). edsonportosilva/OptiCommPy: v0.7.0-alpha
128
- (v0.7.0-alpha). Zenodo. https://doi.org/10.5281/zenodo.10304945
134
+ Edson Porto da Silva, Adolfo Fernandes Herbster. "OptiCommPy: Open-source Simulation of Fiber Optic Communications with Python", *Journal of Open Source Software*, 9(98), 6600, (2024) https://doi.org/10.21105/joss.06600
129
135
 
130
136
  .. |PyPI| image:: https://img.shields.io/pypi/v/OptiCommPy?label=pypi%20package
131
137
  .. |PyPI - Downloads| image:: https://img.shields.io/pypi/dm/OptiCommPy
132
138
  .. |Documentation Status| image:: https://readthedocs.org/projects/opticommpy/badge/?version=latest
133
139
  :target: https://opticommpy.readthedocs.io/en/latest/?badge=latest
134
- .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.10304945.svg
135
- :target: https://doi.org/10.5281/zenodo.10304945
140
+ .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.11450597.svg
141
+ :target: https://doi.org/10.5281/zenodo.11450597
142
+ .. |JOSS| image:: https://joss.theoj.org/papers/10.21105/joss.06600/status.svg
143
+ :target: https://doi.org/10.21105/joss.06600
136
144
 
137
145
 
138
146
 
@@ -16,7 +16,7 @@ components of fiber optic communication systems, for educational and research pu
16
16
  :width: 600px
17
17
  :align: center
18
18
 
19
- |PyPI| |PyPI - Downloads| |Documentation Status| |DOI|
19
+ |PyPI| |PyPI - Downloads| |Documentation Status| |DOI| |JOSS|
20
20
 
21
21
  Available features
22
22
  ------------------
@@ -39,8 +39,9 @@ Available features
39
39
  - *Several NxN MIMO adaptive equalization algorithms*.
40
40
  - *Carrier phase recovery algorithms.*
41
41
 
42
+ - Functions to implement forward error correction (FEC) encoders and decoders.
42
43
  - For most of the cases, `Numba <https://numba.pydata.org/>`__ is used
43
- to speed up the core DSP functions.
44
+ to speed up the code.
44
45
  - Evaluate transmission performance with metrics such as:
45
46
 
46
47
  - *Bit-error-rate* (BER).
@@ -56,9 +57,15 @@ Available features
56
57
  How can I contribute?
57
58
  ---------------------
58
59
 
59
- If you want to contribute to this project, implement the feature you
60
- want and send me a pull request. If you want to suggest new features or
61
- discuss anything related to OptiCommPy, please get in touch with me
60
+ - If you want to contribute to this project:
61
+ - Create a new issue in the GitHub repository to discuss the feature you want to implement.
62
+ - Fork the repository and create a new branch.
63
+ - Make sure you have the latest version of the code.
64
+ - Check the conventions adopted in the code writing (e.g. naming conventions, docstrings, etc.).
65
+ - Remember to write an example of usage for the new feature you are implementing.
66
+ - After the process is finished, send a pull request.
67
+
68
+ - If you want to suggest or discuss anything related to OptiCommPy, please get in touch via e-mail
62
69
  (edsonporto88@gmail.com).
63
70
 
64
71
  Requirements/Dependencies
@@ -68,14 +75,15 @@ Requirements/Dependencies
68
75
  - numpy>=1.24.4
69
76
  - scipy>=1.13.0
70
77
  - matplotlib>=3.7.0
71
- - numba>=0.54.1,<=0.57.0
78
+ - numba>=0.54.1
72
79
  - tqdm>=4.64.1
73
80
  - simple-pid>=1.0.1
74
81
  - mpl-scatter-density>=0.7.0
75
82
  - sphinx-rtd-theme>=1.2.2
76
83
  - nbsphinx>=0.9.3
77
84
  - nbsphinx-link>=1.3.0
78
- - cupy-cuda12x >= 13.1.0 (optional, in case GPU processing is desired)
85
+ - prettytable>=3.16.0
86
+ - cupy-cuda12x>=13.1.0 (optional, in case GPU processing is desired)
79
87
 
80
88
  Installation
81
89
  ------------
@@ -104,16 +112,16 @@ You can find the latest documentation in
104
112
  Citing this repository
105
113
  ----------------------
106
114
 
107
- Edson Porto da Silva, Adolfo Herbster, Carlos Daniel Fontes da Silva, &
108
- Joaquin Matres. (2023). edsonportosilva/OptiCommPy: v0.7.0-alpha
109
- (v0.7.0-alpha). Zenodo. https://doi.org/10.5281/zenodo.10304945
115
+ Edson Porto da Silva, Adolfo Fernandes Herbster. "OptiCommPy: Open-source Simulation of Fiber Optic Communications with Python", *Journal of Open Source Software*, 9(98), 6600, (2024) https://doi.org/10.21105/joss.06600
110
116
 
111
117
  .. |PyPI| image:: https://img.shields.io/pypi/v/OptiCommPy?label=pypi%20package
112
118
  .. |PyPI - Downloads| image:: https://img.shields.io/pypi/dm/OptiCommPy
113
119
  .. |Documentation Status| image:: https://readthedocs.org/projects/opticommpy/badge/?version=latest
114
120
  :target: https://opticommpy.readthedocs.io/en/latest/?badge=latest
115
- .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.10304945.svg
116
- :target: https://doi.org/10.5281/zenodo.10304945
121
+ .. |DOI| image:: https://zenodo.org/badge/DOI/10.5281/zenodo.11450597.svg
122
+ :target: https://doi.org/10.5281/zenodo.11450597
123
+ .. |JOSS| image:: https://joss.theoj.org/papers/10.21105/joss.06600/status.svg
124
+ :target: https://doi.org/10.21105/joss.06600
117
125
 
118
126
 
119
127