LICENSE
MANIFEST.in
README.md
pyproject.toml
src/gosti/__init__.py
src/gosti.egg-info/PKG-INFO
src/gosti.egg-info/SOURCES.txt
src/gosti.egg-info/dependency_links.txt
src/gosti.egg-info/entry_points.txt
src/gosti.egg-info/requires.txt
src/gosti.egg-info/top_level.txt
src/gosti/dispertion/__init__.py
src/gosti/dispertion/dispersion_schott.py
src/gosti/dispertion/dispertion.py
src/gosti/dispertion/refractive_index.py
src/gosti/distortion/__init__.py
src/gosti/distortion/distortion_model.py
src/gosti/distortion/distortion_sample.py
src/gosti/distortion/distortion_samples.py
src/gosti/distortion/fit_brown_conrady.py
src/gosti/element/optical_element_like.py
src/gosti/field/__init__.py
src/gosti/field/angular_field_coordinate_system.py
src/gosti/field/angular_field_metric.py
src/gosti/field/angular_field_metric_factories.py
src/gosti/field/angular_field_sampler.py
src/gosti/field/field_coordinate_system.py
src/gosti/field/field_geometry.py
src/gosti/field/field_metric.py
src/gosti/field/field_reference.py
src/gosti/field/field_sampler.py
src/gosti/field/paraxial_field.py
src/gosti/fixtures/__init__.py
src/gosti/fixtures/cardinal_points.py
src/gosti/fixtures/field_coordinate_system.py
src/gosti/fixtures/field_metric.py
src/gosti/fixtures/first_order_pupil.py
src/gosti/fixtures/objective_data.py
src/gosti/fixtures/paraxial_field.py
src/gosti/fixtures/paraxial_objective.py
src/gosti/fixtures/paraxial_optical_state.py
src/gosti/fixtures/paraxial_optical_system.py
src/gosti/fixtures/ray_samples.py
src/gosti/fixtures/wavelength.py
src/gosti/fixtures/zernike_statistics.py
src/gosti/fixtures/zernike_term.py
src/gosti/grid/__init__.py
src/gosti/grid/angular_grid.py
src/gosti/grid/empty_field_grid.py
src/gosti/grid/field_grid_like.py
src/gosti/grid/field_grid_radial.py
src/gosti/grid/field_grid_rectangle.py
src/gosti/grid/field_grid_rectangle_max_X.py
src/gosti/grid/field_grid_rectangle_max_XY.py
src/gosti/grid/field_on_axis.py
src/gosti/grid/grid_like.py
src/gosti/grid/grid_like_mixin.py
src/gosti/grid/grid_type.py
src/gosti/grid/pupil_grid_circle.py
src/gosti/grid/pupil_grid_like.py
src/gosti/grid/pupil_on_axis.py
src/gosti/h5/__init__.py
src/gosti/h5/codec/cardinal_points_codec.py
src/gosti/h5/codec/cardinal_points_codec_layout.py
src/gosti/h5/codec/distortion_model_codec.py
src/gosti/h5/codec/distortion_model_codec_layout.py
src/gosti/h5/codec/distortion_sample_codec.py
src/gosti/h5/codec/distortion_sample_codec_layout.py
src/gosti/h5/codec/distortion_samples_codec.py
src/gosti/h5/codec/distortion_samples_codec_layout.py
src/gosti/h5/codec/electric_field3d_codec.py
src/gosti/h5/codec/electric_field3d_codec_layout.py
src/gosti/h5/codec/enum_codecs.py
src/gosti/h5/codec/field_coordinate_system_codec.py
src/gosti/h5/codec/field_coordinate_system_codec_layout.py
src/gosti/h5/codec/field_metric_codec.py
src/gosti/h5/codec/field_metric_codec_layout.py
src/gosti/h5/codec/first_order_pupil_codec.py
src/gosti/h5/codec/first_order_pupil_codec_layout.py
src/gosti/h5/codec/grid_like_mixin_codec.py
src/gosti/h5/codec/grid_like_mixin_codec_layout.py
src/gosti/h5/codec/input_polarization_codec.py
src/gosti/h5/codec/input_polarization_codec_layout.py
src/gosti/h5/codec/jones_vector_codec.py
src/gosti/h5/codec/jones_vector_codec_layout.py
src/gosti/h5/codec/normalized_field_codec.py
src/gosti/h5/codec/normalized_field_codec_layout.py
src/gosti/h5/codec/normalized_pupil_codec.py
src/gosti/h5/codec/normalized_pupil_codec_layout.py
src/gosti/h5/codec/objective_data_codec.py
src/gosti/h5/codec/objective_data_codec_layout.py
src/gosti/h5/codec/paraxial_field_codec.py
src/gosti/h5/codec/paraxial_field_codec_layout.py
src/gosti/h5/codec/paraxial_objective_codec.py
src/gosti/h5/codec/paraxial_objective_codec_layout.py
src/gosti/h5/codec/paraxial_optical_state_codec.py
src/gosti/h5/codec/paraxial_optical_state_codec_layout.py
src/gosti/h5/codec/paraxial_optical_system_codec.py
src/gosti/h5/codec/paraxial_optical_system_codec_layout.py
src/gosti/h5/codec/polarization_state_codec.py
src/gosti/h5/codec/polarization_state_codec_layout.py
src/gosti/h5/codec/ray3d_codec.py
src/gosti/h5/codec/ray3d_codec_layout.py
src/gosti/h5/codec/ray3d_polarized_codec.py
src/gosti/h5/codec/ray3d_polarized_codec_layout.py
src/gosti/h5/codec/ray_batch_codec.py
src/gosti/h5/codec/ray_batch_codec_layout.py
src/gosti/h5/codec/ray_batches_codec.py
src/gosti/h5/codec/ray_batches_codec_layout.py
src/gosti/h5/codec/ray_bundle_codec.py
src/gosti/h5/codec/ray_bundle_codec_layout.py
src/gosti/h5/codec/ray_meta_codec.py
src/gosti/h5/codec/ray_meta_codec_layout.py
src/gosti/h5/codec/ray_on_surface_codec.py
src/gosti/h5/codec/ray_on_surface_codec_layout.py
src/gosti/h5/codec/ray_optical_state_codec.py
src/gosti/h5/codec/ray_optical_state_codec_layout.py
src/gosti/h5/codec/ray_pair_codec.py
src/gosti/h5/codec/ray_pair_codec_layout.py
src/gosti/h5/codec/ray_sample_codec.py
src/gosti/h5/codec/ray_sample_codec_layout.py
src/gosti/h5/codec/ray_trace_path_codec.py
src/gosti/h5/codec/ray_trace_path_codec_layout.py
src/gosti/h5/codec/scene_plane_codec.py
src/gosti/h5/codec/scene_plane_codec_layout.py
src/gosti/h5/codec/traced_polarization_state_codec.py
src/gosti/h5/codec/traced_polarization_state_codec_layout.py
src/gosti/h5/codec/wavelength_codec.py
src/gosti/h5/codec/wavelength_codec_layout.py
src/gosti/h5/codec/zernike_statistics_codec.py
src/gosti/h5/codec/zernike_statistics_codec_layout.py
src/gosti/h5/codec/zernike_term_codec.py
src/gosti/h5/codec/zernike_term_codec_layout.py
src/gosti/norm/__init__.py
src/gosti/norm/aid.py
src/gosti/norm/norm.py
src/gosti/norm/normalized_2d.py
src/gosti/norm/normalized_field.py
src/gosti/norm/normalized_field_radial.py
src/gosti/norm/normalized_field_rectangle.py
src/gosti/norm/normalized_pupil.py
src/gosti/norm/special_points.py
src/gosti/paraxial/__init__.py
src/gosti/paraxial/base/__init__.py
src/gosti/paraxial/base/cardinal_points.py
src/gosti/paraxial/base/global_reference.py
src/gosti/paraxial/base/paraxial_system_mode.py
src/gosti/paraxial/base/paraxial_tolerance.py
src/gosti/paraxial/base/system_aperture.py
src/gosti/paraxial/objective/__init__.py
src/gosti/paraxial/objective/objective_data.py
src/gosti/paraxial/objective/optical_system_data.py
src/gosti/paraxial/objective/paraxial_objective.py
src/gosti/paraxial/objective/paraxial_objective_geometry.py
src/gosti/paraxial/objective/paraxial_objective_graph.py
src/gosti/paraxial/ray_tracing/__init__.py
src/gosti/paraxial/ray_tracing/abcd.py
src/gosti/paraxial/ray_tracing/paraxial_ray_2d.py
src/gosti/paraxial/ray_tracing/paraxial_ray_state_2d.py
src/gosti/paraxial/ray_tracing/paraxial_system_trace_2d.py
src/gosti/paraxial/system/__init__.py
src/gosti/paraxial/system/marginal_ray_height.py
src/gosti/paraxial/system/paraxial_conjugate_solver.py
src/gosti/paraxial/system/paraxial_field_resolver.py
src/gosti/paraxial/system/paraxial_optical_state.py
src/gosti/paraxial/system/paraxial_optical_system.py
src/gosti/paraxial/system/paraxial_optical_system_graph.py
src/gosti/paraxial/system/paraxial_reference_ray_factory.py
src/gosti/paraxial/system/paraxial_system_tracer_2d.py
src/gosti/paraxial/validation/__init__.py
src/gosti/paraxial/validation/validate_paraxial_objective.py
src/gosti/paraxial/validation/validate_paraxial_optical_system.py
src/gosti/paraxial/validation/validation_issue.py
src/gosti/paraxial/validation/validation_issue_code.py
src/gosti/paraxial/validation/validation_report.py
src/gosti/paraxial/validation/validation_severity.py
src/gosti/plane/__init__.py
src/gosti/plane/angular_scene_plane.py
src/gosti/plane/optical_aperture_plane.py
src/gosti/plane/optical_plane_like.py
src/gosti/plane/scene_plane.py
src/gosti/polarization/__init__.py
src/gosti/polarization/electric_field_3d.py
src/gosti/polarization/input_polarization.py
src/gosti/polarization/jones_vector.py
src/gosti/polarization/polarization_reference.py
src/gosti/polarization/polarization_state.py
src/gosti/polarization/traced_polarization_state.py
src/gosti/psf/__init__.py
src/gosti/psf/build_chief_direction.py
src/gosti/psf/otf.py
src/gosti/psf/otf_builder.py
src/gosti/psf/pad_center.py
src/gosti/psf/psf.py
src/gosti/psf/psf_build_info.py
src/gosti/psf/psf_from_zernike.py
src/gosti/pupil/__init__.py
src/gosti/pupil/apodization.py
src/gosti/pupil/apodizations.py
src/gosti/pupil/build_pupil_raster.py
src/gosti/pupil/build_zemax_pupil_raster.py
src/gosti/pupil/first_order_pupil.py
src/gosti/pupil/pupil_aware_optical_like.py
src/gosti/pupil/pupil_coordinate_system.py
src/gosti/pupil/pupil_function.py
src/gosti/pupil/pupil_function_builder.py
src/gosti/pupil/pupil_mask.py
src/gosti/pupil/pupil_mask_elliptical.py
src/gosti/pupil/pupil_metric.py
src/gosti/pupil/pupil_raster.py
src/gosti/pupil/sampler_to_mask.py
src/gosti/pupil/vis.py
src/gosti/pupil/builder/aid.py
src/gosti/pupil/builder/build_from_grid.py
src/gosti/pupil/builder/build_from_wavefront.py
src/gosti/ray/__init__.py
src/gosti/ray/has.py
src/gosti/ray/packer.py
src/gosti/ray/ray3d_polarized.py
src/gosti/ray/ray_3d.py
src/gosti/ray/ray_grid.py
src/gosti/ray/ray_grid_like.py
src/gosti/ray/ray_meta.py
src/gosti/ray/ray_optical_state.py
src/gosti/ray/ray_pair.py
src/gosti/ray/ray_sample.py
src/gosti/ray/ray_sample_like.py
src/gosti/scalar2d/__init__.py
src/gosti/scalar2d/resample_psf_to_grid.py
src/gosti/scalar2d/resample_scalar2d.py
src/gosti/scalar2d/scalar2_comparator.py
src/gosti/scalar2d/scalar2d_compare_ops.py
src/gosti/scalar2d/scalar2d_comparison.py
src/gosti/scalar2d/scalar2d_metric.py
src/gosti/scalar2d/scalar_field2d.py
src/gosti/scalar2d/builders/from_fft_psf.py
src/gosti/space/__init__.py
src/gosti/space/optical_space_kind.py
src/gosti/space/optical_spaces.py
src/gosti/space/validate_objective_graph.py
src/gosti/space/validate_optical_graph.py
src/gosti/space/validate_optical_system_graph.py
src/gosti/surface/Surface3d.py
src/gosti/surface/__init__.py
src/gosti/surface/basis.py
src/gosti/surface/freeform_surface.py
src/gosti/tracer/__init__.py
src/gosti/tracer/ray_batch.py
src/gosti/tracer/ray_batches.py
src/gosti/tracer/ray_bundle.py
src/gosti/tracer/ray_bundle_builder.py
src/gosti/tracer/ray_on_surface.py
src/gosti/tracer/ray_trace_path.py
src/gosti/tracer/trace_option.py
src/gosti/wavefront/__init__.py
src/gosti/wavefront/export_wavefront.py
src/gosti/wavefront/wavefront.py
src/gosti/wavefront/wavefront_builder.py
src/gosti/wavefront/wavefront_report.py
src/gosti/wavelength/__init__.py
src/gosti/wavelength/wavelength.py
src/gosti/zernike/__init__.py
src/gosti/zernike/plot_zernike_report.py
src/gosti/zernike/zernike_base.py
src/gosti/zernike/zernike_projection.py
src/gosti/zernike/zernike_report.py
src/gosti/zernike/zernike_report_diff.py
src/gosti/zernike/zernike_scalar_diff.py
src/gosti/zernike/zernike_statistics.py
src/gosti/zernike/zernike_term.py
src/gosti/zernike/zernike_term_diff.py
src/gosti/zernike/zerniker_compare.py