gratinglab 0.2.3__tar.gz → 0.2.4__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.
- {gratinglab-0.2.3/src/gratinglab.egg-info → gratinglab-0.2.4}/PKG-INFO +9 -7
- {gratinglab-0.2.3 → gratinglab-0.2.4}/README.md +8 -6
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/__init__.py +1 -1
- {gratinglab-0.2.3 → gratinglab-0.2.4/src/gratinglab.egg-info}/PKG-INFO +9 -7
- {gratinglab-0.2.3 → gratinglab-0.2.4}/LICENSE +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/pyproject.toml +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/setup.cfg +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/checks.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/compare.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/convergence.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/geometry.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/app.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/cmethod_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/diagram.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/diagram3d.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/docs.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/efficiency_plot.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/icon.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/integral_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/launcher.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/mathtext.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/orders.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/provenance.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/cmethod_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/geometry_panel.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/geometry_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/integral_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/launcher.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/main_window.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/profile_plot_panel.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/rcwa_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/scalar_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/scene3d_panel.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/setup_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/sizing.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/theming.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/theory_viewer.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/qt/worker.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/rcwa_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/richtext.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/scalar_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/state.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/gui/theme.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/illumination.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/io/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/io/boundary.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/io/efficiency_table.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/io/ggp.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/materials/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/materials/data/SOURCES.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/materials/fresnel.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/materials/optical.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/materials/refractiveindex.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/measured.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/analyzer.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/boundary/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/boundary/average.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/boundary/pipeline.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/boundary/swaths.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/cli.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/config.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/analysis.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/image_flatten.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/orientation.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/processing.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/region_mask.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/scars.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/core/tip.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/data/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/data/aggregation.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/icon.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/app.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/boundary_view.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/canvas.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/efficiency_dialog.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/import_view.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/layout.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/main_window.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/swath_dialog.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/wiki_view.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/qt/worker.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/gui/state.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/io/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/io/file_io.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/io/ibw.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/io/metrics.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/io/spm.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/settings.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/stats/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/stats/analysis.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/stats/icc.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/visualization/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/visualization/diagnostics.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/visualization/profiles.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/visualization/statistics.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/facet-fitting.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/file-formats.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/flattening.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/groove-orientation.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/icc-correction.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/overview.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/reading-outputs.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/row-groups.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/scars-and-masking.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/swath-statistics.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/wiki/tip-correction.md +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/metrology/workflows.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/problem.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/profiles.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/resolution.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/result.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/_conditioning.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/_execution.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/base.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/cmethod/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/cmethod/_core.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/cmethod/_series.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_boundary.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_core.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_finite.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_greens.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_kernels.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/integral/_nystrom.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/rcwa/__init__.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/rcwa/_core.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/rcwa/_stack.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab/solvers/scalar.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab.egg-info/SOURCES.txt +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab.egg-info/dependency_links.txt +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab.egg-info/entry_points.txt +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab.egg-info/requires.txt +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/src/gratinglab.egg-info/top_level.txt +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_changelog.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_checks.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_cmethod.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_compare.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_conditioning.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_convergence.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_cross_method.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_efficiency_table.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_fresnel.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_geometry.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_ggp.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_cmethod_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_cmethod_tab.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_diagram.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_diagram3d.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_docs.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_integral_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_launcher.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_mathtext.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_orders.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_provenance.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_qt.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_rcwa_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_richtext.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_scalar_options.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_state.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_gui_theme.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_illumination.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_core.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_corpus.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_finite.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_graded.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_greens.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_kernels.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_operators.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_integral_solver.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_io_boundary.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_materials.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_measured.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_perturbation.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_profiles.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_rayleigh_anomaly.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_rcwa.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_rcwa_benchmarks.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_refractiveindex.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_resolution.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_result.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_scalar.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_solver_conformance.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_solver_execution.py +0 -0
- {gratinglab-0.2.3 → gratinglab-0.2.4}/tests/test_solver_progress.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gratinglab
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: Open platform for diffraction grating groove metrology and efficiency analysis
|
|
5
5
|
Author: Jake McCoy, Aditi Gangadharan
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -110,8 +110,10 @@ convergence harnesses and the materials layer work end to end. They are checked
|
|
|
110
110
|
against closed-form results, published benchmark tables, energy balance and
|
|
111
111
|
reciprocity, but remain experimental until they have been used on real problems.
|
|
112
112
|
Efficiencies are absolute when a coating is named, using an optical constant table
|
|
113
|
-
supplied by the user (see Install).
|
|
114
|
-
|
|
113
|
+
supplied by the user (see Install). Since 0.2.0 two more rigorous backends sit
|
|
114
|
+
beside them, both written in-house and both experimental: a rigorous coupled-wave
|
|
115
|
+
analysis (RCWA), which also models coated gratings through conformal layers, and
|
|
116
|
+
the C-method (Chandezon). Each has a tab in the efficiency window since 0.2.1.
|
|
115
117
|
|
|
116
118
|
## Scope
|
|
117
119
|
|
|
@@ -136,8 +138,8 @@ grazing incidence (γ of a degree or two), the soft X-ray spectroscopy regime th
|
|
|
136
138
|
project began with, where the integral method is the established approach and
|
|
137
139
|
general-purpose RCWA codes are least reliable. `Illumination.classical`,
|
|
138
140
|
`Illumination.conical(theta, phi)` and `Illumination.offplane(graze, azimuth)` all
|
|
139
|
-
build the same object, and
|
|
140
|
-
(
|
|
141
|
+
build the same object, and every solver accepts any of them. Which method serves which regime, and what is not yet covered
|
|
142
|
+
(multilayer stacks checked against an independent code, for one), is mapped in
|
|
141
143
|
[`docs/roadmap.md`](https://github.com/jamccoy/gratinglab/blob/master/docs/roadmap.md#regimes-and-the-methods-that-serve-them).
|
|
142
144
|
|
|
143
145
|
The method backends, in order of development:
|
|
@@ -146,8 +148,8 @@ The method backends, in order of development:
|
|
|
146
148
|
|---|---|
|
|
147
149
|
| Scalar (Kirchhoff, x-ray blaze form) | experimental; checked against closed-form results |
|
|
148
150
|
| Integral method (boundary integral, conical, undercut-capable) | experimental; perfect and finite conductivity (`conductivity="tabulated"`, Goray & Schmidt 2010), absolute efficiencies with the absorbed fraction recorded; a corner-graded mesh for profiles with corners (`corner_grading=4`), under either boundary condition; checked against published benchmark tables (Maystre & Popov; Goray & Schmidt), energy balance and reciprocity |
|
|
149
|
-
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) |
|
|
150
|
-
| C-method (Chandezon) |
|
|
151
|
+
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) | experimental, since 0.2.0; lamellar gratings exact and other profiles staircased, transmitted orders, and coatings through conformal layers (`Problem.layers`); checked against Fresnel, the Airy film formula, reciprocity, the integral solver, and published lamellar values (Granet; Lalanne & Hugonin; Gralak; Goray & Schmidt's conical tables). Not yet checked: staircase accuracy in metallic TM, and layers of a second material against an independent code |
|
|
152
|
+
| C-method (Chandezon) | experimental, since 0.2.0; perfect conductor in any mount, and one interface into an absorbing or lossless material, conical and coupled; checked against Goray & Schmidt's Table 3, Fresnel and the integral solver. Refuses vertical facets and undercuts; converges slowly on sawtooth corners, and loses precision at high truncation on profiles deeper than about half the period, both reported in provenance. No coatings |
|
|
151
153
|
|
|
152
154
|
The comparison harness also accepts an efficiency table already computed by an
|
|
153
155
|
external program as one of its methods, so that comparison plots can be made without
|
|
@@ -65,8 +65,10 @@ convergence harnesses and the materials layer work end to end. They are checked
|
|
|
65
65
|
against closed-form results, published benchmark tables, energy balance and
|
|
66
66
|
reciprocity, but remain experimental until they have been used on real problems.
|
|
67
67
|
Efficiencies are absolute when a coating is named, using an optical constant table
|
|
68
|
-
supplied by the user (see Install).
|
|
69
|
-
|
|
68
|
+
supplied by the user (see Install). Since 0.2.0 two more rigorous backends sit
|
|
69
|
+
beside them, both written in-house and both experimental: a rigorous coupled-wave
|
|
70
|
+
analysis (RCWA), which also models coated gratings through conformal layers, and
|
|
71
|
+
the C-method (Chandezon). Each has a tab in the efficiency window since 0.2.1.
|
|
70
72
|
|
|
71
73
|
## Scope
|
|
72
74
|
|
|
@@ -91,8 +93,8 @@ grazing incidence (γ of a degree or two), the soft X-ray spectroscopy regime th
|
|
|
91
93
|
project began with, where the integral method is the established approach and
|
|
92
94
|
general-purpose RCWA codes are least reliable. `Illumination.classical`,
|
|
93
95
|
`Illumination.conical(theta, phi)` and `Illumination.offplane(graze, azimuth)` all
|
|
94
|
-
build the same object, and
|
|
95
|
-
(
|
|
96
|
+
build the same object, and every solver accepts any of them. Which method serves which regime, and what is not yet covered
|
|
97
|
+
(multilayer stacks checked against an independent code, for one), is mapped in
|
|
96
98
|
[`docs/roadmap.md`](https://github.com/jamccoy/gratinglab/blob/master/docs/roadmap.md#regimes-and-the-methods-that-serve-them).
|
|
97
99
|
|
|
98
100
|
The method backends, in order of development:
|
|
@@ -101,8 +103,8 @@ The method backends, in order of development:
|
|
|
101
103
|
|---|---|
|
|
102
104
|
| Scalar (Kirchhoff, x-ray blaze form) | experimental; checked against closed-form results |
|
|
103
105
|
| Integral method (boundary integral, conical, undercut-capable) | experimental; perfect and finite conductivity (`conductivity="tabulated"`, Goray & Schmidt 2010), absolute efficiencies with the absorbed fraction recorded; a corner-graded mesh for profiles with corners (`corner_grading=4`), under either boundary condition; checked against published benchmark tables (Maystre & Popov; Goray & Schmidt), energy balance and reciprocity |
|
|
104
|
-
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) |
|
|
105
|
-
| C-method (Chandezon) |
|
|
106
|
+
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) | experimental, since 0.2.0; lamellar gratings exact and other profiles staircased, transmitted orders, and coatings through conformal layers (`Problem.layers`); checked against Fresnel, the Airy film formula, reciprocity, the integral solver, and published lamellar values (Granet; Lalanne & Hugonin; Gralak; Goray & Schmidt's conical tables). Not yet checked: staircase accuracy in metallic TM, and layers of a second material against an independent code |
|
|
107
|
+
| C-method (Chandezon) | experimental, since 0.2.0; perfect conductor in any mount, and one interface into an absorbing or lossless material, conical and coupled; checked against Goray & Schmidt's Table 3, Fresnel and the integral solver. Refuses vertical facets and undercuts; converges slowly on sawtooth corners, and loses precision at high truncation on profiles deeper than about half the period, both reported in provenance. No coatings |
|
|
106
108
|
|
|
107
109
|
The comparison harness also accepts an efficiency table already computed by an
|
|
108
110
|
external program as one of its methods, so that comparison plots can be made without
|
|
@@ -22,7 +22,7 @@ from .measured import MeasuredEfficiency, MeasurementProvenance
|
|
|
22
22
|
from .resolution import ResolvingPower, resolving_power
|
|
23
23
|
from .result import EfficiencyScan, OrderEfficiency, Provenance
|
|
24
24
|
|
|
25
|
-
__version__ = "0.2.
|
|
25
|
+
__version__ = "0.2.4"
|
|
26
26
|
|
|
27
27
|
__all__ = [
|
|
28
28
|
"Illumination",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gratinglab
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: Open platform for diffraction grating groove metrology and efficiency analysis
|
|
5
5
|
Author: Jake McCoy, Aditi Gangadharan
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -110,8 +110,10 @@ convergence harnesses and the materials layer work end to end. They are checked
|
|
|
110
110
|
against closed-form results, published benchmark tables, energy balance and
|
|
111
111
|
reciprocity, but remain experimental until they have been used on real problems.
|
|
112
112
|
Efficiencies are absolute when a coating is named, using an optical constant table
|
|
113
|
-
supplied by the user (see Install).
|
|
114
|
-
|
|
113
|
+
supplied by the user (see Install). Since 0.2.0 two more rigorous backends sit
|
|
114
|
+
beside them, both written in-house and both experimental: a rigorous coupled-wave
|
|
115
|
+
analysis (RCWA), which also models coated gratings through conformal layers, and
|
|
116
|
+
the C-method (Chandezon). Each has a tab in the efficiency window since 0.2.1.
|
|
115
117
|
|
|
116
118
|
## Scope
|
|
117
119
|
|
|
@@ -136,8 +138,8 @@ grazing incidence (γ of a degree or two), the soft X-ray spectroscopy regime th
|
|
|
136
138
|
project began with, where the integral method is the established approach and
|
|
137
139
|
general-purpose RCWA codes are least reliable. `Illumination.classical`,
|
|
138
140
|
`Illumination.conical(theta, phi)` and `Illumination.offplane(graze, azimuth)` all
|
|
139
|
-
build the same object, and
|
|
140
|
-
(
|
|
141
|
+
build the same object, and every solver accepts any of them. Which method serves which regime, and what is not yet covered
|
|
142
|
+
(multilayer stacks checked against an independent code, for one), is mapped in
|
|
141
143
|
[`docs/roadmap.md`](https://github.com/jamccoy/gratinglab/blob/master/docs/roadmap.md#regimes-and-the-methods-that-serve-them).
|
|
142
144
|
|
|
143
145
|
The method backends, in order of development:
|
|
@@ -146,8 +148,8 @@ The method backends, in order of development:
|
|
|
146
148
|
|---|---|
|
|
147
149
|
| Scalar (Kirchhoff, x-ray blaze form) | experimental; checked against closed-form results |
|
|
148
150
|
| Integral method (boundary integral, conical, undercut-capable) | experimental; perfect and finite conductivity (`conductivity="tabulated"`, Goray & Schmidt 2010), absolute efficiencies with the absorbed fraction recorded; a corner-graded mesh for profiles with corners (`corner_grading=4`), under either boundary condition; checked against published benchmark tables (Maystre & Popov; Goray & Schmidt), energy balance and reciprocity |
|
|
149
|
-
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) |
|
|
150
|
-
| C-method (Chandezon) |
|
|
151
|
+
| RCWA (in-plane, conical, off-plane; Li factorization, S-matrix, layer stacks) | experimental, since 0.2.0; lamellar gratings exact and other profiles staircased, transmitted orders, and coatings through conformal layers (`Problem.layers`); checked against Fresnel, the Airy film formula, reciprocity, the integral solver, and published lamellar values (Granet; Lalanne & Hugonin; Gralak; Goray & Schmidt's conical tables). Not yet checked: staircase accuracy in metallic TM, and layers of a second material against an independent code |
|
|
152
|
+
| C-method (Chandezon) | experimental, since 0.2.0; perfect conductor in any mount, and one interface into an absorbing or lossless material, conical and coupled; checked against Goray & Schmidt's Table 3, Fresnel and the integral solver. Refuses vertical facets and undercuts; converges slowly on sawtooth corners, and loses precision at high truncation on profiles deeper than about half the period, both reported in provenance. No coatings |
|
|
151
153
|
|
|
152
154
|
The comparison harness also accepts an efficiency table already computed by an
|
|
153
155
|
external program as one of its methods, so that comparison plots can be made without
|
|
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
|
|
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
|
|
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
|