PyFiberModes 0.11.0__tar.gz → 0.12.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 (119) hide show
  1. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.zenodo.json +1 -1
  2. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/CHANGELOG.md +10 -1
  3. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PKG-INFO +1 -1
  4. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/_version.py +2 -2
  5. pyfibermodes-0.12.0/PyFiberModes/directories.py +30 -0
  6. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes.egg-info/PKG-INFO +1 -1
  7. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes.egg-info/SOURCES.txt +2 -3
  8. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/conda.recipe/meta.yaml +1 -1
  9. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/pyproject.toml +1 -1
  10. pyfibermodes-0.12.0/tests/__init__.py +1 -0
  11. pyfibermodes-0.12.0/tests/helpers.py +13 -0
  12. pyfibermodes-0.12.0/tests/test_architecture.py +27 -0
  13. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_ssif.py +1 -1
  14. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_tlsif.py +1 -1
  15. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_validation.py +1 -1
  16. pyfibermodes-0.11.0/PyFiberModes/directories.py +0 -32
  17. pyfibermodes-0.11.0/PyFiberModes/tools/__init__.py +0 -0
  18. pyfibermodes-0.11.0/PyFiberModes/tools/directories.py +0 -41
  19. pyfibermodes-0.11.0/PyFiberModes/tools/utils.py +0 -20
  20. pyfibermodes-0.11.0/tests/__init__.py +0 -0
  21. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.coveragerc +0 -0
  22. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/dependabot.yml +0 -0
  23. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/deploy_PyPi.yml +0 -0
  24. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/deploy_anaconda.yml +0 -0
  25. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/deploy_coverage.yml +0 -0
  26. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/deploy_documentation.yml +0 -0
  27. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/quality.yml +0 -0
  28. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.github/workflows/tests.yml +0 -0
  29. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/.gitignore +0 -0
  30. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/CITATION.cff +0 -0
  31. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/CONTRIBUTING.md +0 -0
  32. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/LICENSE +0 -0
  33. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/MANIFEST.in +0 -0
  34. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/Makefile +0 -0
  35. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/__future__.py +0 -0
  36. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/__init__.py +0 -0
  37. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/analysis.py +0 -0
  38. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/coordinates.py +0 -0
  39. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/factory.py +0 -0
  40. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber.py +0 -0
  41. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/1550BHP.yaml +0 -0
  42. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/DCF13.yaml +0 -0
  43. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/DCF1300S_20.yaml +0 -0
  44. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/DCF1300S_26.yaml +0 -0
  45. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/DCF1300S_33.yaml +0 -0
  46. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/DCF1300S_42.yaml +0 -0
  47. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/F2028M12.yaml +0 -0
  48. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/F2028M21.yaml +0 -0
  49. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/F2028M24.yaml +0 -0
  50. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/F2058G1.yaml +0 -0
  51. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/F2058L1.yaml +0 -0
  52. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/HI1060.yaml +0 -0
  53. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/HP630.yaml +0 -0
  54. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/SM1950.yaml +0 -0
  55. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/SMF28.yaml +0 -0
  56. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/fluorine_doped_1%_capillary.yaml +0 -0
  57. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/fluorine_doped_2%_capillary.yaml +0 -0
  58. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/test_fiber.yaml +0 -0
  59. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fiber_files/test_multimode_fiber.yaml +0 -0
  60. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/field.py +0 -0
  61. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/fundamentals.py +0 -0
  62. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/loader.py +0 -0
  63. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/mode.py +0 -0
  64. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/mode_instances.py +0 -0
  65. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/optimization.py +0 -0
  66. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/propagation.py +0 -0
  67. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/__init__.py +0 -0
  68. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/base_solver.py +0 -0
  69. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/mlsif/__init__.py +0 -0
  70. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/mlsif/neff.py +0 -0
  71. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/ssif/__init__.py +0 -0
  72. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/ssif/cutoff.py +0 -0
  73. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/ssif/neff.py +0 -0
  74. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/tlsif/__init__.py +0 -0
  75. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/solver/tlsif/cutoff.py +0 -0
  76. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/source.py +0 -0
  77. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes/stepindex.py +0 -0
  78. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes.egg-info/dependency_links.txt +0 -0
  79. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes.egg-info/requires.txt +0 -0
  80. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/PyFiberModes.egg-info/top_level.txt +0 -0
  81. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/README.rst +0 -0
  82. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/Makefile +0 -0
  83. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/DCF/README.rst +0 -0
  84. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/DCF/plot_DCF_fields.py +0 -0
  85. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/README.rst +0 -0
  86. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/SMF28/README.rst +0 -0
  87. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/SMF28/plot_smf28.py +0 -0
  88. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/SMF28/plot_smf28_dispersion_vs_wavelength.py +0 -0
  89. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/SMF28/plot_smf28_group_index_vs_wavelength.py +0 -0
  90. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/README.rst +0 -0
  91. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_U_vs_V.py +0 -0
  92. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_comparison_solvers.py +0 -0
  93. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_dispersion.py +0 -0
  94. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_effective_index.py +0 -0
  95. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_fiber_LP_modes.py +0 -0
  96. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_group_index.py +0 -0
  97. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_mode_field.py +0 -0
  98. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_mode_field_1.py +0 -0
  99. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_mode_field_2.py +0 -0
  100. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/examples/basic/plot_neff_tapered_fiber.py +0 -0
  101. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/make.bat +0 -0
  102. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/_static/default.css +0 -0
  103. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/_static/thumbnail.png +0 -0
  104. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/code.rst +0 -0
  105. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/conf.py +0 -0
  106. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/examples.rst +0 -0
  107. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/docs/source/index.rst +0 -0
  108. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/pytest.ini +0 -0
  109. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/setup.cfg +0 -0
  110. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_advanced_features.py +0 -0
  111. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_api.py +0 -0
  112. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_coordinates.py +0 -0
  113. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_fiber.py +0 -0
  114. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_field.py +0 -0
  115. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_file_loading.py +0 -0
  116. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tests/test_release_tools.py +0 -0
  117. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tools/check_release.py +0 -0
  118. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tools/next_release_version.py +0 -0
  119. {pyfibermodes-0.11.0 → pyfibermodes-0.12.0}/tools/release_tag.py +0 -0
@@ -9,7 +9,7 @@
9
9
  "license": "MIT",
10
10
  "upload_type": "software",
11
11
  "access_right": "open",
12
- "version": "0.11.0",
12
+ "version": "0.12.0",
13
13
  "publication_date": "2026-09-22",
14
14
  "keywords": [
15
15
  "optical fibers",
@@ -6,6 +6,14 @@ use [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.12.0] - 2026-09-22
10
+
11
+ ### Changed
12
+
13
+ - Consolidated filesystem locations in the root `directories` module and removed
14
+ the duplicate internal `tools` package.
15
+ - Moved solver-test helpers out of the distributed package and into the test suite.
16
+
9
17
  ## [0.11.0] - 2026-09-22
10
18
 
11
19
  ### Added
@@ -33,6 +41,7 @@ use [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
33
41
 
34
42
  - Established the current tagged baseline for subsequent documented releases.
35
43
 
36
- [Unreleased]: https://github.com/MartinPdeS/PyFiberModes/compare/v0.11.0...HEAD
44
+ [Unreleased]: https://github.com/MartinPdeS/PyFiberModes/compare/v0.12.0...HEAD
45
+ [0.12.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.12.0
37
46
  [0.11.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.11.0
38
47
  [0.10.0]: https://github.com/MartinPdeS/PyFiberModes/releases/tag/v0.10.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyFiberModes
3
- Version: 0.11.0
3
+ Version: 0.12.0
4
4
  Summary: A package for light propagation in fiber optics.
5
5
  Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '0.11.0'
22
- __version_tuple__ = version_tuple = (0, 11, 0)
21
+ __version__ = version = '0.12.0'
22
+ __version_tuple__ = version_tuple = (0, 12, 0)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -0,0 +1,30 @@
1
+ """Canonical filesystem locations used by PyFiberModes and its documentation."""
2
+
3
+ from pathlib import Path
4
+
5
+
6
+ __all__ = [
7
+ "PACKAGE_PATH",
8
+ "PROJECT_PATH",
9
+ "DOCS_PATH",
10
+ "EXAMPLES_PATH",
11
+ "DOC_CSS_PATH",
12
+ "root_path",
13
+ "project_path",
14
+ "examples_path",
15
+ "doc_path",
16
+ "doc_css_path",
17
+ ]
18
+
19
+ PACKAGE_PATH = Path(__file__).resolve().parent
20
+ PROJECT_PATH = PACKAGE_PATH.parent
21
+ DOCS_PATH = PROJECT_PATH / "docs"
22
+ EXAMPLES_PATH = DOCS_PATH / "examples"
23
+ DOC_CSS_PATH = DOCS_PATH / "source" / "_static" / "default.css"
24
+
25
+ # Backwards-compatible aliases for the original public names.
26
+ root_path = PACKAGE_PATH
27
+ project_path = PROJECT_PATH
28
+ doc_path = DOCS_PATH
29
+ examples_path = EXAMPLES_PATH
30
+ doc_css_path = DOC_CSS_PATH
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyFiberModes
3
- Version: 0.11.0
3
+ Version: 0.12.0
4
4
  Summary: A package for light propagation in fiber optics.
5
5
  Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -67,9 +67,6 @@ PyFiberModes/solver/ssif/cutoff.py
67
67
  PyFiberModes/solver/ssif/neff.py
68
68
  PyFiberModes/solver/tlsif/__init__.py
69
69
  PyFiberModes/solver/tlsif/cutoff.py
70
- PyFiberModes/tools/__init__.py
71
- PyFiberModes/tools/directories.py
72
- PyFiberModes/tools/utils.py
73
70
  conda.recipe/meta.yaml
74
71
  docs/Makefile
75
72
  docs/make.bat
@@ -98,8 +95,10 @@ docs/source/index.rst
98
95
  docs/source/_static/default.css
99
96
  docs/source/_static/thumbnail.png
100
97
  tests/__init__.py
98
+ tests/helpers.py
101
99
  tests/test_advanced_features.py
102
100
  tests/test_api.py
101
+ tests/test_architecture.py
103
102
  tests/test_coordinates.py
104
103
  tests/test_fiber.py
105
104
  tests/test_field.py
@@ -1,6 +1,6 @@
1
1
  package:
2
2
  name: pyfibermodes
3
- version: 0.11.0
3
+ version: 0.12.0
4
4
 
5
5
  source:
6
6
  path: ../
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "PyFiberModes"
7
- version = "0.11.0"
7
+ version = "0.12.0"
8
8
  description = "A package for light propagation in fiber optics."
9
9
  license = {file = "LICENSE"}
10
10
  readme = "README.rst"
@@ -0,0 +1 @@
1
+ """PyFiberModes test suite."""
@@ -0,0 +1,13 @@
1
+ """Shared test helpers that are intentionally not part of the public package."""
2
+
3
+ import numpy
4
+
5
+
6
+ def get_mode_beta(fiber, mode_list: list, itr_list: list) -> dict[str, numpy.ndarray]:
7
+ """Evaluate effective indices while scaling a fiber through ``itr_list``."""
8
+ return {
9
+ repr(mode): numpy.asarray(
10
+ [fiber.scale(factor=itr).get_effective_index(mode=mode) for itr in itr_list]
11
+ )
12
+ for mode in mode_list
13
+ }
@@ -0,0 +1,27 @@
1
+ from pathlib import Path
2
+
3
+ import PyFiberModes
4
+ from PyFiberModes import directories
5
+
6
+
7
+ def test_directory_locations_are_derived_from_module_location():
8
+ package_path = Path(PyFiberModes.__file__).resolve().parent
9
+
10
+ assert directories.PACKAGE_PATH == package_path
11
+ assert directories.PROJECT_PATH == package_path.parent
12
+ assert directories.DOCS_PATH == package_path.parent / "docs"
13
+ assert directories.EXAMPLES_PATH == directories.DOCS_PATH / "examples"
14
+ assert directories.DOC_CSS_PATH.is_file()
15
+
16
+
17
+ def test_legacy_directory_names_are_aliases():
18
+ assert directories.root_path is directories.PACKAGE_PATH
19
+ assert directories.project_path is directories.PROJECT_PATH
20
+ assert directories.doc_path is directories.DOCS_PATH
21
+ assert directories.examples_path is directories.EXAMPLES_PATH
22
+ assert directories.doc_css_path is directories.DOC_CSS_PATH
23
+
24
+
25
+ def test_package_has_no_generic_tools_namespace():
26
+ tools_path = directories.PACKAGE_PATH / "tools"
27
+ assert not tools_path.exists() or not any(tools_path.glob("*.py"))
@@ -4,8 +4,8 @@
4
4
  import numpy
5
5
  import pytest
6
6
  from PyFiberModes.fiber import load_fiber
7
- from PyFiberModes.tools.utils import get_mode_beta
8
7
  from PyFiberModes import HE11, TE01, TM01, EH11, LP01
8
+ from tests.helpers import get_mode_beta
9
9
 
10
10
 
11
11
  def test_solver():
@@ -4,8 +4,8 @@
4
4
  import numpy
5
5
  import pytest
6
6
  from PyFiberModes.fiber import load_fiber
7
- from PyFiberModes.tools.utils import get_mode_beta
8
7
  from PyFiberModes import HE11, TE01, TM01, EH11, LP01
8
+ from tests.helpers import get_mode_beta
9
9
 
10
10
 
11
11
  def test_solver():
@@ -5,8 +5,8 @@ import numpy
5
5
  import pytest
6
6
  from PyFiberModes.fiber import get_fiber_from_delta_and_V0
7
7
  from PyFiberModes.fiber import load_fiber
8
- from PyFiberModes.tools.utils import get_mode_beta
9
8
  from PyFiberModes import HE11, TE01, TM01, HE21, EH11, HE31, HE12, LP01
9
+ from tests.helpers import get_mode_beta
10
10
 
11
11
 
12
12
  def test_validation_cutoff_wavelength():
@@ -1,32 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- from pathlib import Path
5
- import PyFiberModes
6
-
7
-
8
- __all__ = [
9
- 'root_path',
10
- 'project_path',
11
- 'examples_path',
12
- 'doc_path',
13
- 'doc_css_path',
14
- ]
15
-
16
- root_path = Path(PyFiberModes.__path__[0])
17
-
18
- project_path = root_path.parents[0]
19
-
20
- doc_path = project_path.joinpath('docs')
21
-
22
- examples_path = doc_path.joinpath('examples')
23
-
24
- logo_path = doc_path.joinpath('images/logo.png')
25
-
26
- doc_css_path = doc_path.joinpath('source/_static/default.css')
27
-
28
- if __name__ == '__main__':
29
- for path_name in __all__:
30
- path = locals()[path_name]
31
- print(path)
32
- assert path.exists(), f"Path {path_name} do not exists"
File without changes
@@ -1,41 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- from pathlib import Path
5
- import PyFiberModes
6
-
7
-
8
- __all__ = [
9
- 'root_path',
10
- 'project_path',
11
- 'examples_path',
12
- 'version_path',
13
- 'doc_path',
14
- # 'logo_path',
15
- 'doc_css_path',
16
- ]
17
-
18
- root_path = Path(PyFiberModes.__path__[0])
19
-
20
- project_path = root_path.parents[0]
21
-
22
- version_path = root_path.joinpath('VERSION')
23
-
24
- doc_path = project_path.joinpath('docs')
25
-
26
- examples_path = doc_path.joinpath('examples')
27
-
28
- logo_path = doc_path.joinpath('images/logo.png')
29
-
30
- doc_css_path = doc_path.joinpath('source/_static/default.css')
31
-
32
- rtd_example = 'https://pyfinitdiff.readthedocs.io/en/latest/Examples.html'
33
-
34
-
35
- if __name__ == '__main__':
36
- for path_name in __all__:
37
- path = locals()[path_name]
38
- print(path)
39
- assert path.exists(), f"Path {path_name} do not exists"
40
-
41
- # -
@@ -1,20 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- coding: utf-8 -*-
3
-
4
- import numpy
5
-
6
-
7
- def get_mode_beta(fiber, mode_list: list, itr_list: list):
8
- data_dict = {}
9
- for mode in mode_list:
10
- data_list = []
11
- for j, itr in enumerate(itr_list):
12
- _fiber = fiber.scale(factor=itr)
13
- neff = _fiber.get_effective_index(mode=mode)
14
- data_list.append(neff)
15
-
16
- data_dict[mode.__repr__()] = numpy.asarray(data_list)
17
-
18
- return data_dict
19
-
20
- # -
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes