PyOptik 1.8.6.post0__tar.gz → 1.8.8.post0__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.
- pyoptik-1.8.8.post0/.flake8 +11 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PKG-INFO +7 -8
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/__main__.py +1 -1
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/_version.py +2 -2
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/directories.py +2 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/material/base_class.py +1 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/material/sellmeier_class.py +4 -3
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/material/tabulated_class.py +8 -3
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/material_bank.py +21 -18
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/units.py +0 -5
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/utils.py +0 -2
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik.egg-info/PKG-INFO +7 -8
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik.egg-info/SOURCES.txt +9 -7
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik.egg-info/requires.txt +7 -7
- {pyoptik-1.8.6.post0/docs/source/gallery → pyoptik-1.8.8.post0/docs/examples}/sellmeier/plot_bk7.py +1 -1
- {pyoptik-1.8.6.post0/docs/source/gallery → pyoptik-1.8.8.post0/docs/examples}/sellmeier/plot_water.py +0 -1
- {pyoptik-1.8.6.post0/docs/source/gallery → pyoptik-1.8.8.post0/docs/examples}/utils/build_library.py +2 -3
- {pyoptik-1.8.6.post0/docs/source/gallery → pyoptik-1.8.8.post0/docs/examples}/utils/create_sellmeier_file.py +0 -1
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/meta.yaml +0 -4
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/pyproject.toml +10 -7
- pyoptik-1.8.8.post0/tests/__init__.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/tests/test_sellmeier.py +20 -3
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/tests/test_tabulated.py +19 -1
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/tests/test_usual_material.py +4 -1
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/tests/test_utils.py +10 -1
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.github/dependabot.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.github/workflows/deploy_anaconda.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.github/workflows/deploy_coverage.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.github/workflows/deploy_documentation.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.github/workflows/deploy_workflow.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.gitignore +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/.readthedocs.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/LICENSE +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/__init__.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/__init__.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/BAK1.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/BK7.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/SF5.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/ZBLAN.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/air.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/argon.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/crown.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/flint.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/fused_silica.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/germanium.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/lithium_niobate.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/polystyren.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/silicon.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/soda_lime_glass.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/sellmeier/water.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/aluminium.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/calcium.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/copper.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/gold.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/iron.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/nickel.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/silver.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/sodium.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/data/tabulated/zinc.yml +0 -0
- {pyoptik-1.8.6.post0/tests → pyoptik-1.8.8.post0/PyOptik/libraries}/__init__.py +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/classics.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/dielectrics.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/metals.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/minimal.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/organics.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/others.yml +0 -0
- {pyoptik-1.8.6.post0/PyOptik/data → pyoptik-1.8.8.post0/PyOptik/libraries}/polymers.yml +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik/material/__init__.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik.egg-info/dependency_links.txt +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/PyOptik.egg-info/top_level.txt +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/README.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/development/dev_0.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/Makefile +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/README.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/sellmeier/README.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/sellmeier/plot_silica.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/tabulated/README.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/tabulated/plot_sf5.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/tabulated/plot_silver.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/utils/README.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/utils/create_tabulated_file.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/examples/utils/download_yml_file.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/images/example_bk7.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/images/logo.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/make.bat +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/_static/default.css +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/code.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/conf.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/index.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/sphx_glr_plot_bk7_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/sphx_glr_plot_silica_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/sphx_glr_plot_water_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/thumb/sphx_glr_plot_bk7_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/thumb/sphx_glr_plot_silica_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/images/thumb/sphx_glr_plot_water_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/index.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_bk7.ipynb +0 -0
- {pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/sellmeier/plot_bk7.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_bk7.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_bk7.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_bk7_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica.ipynb +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_water.ipynb +0 -0
- {pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/sellmeier/plot_water.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_water.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_water.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_water_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/sg_execution_times.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/images/sphx_glr_plot_sf5_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/images/sphx_glr_plot_silver_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/images/thumb/sphx_glr_plot_sf5_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/images/thumb/sphx_glr_plot_silver_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/index.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5.ipynb +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver.ipynb +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/sg_execution_times.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/build_library.ipynb +0 -0
- {pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/utils/build_library.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/build_library.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/build_library.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/build_library_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.ipynb +0 -0
- {pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/utils/create_sellmeier_file.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.ipynb +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.ipynb +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.py +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.py.md5 +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file_codeobj.pickle +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/sphx_glr_create_sellmeier_file_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/sphx_glr_create_tabulated_file_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/sphx_glr_download_yml_file_001.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/thumb/sphx_glr_build_library_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/thumb/sphx_glr_create_sellmeier_file_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/thumb/sphx_glr_create_tabulated_file_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/images/thumb/sphx_glr_download_yml_file_thumb.png +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/index.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/sg_execution_times.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/index.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/references.rst +0 -0
- {pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PyOptik
|
|
3
|
-
Version: 1.8.
|
|
3
|
+
Version: 1.8.8.post0
|
|
4
4
|
Summary: A package for refractive index values.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -45,19 +45,18 @@ Requires-Dist: pyyaml~=6.0
|
|
|
45
45
|
Requires-Dist: MPSPlots~=1.5.1
|
|
46
46
|
Requires-Dist: tabulate~=0.9
|
|
47
47
|
Provides-Extra: testing
|
|
48
|
-
Requires-Dist: pytest
|
|
49
|
-
Requires-Dist: pytest-cov
|
|
50
|
-
Requires-Dist: pytest-json-report
|
|
51
|
-
Requires-Dist:
|
|
52
|
-
Requires-Dist: flake8>=3.9; extra == "testing"
|
|
53
|
-
Requires-Dist: tox>=3.24; extra == "testing"
|
|
54
|
-
Requires-Dist: coverage==6.5.0; extra == "testing"
|
|
48
|
+
Requires-Dist: pytest<9.0,>=7.4; extra == "testing"
|
|
49
|
+
Requires-Dist: pytest-cov<6,>=2; extra == "testing"
|
|
50
|
+
Requires-Dist: pytest-json-report~=1.5; extra == "testing"
|
|
51
|
+
Requires-Dist: coverage~=7.6; extra == "testing"
|
|
55
52
|
Provides-Extra: documentation
|
|
56
53
|
Requires-Dist: numpydoc==1.6.0; extra == "documentation"
|
|
57
54
|
Requires-Dist: sphinx>=5.1.1; extra == "documentation"
|
|
58
55
|
Requires-Dist: sphinx-gallery==0.15.0; extra == "documentation"
|
|
59
56
|
Requires-Dist: sphinx-rtd-theme==2.0.0; extra == "documentation"
|
|
60
57
|
Requires-Dist: pydata-sphinx-theme==0.14.1; extra == "documentation"
|
|
58
|
+
Provides-Extra: dev
|
|
59
|
+
Requires-Dist: flake8==7.1.1; extra == "dev"
|
|
61
60
|
|
|
62
61
|
PyOptik
|
|
63
62
|
=======
|
|
@@ -12,5 +12,5 @@ __version__: str
|
|
|
12
12
|
__version_tuple__: VERSION_TUPLE
|
|
13
13
|
version_tuple: VERSION_TUPLE
|
|
14
14
|
|
|
15
|
-
__version__ = version = '1.8.
|
|
16
|
-
__version_tuple__ = version_tuple = (1, 8,
|
|
15
|
+
__version__ = version = '1.8.8.post0'
|
|
16
|
+
__version_tuple__ = version_tuple = (1, 8, 8)
|
|
@@ -18,6 +18,7 @@ config_dict = ConfigDict(
|
|
|
18
18
|
arbitrary_types_allowed=True
|
|
19
19
|
)
|
|
20
20
|
|
|
21
|
+
|
|
21
22
|
@dataclass(config=config_dict, slots=True)
|
|
22
23
|
class SellmeierMaterial(BaseMaterial):
|
|
23
24
|
"""
|
|
@@ -61,7 +62,6 @@ class SellmeierMaterial(BaseMaterial):
|
|
|
61
62
|
with file_path.with_suffix('.yml').open('r') as file:
|
|
62
63
|
parsed_yaml = yaml.safe_load(file)
|
|
63
64
|
|
|
64
|
-
|
|
65
65
|
# Extract the formula type
|
|
66
66
|
self.formula_type = int(parsed_yaml['DATA'][0]['type'].split()[-1])
|
|
67
67
|
|
|
@@ -104,7 +104,8 @@ class SellmeierMaterial(BaseMaterial):
|
|
|
104
104
|
ValueError
|
|
105
105
|
If the wavelength is outside the specified range or if an unsupported formula type is encountered.
|
|
106
106
|
"""
|
|
107
|
-
|
|
107
|
+
return_as_scalar = numpy.isscalar(wavelength.magnitude)
|
|
108
|
+
|
|
108
109
|
wavelength = numpy.atleast_1d(wavelength)
|
|
109
110
|
self._check_wavelength(wavelength)
|
|
110
111
|
|
|
@@ -137,7 +138,7 @@ class SellmeierMaterial(BaseMaterial):
|
|
|
137
138
|
case _:
|
|
138
139
|
raise ValueError(f"Unsupported formula type: {self.formula_type}")
|
|
139
140
|
|
|
140
|
-
return n[0] if
|
|
141
|
+
return n[0] if return_as_scalar else n
|
|
141
142
|
|
|
142
143
|
@BaseMaterial.ensure_units
|
|
143
144
|
def plot(self, wavelength: Optional[Quantity] = None) -> None:
|
|
@@ -72,7 +72,6 @@ class TabulatedMaterial(BaseMaterial):
|
|
|
72
72
|
except (KeyError, IndexError, ValueError):
|
|
73
73
|
raise ValueError(f"Invalid or missing data in YAML file {file_path}")
|
|
74
74
|
|
|
75
|
-
|
|
76
75
|
self.wavelength_bound = [self.wavelength.min().magnitude, self.wavelength.max().magnitude] * micrometer
|
|
77
76
|
|
|
78
77
|
# Extract reference
|
|
@@ -98,12 +97,18 @@ class TabulatedMaterial(BaseMaterial):
|
|
|
98
97
|
ValueError
|
|
99
98
|
If the wavelength is outside the tabulated range.
|
|
100
99
|
"""
|
|
100
|
+
return_as_scalar = numpy.isscalar(wavelength.magnitude)
|
|
101
|
+
|
|
102
|
+
wavelength = numpy.atleast_1d(wavelength)
|
|
103
|
+
|
|
101
104
|
self._check_wavelength(wavelength)
|
|
102
105
|
|
|
103
106
|
n_interp = numpy.interp(wavelength.to(meter).magnitude, self.wavelength.to(meter).magnitude, self.n_values)
|
|
104
107
|
k_interp = numpy.interp(wavelength.to(meter).magnitude, self.wavelength.to(meter).magnitude, self.k_values)
|
|
105
108
|
|
|
106
|
-
|
|
109
|
+
index = n_interp + 1j * k_interp
|
|
110
|
+
|
|
111
|
+
return index[0] if return_as_scalar else index
|
|
107
112
|
|
|
108
113
|
@BaseMaterial.ensure_units
|
|
109
114
|
def plot(self, wavelength: Optional[Quantity] = None) -> None:
|
|
@@ -161,4 +166,4 @@ class TabulatedMaterial(BaseMaterial):
|
|
|
161
166
|
f"\nTabulatedMaterial: '{self.filename}',\n"
|
|
162
167
|
f"wavelength_range: [{self.wavelength.min()} µm, {self.wavelength.max()} µm],\n"
|
|
163
168
|
f"reference: '{self.reference}')"
|
|
164
|
-
)
|
|
169
|
+
)
|
|
@@ -9,17 +9,19 @@ import logging
|
|
|
9
9
|
from pathlib import Path
|
|
10
10
|
from typing import List, Union, Optional, Tuple
|
|
11
11
|
from enum import Enum
|
|
12
|
-
from PyOptik.directories import data_path
|
|
12
|
+
from PyOptik.directories import data_path, libraries_path
|
|
13
13
|
from PyOptik.material.sellmeier_class import SellmeierMaterial
|
|
14
14
|
from PyOptik.material.tabulated_class import TabulatedMaterial
|
|
15
15
|
from PyOptik.utils import download_yml_file
|
|
16
16
|
from tabulate import tabulate
|
|
17
17
|
from dataclasses import dataclass
|
|
18
18
|
|
|
19
|
+
|
|
19
20
|
class MaterialType(Enum):
|
|
20
21
|
SELLMEIER = "sellmeier"
|
|
21
22
|
TABULATED = "tabulated"
|
|
22
23
|
|
|
24
|
+
|
|
23
25
|
@dataclass(frozen=True, slots=True)
|
|
24
26
|
class _MaterialBank():
|
|
25
27
|
"""
|
|
@@ -45,7 +47,7 @@ class _MaterialBank():
|
|
|
45
47
|
|
|
46
48
|
To add a new material to the Sellmeier bank:
|
|
47
49
|
|
|
48
|
-
>>> material.add_sellmeier_to_bank("new_material.yml", "
|
|
50
|
+
>>> material.add_sellmeier_to_bank("new_material.yml", "https://refractiveindex.info/database/data-nk/main/SiO2/Malitson.yml")
|
|
49
51
|
|
|
50
52
|
To remove a material from the bank:
|
|
51
53
|
|
|
@@ -337,7 +339,7 @@ class _MaterialBank():
|
|
|
337
339
|
remove_previous : bool
|
|
338
340
|
If True, removes existing files before downloading new ones.
|
|
339
341
|
"""
|
|
340
|
-
AVAILABLE_LIBRARIES =
|
|
342
|
+
AVAILABLE_LIBRARIES = [os.path.splitext(f)[0] for f in os.listdir(libraries_path) if f.endswith('.yml')]
|
|
341
343
|
|
|
342
344
|
libraries_to_download = AVAILABLE_LIBRARIES if library == 'all' else set(numpy.atleast_1d(library))
|
|
343
345
|
|
|
@@ -346,12 +348,12 @@ class _MaterialBank():
|
|
|
346
348
|
|
|
347
349
|
# Remove previous files if the flag is set
|
|
348
350
|
if remove_previous:
|
|
349
|
-
logging.info(
|
|
351
|
+
logging.info("Removing previous files from the library.")
|
|
350
352
|
self.clean_data_files(regex=".*", location="sellmeier") # Remove all sellmeier files
|
|
351
353
|
self.clean_data_files(regex=".*", location="tabulated") # Remove all tabulated files
|
|
352
354
|
|
|
353
355
|
for lib in libraries_to_download:
|
|
354
|
-
file_path =
|
|
356
|
+
file_path = libraries_path / lib
|
|
355
357
|
with open(file_path.with_suffix('.yml'), 'r') as file:
|
|
356
358
|
data_dict = yaml.safe_load(file)
|
|
357
359
|
|
|
@@ -366,14 +368,14 @@ class _MaterialBank():
|
|
|
366
368
|
download_yml_file(url=url, filename=element_name, location=data_path / 'tabulated')
|
|
367
369
|
|
|
368
370
|
def create_sellmeier_file(
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
371
|
+
self,
|
|
372
|
+
filename: str,
|
|
373
|
+
formula_type: int,
|
|
374
|
+
coefficients: List[float],
|
|
375
|
+
wavelength_range: Optional[Tuple[float, float]] = None,
|
|
376
|
+
reference: Optional[str] = None,
|
|
377
|
+
comments: Optional[str] = None,
|
|
378
|
+
specs: Optional[dict] = None) -> None:
|
|
377
379
|
"""
|
|
378
380
|
Creates a YAML file with custom Sellmeier coefficients in the correct format.
|
|
379
381
|
|
|
@@ -427,11 +429,11 @@ class _MaterialBank():
|
|
|
427
429
|
logging.info(f"Sellmeier data saved to {file_path}")
|
|
428
430
|
|
|
429
431
|
def create_tabulated_file(
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
432
|
+
self,
|
|
433
|
+
filename: str,
|
|
434
|
+
data: List[Tuple[float, float, float]],
|
|
435
|
+
reference: Optional[str] = None,
|
|
436
|
+
comments: Optional[str] = None) -> None:
|
|
435
437
|
"""
|
|
436
438
|
Creates a YAML file with tabulated nk data in the correct format.
|
|
437
439
|
|
|
@@ -471,4 +473,5 @@ class _MaterialBank():
|
|
|
471
473
|
|
|
472
474
|
logging.info(f"Tabulated nk data saved to {file_path}")
|
|
473
475
|
|
|
476
|
+
|
|
474
477
|
MaterialBank = _MaterialBank()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PyOptik
|
|
3
|
-
Version: 1.8.
|
|
3
|
+
Version: 1.8.8.post0
|
|
4
4
|
Summary: A package for refractive index values.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -45,19 +45,18 @@ Requires-Dist: pyyaml~=6.0
|
|
|
45
45
|
Requires-Dist: MPSPlots~=1.5.1
|
|
46
46
|
Requires-Dist: tabulate~=0.9
|
|
47
47
|
Provides-Extra: testing
|
|
48
|
-
Requires-Dist: pytest
|
|
49
|
-
Requires-Dist: pytest-cov
|
|
50
|
-
Requires-Dist: pytest-json-report
|
|
51
|
-
Requires-Dist:
|
|
52
|
-
Requires-Dist: flake8>=3.9; extra == "testing"
|
|
53
|
-
Requires-Dist: tox>=3.24; extra == "testing"
|
|
54
|
-
Requires-Dist: coverage==6.5.0; extra == "testing"
|
|
48
|
+
Requires-Dist: pytest<9.0,>=7.4; extra == "testing"
|
|
49
|
+
Requires-Dist: pytest-cov<6,>=2; extra == "testing"
|
|
50
|
+
Requires-Dist: pytest-json-report~=1.5; extra == "testing"
|
|
51
|
+
Requires-Dist: coverage~=7.6; extra == "testing"
|
|
55
52
|
Provides-Extra: documentation
|
|
56
53
|
Requires-Dist: numpydoc==1.6.0; extra == "documentation"
|
|
57
54
|
Requires-Dist: sphinx>=5.1.1; extra == "documentation"
|
|
58
55
|
Requires-Dist: sphinx-gallery==0.15.0; extra == "documentation"
|
|
59
56
|
Requires-Dist: sphinx-rtd-theme==2.0.0; extra == "documentation"
|
|
60
57
|
Requires-Dist: pydata-sphinx-theme==0.14.1; extra == "documentation"
|
|
58
|
+
Provides-Extra: dev
|
|
59
|
+
Requires-Dist: flake8==7.1.1; extra == "dev"
|
|
61
60
|
|
|
62
61
|
PyOptik
|
|
63
62
|
=======
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
.flake8
|
|
1
2
|
.gitignore
|
|
2
3
|
.readthedocs.yml
|
|
3
4
|
LICENSE
|
|
@@ -22,13 +23,6 @@ PyOptik.egg-info/dependency_links.txt
|
|
|
22
23
|
PyOptik.egg-info/requires.txt
|
|
23
24
|
PyOptik.egg-info/top_level.txt
|
|
24
25
|
PyOptik/data/__init__.py
|
|
25
|
-
PyOptik/data/classics.yml
|
|
26
|
-
PyOptik/data/dielectrics.yml
|
|
27
|
-
PyOptik/data/metals.yml
|
|
28
|
-
PyOptik/data/minimal.yml
|
|
29
|
-
PyOptik/data/organics.yml
|
|
30
|
-
PyOptik/data/others.yml
|
|
31
|
-
PyOptik/data/polymers.yml
|
|
32
26
|
PyOptik/data/sellmeier/BAK1.yml
|
|
33
27
|
PyOptik/data/sellmeier/BK7.yml
|
|
34
28
|
PyOptik/data/sellmeier/SF5.yml
|
|
@@ -53,6 +47,14 @@ PyOptik/data/tabulated/nickel.yml
|
|
|
53
47
|
PyOptik/data/tabulated/silver.yml
|
|
54
48
|
PyOptik/data/tabulated/sodium.yml
|
|
55
49
|
PyOptik/data/tabulated/zinc.yml
|
|
50
|
+
PyOptik/libraries/__init__.py
|
|
51
|
+
PyOptik/libraries/classics.yml
|
|
52
|
+
PyOptik/libraries/dielectrics.yml
|
|
53
|
+
PyOptik/libraries/metals.yml
|
|
54
|
+
PyOptik/libraries/minimal.yml
|
|
55
|
+
PyOptik/libraries/organics.yml
|
|
56
|
+
PyOptik/libraries/others.yml
|
|
57
|
+
PyOptik/libraries/polymers.yml
|
|
56
58
|
PyOptik/material/__init__.py
|
|
57
59
|
PyOptik/material/base_class.py
|
|
58
60
|
PyOptik/material/sellmeier_class.py
|
|
@@ -7,6 +7,9 @@ pyyaml~=6.0
|
|
|
7
7
|
MPSPlots~=1.5.1
|
|
8
8
|
tabulate~=0.9
|
|
9
9
|
|
|
10
|
+
[dev]
|
|
11
|
+
flake8==7.1.1
|
|
12
|
+
|
|
10
13
|
[documentation]
|
|
11
14
|
numpydoc==1.6.0
|
|
12
15
|
sphinx>=5.1.1
|
|
@@ -15,10 +18,7 @@ sphinx-rtd-theme==2.0.0
|
|
|
15
18
|
pydata-sphinx-theme==0.14.1
|
|
16
19
|
|
|
17
20
|
[testing]
|
|
18
|
-
pytest
|
|
19
|
-
pytest-cov
|
|
20
|
-
pytest-json-report
|
|
21
|
-
|
|
22
|
-
flake8>=3.9
|
|
23
|
-
tox>=3.24
|
|
24
|
-
coverage==6.5.0
|
|
21
|
+
pytest<9.0,>=7.4
|
|
22
|
+
pytest-cov<6,>=2
|
|
23
|
+
pytest-json-report~=1.5
|
|
24
|
+
coverage~=7.6
|
{pyoptik-1.8.6.post0/docs/source/gallery → pyoptik-1.8.8.post0/docs/examples}/utils/build_library.py
RENAMED
|
@@ -23,9 +23,8 @@ The available libraries are:
|
|
|
23
23
|
# Import necessary modules
|
|
24
24
|
from PyOptik import MaterialBank
|
|
25
25
|
|
|
26
|
-
# Build the '
|
|
27
|
-
MaterialBank.build_library('
|
|
26
|
+
# Build the 'classics' material library and remove previously downloaded files
|
|
27
|
+
MaterialBank.build_library('classics', remove_previous=True)
|
|
28
28
|
|
|
29
29
|
# Print all the available materials (Sellmeier and Tabulated)
|
|
30
30
|
MaterialBank.print_available()
|
|
31
|
-
|
|
@@ -45,15 +45,13 @@ local_scheme = "no-local-version"
|
|
|
45
45
|
|
|
46
46
|
[project.optional-dependencies]
|
|
47
47
|
testing = [
|
|
48
|
-
"pytest >=0
|
|
49
|
-
"pytest-cov >=2
|
|
50
|
-
"pytest-json-report
|
|
51
|
-
"
|
|
52
|
-
"flake8 >=3.9",
|
|
53
|
-
"tox >=3.24",
|
|
54
|
-
"coverage ==6.5.0"
|
|
48
|
+
"pytest >=7.4,<9.0",
|
|
49
|
+
"pytest-cov >=2,<6",
|
|
50
|
+
"pytest-json-report ~=1.5",
|
|
51
|
+
"coverage ~=7.6"
|
|
55
52
|
]
|
|
56
53
|
|
|
54
|
+
|
|
57
55
|
documentation = [
|
|
58
56
|
"numpydoc ==1.6.0",
|
|
59
57
|
"sphinx >=5.1.1",
|
|
@@ -62,6 +60,11 @@ documentation = [
|
|
|
62
60
|
"pydata-sphinx-theme ==0.14.1",
|
|
63
61
|
]
|
|
64
62
|
|
|
63
|
+
dev = [
|
|
64
|
+
"flake8 ==7.1.1",
|
|
65
|
+
]
|
|
66
|
+
|
|
67
|
+
|
|
65
68
|
[tool.pytest.ini_options]
|
|
66
69
|
python_functions = "test*"
|
|
67
70
|
minversion = "6.0"
|
|
File without changes
|
|
@@ -9,7 +9,7 @@ from PyOptik import MaterialBank
|
|
|
9
9
|
import matplotlib.pyplot as plt
|
|
10
10
|
from PyOptik.units import meter, micrometer, Quantity
|
|
11
11
|
|
|
12
|
-
MaterialBank.build_library('minimal', remove_previous=True)
|
|
12
|
+
# MaterialBank.build_library('minimal', remove_previous=True)
|
|
13
13
|
|
|
14
14
|
material_list = MaterialBank.sellmeier
|
|
15
15
|
|
|
@@ -99,7 +99,7 @@ def test_compute_refractive_index():
|
|
|
99
99
|
material = Material('water')
|
|
100
100
|
|
|
101
101
|
# Test single wavelength input
|
|
102
|
-
wavelength = 500e-9 * meter
|
|
102
|
+
wavelength = [800e-9, 500e-9] * meter
|
|
103
103
|
refractive_index = material.compute_refractive_index(wavelength)
|
|
104
104
|
assert isinstance(refractive_index, np.ndarray)
|
|
105
105
|
|
|
@@ -112,10 +112,27 @@ def test_compute_refractive_index():
|
|
|
112
112
|
assert refractive_indices.shape == wavelength.shape
|
|
113
113
|
|
|
114
114
|
|
|
115
|
+
def test_compute_refractive_index_inputs():
|
|
116
|
+
"""Test computation of refractive index for given wavelengths."""
|
|
117
|
+
material = Material('water')
|
|
118
|
+
|
|
119
|
+
# Test single wavelength input
|
|
120
|
+
wavelength = 500e-9
|
|
121
|
+
refractive_index = material.compute_refractive_index(wavelength)
|
|
122
|
+
|
|
123
|
+
assert np.isscalar(refractive_index), f"Refractive index [{refractive_index}] should return scalar value when wavelength [{wavelength}] input is scalar"
|
|
124
|
+
|
|
125
|
+
wavelength = [500e-9, 800e-9] * meter
|
|
126
|
+
refractive_index = material.compute_refractive_index(wavelength)
|
|
127
|
+
|
|
128
|
+
assert isinstance(refractive_index, np.ndarray), f"Refractive index [{refractive_index}] should return an array when wavelength [{wavelength}] input is an array"
|
|
129
|
+
|
|
130
|
+
|
|
115
131
|
def test_invalid_formula_type():
|
|
116
132
|
"""Test handling of unsupported material types."""
|
|
117
133
|
with pytest.raises(FileNotFoundError):
|
|
118
|
-
|
|
134
|
+
Material('invalid_material')
|
|
135
|
+
|
|
119
136
|
|
|
120
137
|
@pytest.mark.parametrize('material', material_list, ids=material_list)
|
|
121
138
|
@patch("matplotlib.pyplot.show")
|
|
@@ -9,10 +9,12 @@ from PyOptik.units import Quantity, micrometer, meter
|
|
|
9
9
|
import matplotlib.pyplot as plt
|
|
10
10
|
from PyOptik import MaterialBank
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
# MaterialBank.build_library('minimal', remove_previous=True)
|
|
13
14
|
|
|
14
15
|
material_list = MaterialBank.tabulated
|
|
15
16
|
|
|
17
|
+
|
|
16
18
|
def test_init_material():
|
|
17
19
|
"""Test initialization of TabulatedMaterial."""
|
|
18
20
|
material = TabulatedMaterial('zinc')
|
|
@@ -75,6 +77,22 @@ def test_compute_refractive_index():
|
|
|
75
77
|
assert refractive_indices.shape == wavelengths.shape
|
|
76
78
|
|
|
77
79
|
|
|
80
|
+
def test_compute_refractive_index_inputs():
|
|
81
|
+
"""Test computation of refractive index for given wavelengths."""
|
|
82
|
+
material = TabulatedMaterial('zinc')
|
|
83
|
+
|
|
84
|
+
# Test single wavelength input
|
|
85
|
+
wavelength = 500e-9
|
|
86
|
+
refractive_index = material.compute_refractive_index(wavelength)
|
|
87
|
+
|
|
88
|
+
assert np.isscalar(refractive_index), f"Refractive index [{refractive_index}] should return scalar value when wavelength [{wavelength}] input is scalar"
|
|
89
|
+
|
|
90
|
+
wavelength = [500e-9, 800e-9] * meter
|
|
91
|
+
refractive_index = material.compute_refractive_index(wavelength)
|
|
92
|
+
|
|
93
|
+
assert isinstance(refractive_index, np.ndarray), f"Refractive index [{refractive_index}] should return an array when wavelength [{wavelength}] input is an array"
|
|
94
|
+
|
|
95
|
+
|
|
78
96
|
@patch("matplotlib.pyplot.show")
|
|
79
97
|
def test_plot(mock_show):
|
|
80
98
|
"""Test plotting method of TabulatedMaterial."""
|
|
@@ -2,7 +2,9 @@ import pytest
|
|
|
2
2
|
from PyOptik import MaterialBank
|
|
3
3
|
from PyOptik.material import SellmeierMaterial, TabulatedMaterial
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
|
|
6
|
+
# MaterialBank.build_library('minimal', remove_previous=True)
|
|
7
|
+
|
|
6
8
|
|
|
7
9
|
@pytest.mark.parametrize('material_name', MaterialBank.all, ids=lambda name: f'{name}')
|
|
8
10
|
def test_usual_material(material_name):
|
|
@@ -20,5 +22,6 @@ def test_fail_wrong_clean():
|
|
|
20
22
|
with pytest.raises(ValueError):
|
|
21
23
|
MaterialBank.clean_data_files(regex='test*', location='invalid')
|
|
22
24
|
|
|
25
|
+
|
|
23
26
|
if __name__ == "__main__":
|
|
24
27
|
pytest.main(["-W error", __file__])
|
|
@@ -6,6 +6,9 @@ from PyOptik import MaterialBank
|
|
|
6
6
|
from PyOptik.directories import tabulated_data_path, sellmeier_data_path
|
|
7
7
|
from PyOptik.utils import download_yml_file
|
|
8
8
|
|
|
9
|
+
# MaterialBank.build_library('minimal', remove_previous=True)
|
|
10
|
+
|
|
11
|
+
|
|
9
12
|
def test_main():
|
|
10
13
|
import subprocess
|
|
11
14
|
subprocess.run(["python", "-m", "PyOptik"])
|
|
@@ -28,6 +31,7 @@ def test_download_yml_files():
|
|
|
28
31
|
location=sellmeier_data_path
|
|
29
32
|
)
|
|
30
33
|
|
|
34
|
+
|
|
31
35
|
def test_add_custom():
|
|
32
36
|
MaterialBank.add_tabulated_to_bank(
|
|
33
37
|
filename='test_tabulated',
|
|
@@ -39,6 +43,7 @@ def test_add_custom():
|
|
|
39
43
|
url='https://refractiveindex.info/database/data-nk/main/H2O/Daimon-19.0C.yml',
|
|
40
44
|
)
|
|
41
45
|
|
|
46
|
+
|
|
42
47
|
def test_build_library():
|
|
43
48
|
"""
|
|
44
49
|
Test the creation of the default library. Ensures that the default library
|
|
@@ -46,6 +51,7 @@ def test_build_library():
|
|
|
46
51
|
"""
|
|
47
52
|
MaterialBank.build_library('minimal')
|
|
48
53
|
|
|
54
|
+
|
|
49
55
|
def test_remove_item():
|
|
50
56
|
"""
|
|
51
57
|
Test the removal of an element from a library. Ensures that an element can
|
|
@@ -78,7 +84,6 @@ def test_remove_item():
|
|
|
78
84
|
|
|
79
85
|
MaterialBank.clean_data_files(regex='test*', location='sellmeier')
|
|
80
86
|
|
|
81
|
-
|
|
82
87
|
download_yml_file(
|
|
83
88
|
filename='test_tabulated',
|
|
84
89
|
url='https://refractiveindex.info/database/data-nk/main/H2O/Daimon-19.0C.yml',
|
|
@@ -87,6 +92,7 @@ def test_remove_item():
|
|
|
87
92
|
|
|
88
93
|
MaterialBank.clean_data_files(regex='test*', location='tabulated')
|
|
89
94
|
|
|
95
|
+
|
|
90
96
|
def test_create_custom_sellmeier_file():
|
|
91
97
|
"""
|
|
92
98
|
Test the creation of a custom Sellmeier YAML file. Ensures that the file
|
|
@@ -104,6 +110,7 @@ def test_create_custom_sellmeier_file():
|
|
|
104
110
|
|
|
105
111
|
MaterialBank.test_sellmeier_file.compute_refractive_index(1.1e-6)
|
|
106
112
|
|
|
113
|
+
|
|
107
114
|
def test_fail_with_wrong_formula_type():
|
|
108
115
|
"""
|
|
109
116
|
Test the creation of a custom Sellmeier YAML file. Ensures that the file
|
|
@@ -120,6 +127,7 @@ def test_fail_with_wrong_formula_type():
|
|
|
120
127
|
|
|
121
128
|
MaterialBank.test_sellmeier_file.compute_refractive_index(1.1e-6)
|
|
122
129
|
|
|
130
|
+
|
|
123
131
|
def test_create_custom_tabulated_file():
|
|
124
132
|
"""
|
|
125
133
|
Test the creation of a custom tabulated YAML file. Ensures that the file
|
|
@@ -136,5 +144,6 @@ def test_create_custom_tabulated_file():
|
|
|
136
144
|
comments="Room temperature"
|
|
137
145
|
)
|
|
138
146
|
|
|
147
|
+
|
|
139
148
|
if __name__ == "__main__":
|
|
140
149
|
pytest.main(["-W error", __file__])
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
{pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/sellmeier/plot_bk7.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_bk7_codeobj.pickle
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica.py.md5
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_silica_codeobj.pickle
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/plot_water_codeobj.pickle
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/sellmeier/sg_execution_times.rst
RENAMED
|
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
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_sf5_codeobj.pickle
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver.py.md5
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/plot_silver_codeobj.pickle
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/tabulated/sg_execution_times.rst
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0/docs/examples → pyoptik-1.8.8.post0/docs/source/gallery}/utils/build_library.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/build_library_codeobj.pickle
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.py.md5
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_sellmeier_file.rst
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.ipynb
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.py
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.py.md5
RENAMED
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/create_tabulated_file.rst
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/download_yml_file.py.md5
RENAMED
|
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
|
|
File without changes
|
|
File without changes
|
{pyoptik-1.8.6.post0 → pyoptik-1.8.8.post0}/docs/source/gallery/utils/sg_execution_times.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|