PyChOpMarg 1.1.3__tar.gz → 2.1.1__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 (28) hide show
  1. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/PKG-INFO +12 -10
  2. pychopmarg-2.1.1/README.md +5 -0
  3. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/pyproject.toml +10 -11
  4. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/PyChOpMarg.egg-info/PKG-INFO +12 -10
  5. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/PyChOpMarg.egg-info/SOURCES.txt +8 -2
  6. pychopmarg-2.1.1/src/PyChOpMarg.egg-info/requires.txt +4 -0
  7. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/pychopmarg/__init__.py +3 -3
  8. pychopmarg-2.1.1/src/pychopmarg/__main__.py +13 -0
  9. pychopmarg-2.1.1/src/pychopmarg/cli.py +51 -0
  10. pychopmarg-2.1.1/src/pychopmarg/com.py +1404 -0
  11. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/pychopmarg/common.py +4 -1
  12. pychopmarg-2.1.1/src/pychopmarg/noise.py +266 -0
  13. pychopmarg-2.1.1/src/pychopmarg/optimize.py +399 -0
  14. pychopmarg-2.1.1/src/pychopmarg/utility/__init__.py +6 -0
  15. pychopmarg-2.1.1/src/pychopmarg/utility/filter.py +124 -0
  16. pychopmarg-2.1.1/src/pychopmarg/utility/general.py +114 -0
  17. pychopmarg-2.1.1/src/pychopmarg/utility/probability.py +124 -0
  18. pychopmarg-1.1.3/src/pychopmarg/utility.py → pychopmarg-2.1.1/src/pychopmarg/utility/sparams.py +140 -5
  19. pychopmarg-1.1.3/README.md +0 -2
  20. pychopmarg-1.1.3/src/PyChOpMarg.egg-info/requires.txt +0 -6
  21. pychopmarg-1.1.3/src/pychopmarg/cli.py +0 -51
  22. pychopmarg-1.1.3/src/pychopmarg/com.py +0 -1323
  23. pychopmarg-1.1.3/src/pychopmarg/view.py +0 -485
  24. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/LICENSE +0 -0
  25. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/setup.cfg +0 -0
  26. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/PyChOpMarg.egg-info/dependency_links.txt +0 -0
  27. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/PyChOpMarg.egg-info/entry_points.txt +0 -0
  28. {pychopmarg-1.1.3 → pychopmarg-2.1.1}/src/PyChOpMarg.egg-info/top_level.txt +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyChOpMarg
3
- Version: 1.1.3
4
- Summary: Python implementation of COM, as per IEEE 802.3-22 Annex 93A.
3
+ Version: 2.1.1
4
+ Summary: Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
5
5
  Author-email: David Banas <capn.freako@gmail.com>
6
6
  License: BSD3
7
7
  Project-URL: documentation, https://pychopmarg.readthedocs.io/en/latest/
8
8
  Keywords: com,channel,margin
9
- Classifier: Development Status :: 2 - Pre-Alpha
9
+ Classifier: Development Status :: 3 - Alpha
10
10
  Classifier: Environment :: Console
11
11
  Classifier: Intended Audience :: Developers
12
12
  Classifier: Intended Audience :: Education
@@ -15,9 +15,10 @@ Classifier: Intended Audience :: Science/Research
15
15
  Classifier: License :: OSI Approved :: BSD License
16
16
  Classifier: Operating System :: OS Independent
17
17
  Classifier: Programming Language :: Python
18
- Classifier: Programming Language :: Python :: 3.9
19
18
  Classifier: Programming Language :: Python :: 3.10
20
19
  Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
21
22
  Classifier: Programming Language :: Python :: Implementation :: CPython
22
23
  Classifier: Topic :: Adaptive Technologies
23
24
  Classifier: Topic :: Scientific/Engineering
@@ -26,15 +27,16 @@ Classifier: Topic :: Scientific/Engineering :: Visualization
26
27
  Classifier: Topic :: System :: Emulators
27
28
  Classifier: Topic :: System :: Networking
28
29
  Classifier: Topic :: Utilities
29
- Requires-Python: <3.12,>=3.9
30
+ Requires-Python: <3.14,>=3.10
30
31
  Description-Content-Type: text/markdown
31
32
  License-File: LICENSE
32
- Requires-Dist: chaco>=6.0.0
33
33
  Requires-Dist: click
34
- Requires-Dist: numpy<2
35
- Requires-Dist: pyside6
34
+ Requires-Dist: numpy
36
35
  Requires-Dist: scikit-rf>=0.29
37
- Requires-Dist: traitsui>=8
36
+ Requires-Dist: typing_extensions
38
37
 
39
38
  # PyChOpMarg
40
- Python implementation of COM, as per IEEE 802.3-22 Annex 93A.
39
+
40
+ Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
41
+
42
+ - [Documentation](https://pychopmarg.readthedocs.io/en/latest/index.html)
@@ -0,0 +1,5 @@
1
+ # PyChOpMarg
2
+
3
+ Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
4
+
5
+ - [Documentation](https://pychopmarg.readthedocs.io/en/latest/index.html)
@@ -1,31 +1,29 @@
1
1
  [build-system]
2
2
  requires = [
3
- "Cython<3",
3
+ "Cython",
4
4
  "setuptools>=45",
5
- "swig<4",
5
+ "swig",
6
6
  ]
7
7
  build-backend = "setuptools.build_meta"
8
8
 
9
9
  [project]
10
10
  name = "PyChOpMarg"
11
- description = "Python implementation of COM, as per IEEE 802.3-22 Annex 93A."
12
- version = "1.1.3"
11
+ description = "Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A."
12
+ version = "2.1.1"
13
13
  authors = [{name = "David Banas", email = "capn.freako@gmail.com"}]
14
14
  urls = { documentation = "https://pychopmarg.readthedocs.io/en/latest/"}
15
15
  readme = "README.md"
16
- requires-python = ">=3.9,<3.12"
16
+ requires-python = ">=3.10,<3.14"
17
17
  license = {text = "BSD3"}
18
18
  dependencies = [
19
- "chaco>=6.0.0",
20
19
  "click",
21
- "numpy<2",
22
- "pyside6",
20
+ "numpy",
23
21
  "scikit-rf>=0.29",
24
- "traitsui>=8",
22
+ "typing_extensions", # SciKit-RF requires this, but doesn't include it itself.
25
23
  ]
26
24
  keywords=["com", "channel", "margin"]
27
25
  classifiers=[
28
- "Development Status :: 2 - Pre-Alpha",
26
+ "Development Status :: 3 - Alpha",
29
27
  "Environment :: Console",
30
28
  "Intended Audience :: Developers",
31
29
  "Intended Audience :: Education",
@@ -34,9 +32,10 @@ classifiers=[
34
32
  "License :: OSI Approved :: BSD License",
35
33
  "Operating System :: OS Independent",
36
34
  "Programming Language :: Python",
37
- "Programming Language :: Python :: 3.9",
38
35
  "Programming Language :: Python :: 3.10",
39
36
  "Programming Language :: Python :: 3.11",
37
+ "Programming Language :: Python :: 3.12",
38
+ "Programming Language :: Python :: 3.13",
40
39
  "Programming Language :: Python :: Implementation :: CPython",
41
40
  "Topic :: Adaptive Technologies",
42
41
  "Topic :: Scientific/Engineering",
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyChOpMarg
3
- Version: 1.1.3
4
- Summary: Python implementation of COM, as per IEEE 802.3-22 Annex 93A.
3
+ Version: 2.1.1
4
+ Summary: Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
5
5
  Author-email: David Banas <capn.freako@gmail.com>
6
6
  License: BSD3
7
7
  Project-URL: documentation, https://pychopmarg.readthedocs.io/en/latest/
8
8
  Keywords: com,channel,margin
9
- Classifier: Development Status :: 2 - Pre-Alpha
9
+ Classifier: Development Status :: 3 - Alpha
10
10
  Classifier: Environment :: Console
11
11
  Classifier: Intended Audience :: Developers
12
12
  Classifier: Intended Audience :: Education
@@ -15,9 +15,10 @@ Classifier: Intended Audience :: Science/Research
15
15
  Classifier: License :: OSI Approved :: BSD License
16
16
  Classifier: Operating System :: OS Independent
17
17
  Classifier: Programming Language :: Python
18
- Classifier: Programming Language :: Python :: 3.9
19
18
  Classifier: Programming Language :: Python :: 3.10
20
19
  Classifier: Programming Language :: Python :: 3.11
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
21
22
  Classifier: Programming Language :: Python :: Implementation :: CPython
22
23
  Classifier: Topic :: Adaptive Technologies
23
24
  Classifier: Topic :: Scientific/Engineering
@@ -26,15 +27,16 @@ Classifier: Topic :: Scientific/Engineering :: Visualization
26
27
  Classifier: Topic :: System :: Emulators
27
28
  Classifier: Topic :: System :: Networking
28
29
  Classifier: Topic :: Utilities
29
- Requires-Python: <3.12,>=3.9
30
+ Requires-Python: <3.14,>=3.10
30
31
  Description-Content-Type: text/markdown
31
32
  License-File: LICENSE
32
- Requires-Dist: chaco>=6.0.0
33
33
  Requires-Dist: click
34
- Requires-Dist: numpy<2
35
- Requires-Dist: pyside6
34
+ Requires-Dist: numpy
36
35
  Requires-Dist: scikit-rf>=0.29
37
- Requires-Dist: traitsui>=8
36
+ Requires-Dist: typing_extensions
38
37
 
39
38
  # PyChOpMarg
40
- Python implementation of COM, as per IEEE 802.3-22 Annex 93A.
39
+
40
+ Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
41
+
42
+ - [Documentation](https://pychopmarg.readthedocs.io/en/latest/index.html)
@@ -8,8 +8,14 @@ src/PyChOpMarg.egg-info/entry_points.txt
8
8
  src/PyChOpMarg.egg-info/requires.txt
9
9
  src/PyChOpMarg.egg-info/top_level.txt
10
10
  src/pychopmarg/__init__.py
11
+ src/pychopmarg/__main__.py
11
12
  src/pychopmarg/cli.py
12
13
  src/pychopmarg/com.py
13
14
  src/pychopmarg/common.py
14
- src/pychopmarg/utility.py
15
- src/pychopmarg/view.py
15
+ src/pychopmarg/noise.py
16
+ src/pychopmarg/optimize.py
17
+ src/pychopmarg/utility/__init__.py
18
+ src/pychopmarg/utility/filter.py
19
+ src/pychopmarg/utility/general.py
20
+ src/pychopmarg/utility/probability.py
21
+ src/pychopmarg/utility/sparams.py
@@ -0,0 +1,4 @@
1
+ click
2
+ numpy
3
+ scikit-rf>=0.29
4
+ typing_extensions
@@ -1,5 +1,5 @@
1
1
  """
2
- A Python implementation of COM, as per IEEE 802.3-22 Annex 93A.
2
+ A Python implementation of COM, as per IEEE 802.3-22 Annex 93A/178A.
3
3
 
4
4
  .. moduleauthor:: David Banas <capn.freako@gmail.com>
5
5
 
@@ -15,9 +15,9 @@ from importlib.metadata import version as _get_version
15
15
  # Set PEP396 version attribute
16
16
  try:
17
17
  __version__ = _get_version("PyChOpMarg")
18
- except Exception:
18
+ except Exception: # pylint: disable=broad-exception-caught
19
19
  __version__ = "(dev)"
20
20
 
21
- __date__ = "March 25, 2024"
21
+ __date__ = "October 21, 2024"
22
22
  __authors__ = "David Banas"
23
23
  __copy__ = "Copyright (c) 2024 David Banas"
@@ -0,0 +1,13 @@
1
+ """
2
+ Execute PyChOpMarg, according to command line arguments given.
3
+
4
+ Original Author: David Banas <capn.freako@gmail.com>
5
+ Original Date: 27 August 2024
6
+
7
+ Copyright (c) 2024 David Banas; all rights reserved World wide.
8
+ """
9
+
10
+ # from pychopmarg.cli import cli
11
+ # cli()
12
+ print("Sorry, the PyChOpMarg package is currently only usable as a library.")
13
+ print("It's GUI is currently broken.")
@@ -0,0 +1,51 @@
1
+ """
2
+ Main Entry Point for PyChOpMarg when using the CLI.
3
+
4
+ Original author: David Banas <capn.freako@gmail.com>
5
+
6
+ Original date: March 25, 2024
7
+
8
+ Copyright (c) 2024 David Banas; all rights reserved World wide.
9
+ """
10
+
11
+ # from pathlib import Path
12
+
13
+ # import click # type: ignore
14
+
15
+ # from pychopmarg import __version__
16
+ # from pychopmarg.com import COM
17
+
18
+
19
+ # ToDo: Activate when new `PyChOpMargUI` package is ready.
20
+ # @click.group(invoke_without_command=True, context_settings=dict(help_option_names=["-h", "--help"]))
21
+ # @click.pass_context
22
+ # @click.version_option(version=__version__)
23
+ # def cli(ctx):
24
+ # """
25
+ # PyChOpMargUI GUI.
26
+ # """
27
+
28
+ # if ctx.invoked_subcommand is None: # No sub-command like `sim` given open the GUI like default.
29
+ # theCOM = COM()
30
+
31
+ # # Show the GUI.
32
+ # theCOM.configure_traits(view=traits_view)
33
+
34
+
35
+ # @cli.command(context_settings=dict(help_option_names=["-h", "--help"]))
36
+ # @click.argument("config-file", type=click.Path(exists=True))
37
+ # @click.option("--results", "-r", type=click.Path(), help="Override the results filename.")
38
+ # def run(config_file, results):
39
+ # """
40
+ # Run a COM calculation without opening the GUI.
41
+
42
+ # Will load the CONFIG_FILE from the given filepath, run the
43
+ # COM calculation and then save the results into a file with the same name
44
+ # but a different extension as the configuration file.
45
+ # """
46
+ # theCOM = COM()
47
+ # theCOM.load_configuration(config_file)
48
+ # theCOM.simulate(initial_run=True, update_plots=True)
49
+ # if not results:
50
+ # results = Path(config_file).with_suffix(".pychopmarg_results")
51
+ # theCOM.save_results(results)