From 2f56ca1de87ac56edf8c8559953b3fc4f419ddfe Mon Sep 17 00:00:00 2001 From: Andy Kee Date: Fri, 12 Jun 2020 22:56:13 -0700 Subject: [PATCH] Initial public release --- .gitignore | 122 ++ .readthedocs.yml | 7 + CHANGES.rst | 8 + LICENSE.rst | 29 + README.rst | 33 + docs/Makefile | 20 + docs/_img/python/getting_started.py | 123 ++ docs/_img/python/pixel_mtf.py | 95 + docs/_img/python/simple_plane_attributes.py | 15 + docs/_img/tikz/FPA.light.tex | 31 + docs/_img/tikz/README.txt | 3 + docs/_img/tikz/black_box.tex | 69 + docs/_img/tikz/block_diagram.tex | 34 + docs/_img/tikz/detector_model.tex | 63 + docs/_img/tikz/detector_model_simple.tex | 38 + .../tikz/fraunhofer_diffraction_geometry.tex | 45 + .../tikz/fresnel_diffraction_geometry.tex | 41 + docs/_img/tikz/imaging_chain.tex | 50 + docs/_img/tikz/propagate.tex | 60 + docs/_img/tikz/propagate_fourier_period.tex | 74 + docs/_img/tikz/propagate_npix.tex | 54 + docs/_img/tikz/propagate_npix_chip.tex | 60 + docs/_img/tikz/propagate_npix_small.tex | 54 + docs/_img/tikz/propagate_sampling.tex | 52 + docs/_img/tikz/propagate_tilt_angle.tex | 69 + docs/_img/tikz/propagate_tilt_angle_steps.tex | 77 + docs/_img/tikz/propagate_tilt_phase.tex | 62 + docs/_img/tikz/propagate_tilt_phase_wrap.tex | 68 + docs/_img/tikz/radiometry.tex | 45 + docs/_img/tikz/spectrum_bin.tex | 52 + docs/_img/tikz/telescope.tex | 51 + docs/_static/img/api/convolvable/jitter_m.png | Bin 0 -> 12424 bytes .../_static/img/api/convolvable/jitter_px.png | Bin 0 -> 11491 bytes docs/_static/img/api/convolvable/smear_m.png | Bin 0 -> 12124 bytes docs/_static/img/api/convolvable/smear_px.png | Bin 0 -> 16542 bytes docs/_static/img/api/detector/cosmic_ray.png | Bin 0 -> 9641 bytes docs/_static/img/api/radiometry/blackbody.png | Bin 0 -> 23943 bytes .../img/api/radiometry/blackbody_vegamag.png | Bin 0 -> 20220 bytes .../img/api/radiometry/spectrum_bin.png | Bin 0 -> 56535 bytes .../img/api/zernike/zernike_compose_1.png | Bin 0 -> 46726 bytes .../img/api/zernike/zernike_compose_2.png | Bin 0 -> 51348 bytes docs/_static/img/black_box.png | Bin 0 -> 27908 bytes docs/_static/img/circle_amplitude.png | Bin 0 -> 17455 bytes docs/_static/img/circle_focus.png | Bin 0 -> 66881 bytes docs/_static/img/circle_mask.png | Bin 0 -> 10962 bytes docs/_static/img/detector_model.png | Bin 0 -> 54568 bytes docs/_static/img/detector_model_simple.png | Bin 0 -> 18793 bytes docs/_static/img/diffraction_geometry.png | Bin 0 -> 42912 bytes docs/_static/img/fpa_raw_frame_pipeline.png | Bin 0 -> 52294 bytes .../img/fraunhofer_diffraction_geometry.png | Bin 0 -> 19972 bytes .../img/fresnel_diffraction_geometry.png | Bin 0 -> 15339 bytes docs/_static/img/imaging_chain.png | Bin 0 -> 54303 bytes docs/_static/img/lentil.png | Bin 0 -> 11110 bytes docs/_static/img/pixel_mtf.png | Bin 0 -> 117759 bytes docs/_static/img/propagate.png | Bin 0 -> 104915 bytes docs/_static/img/propagate_fourier_period.png | Bin 0 -> 66774 bytes docs/_static/img/propagate_npix.png | Bin 0 -> 47755 bytes docs/_static/img/propagate_npix_chip.png | Bin 0 -> 53929 bytes docs/_static/img/propagate_npix_small.png | Bin 0 -> 47555 bytes docs/_static/img/propagate_sampling.png | Bin 0 -> 38983 bytes docs/_static/img/propagate_tilt_angle.png | Bin 0 -> 125725 bytes .../img/propagate_tilt_angle_steps.png | Bin 0 -> 70366 bytes docs/_static/img/propagate_tilt_phase.png | Bin 0 -> 109855 bytes .../_static/img/propagate_tilt_phase_wrap.png | Bin 0 -> 122467 bytes docs/_static/img/psf_32.png | Bin 0 -> 8252 bytes .../_static/img/quickstart_detector_frame.png | Bin 0 -> 14918 bytes .../img/quickstart_detector_irradiance.png | Bin 0 -> 19611 bytes docs/_static/img/quickstart_img.png | Bin 0 -> 31241 bytes docs/_static/img/quickstart_opd_spherical.png | Bin 0 -> 135906 bytes .../img/quickstart_psf_480_spherical.png | Bin 0 -> 49795 bytes .../_static/img/quickstart_psf_550_native.png | Bin 0 -> 57425 bytes .../img/quickstart_psf_broadband_5.png | Bin 0 -> 237450 bytes docs/_static/img/quickstart_pupil.png | Bin 0 -> 26050 bytes docs/_static/img/quickstart_source.png | Bin 0 -> 47398 bytes docs/_static/img/telescope.png | Bin 0 -> 65807 bytes docs/_static/js/copybutton.js | 64 + docs/about.rst | 3 + docs/api/convolvable.rst | 27 + docs/api/detector.rst | 157 ++ docs/api/lentil.rst | 72 + docs/api/modeltools.rst | 25 + docs/api/private.rst | 50 + docs/api/radiometry.rst | 49 + docs/api/util.rst | 67 + docs/api/wfe.rst | 12 + docs/api/zernike.rst | 20 + docs/basics.rst | 51 + docs/changes.rst | 5 + docs/conf.py | 73 + docs/index.rst | 65 + docs/installation.rst | 22 + docs/make.bat | 35 + docs/patterns/general/attributes.rst | 106 ++ docs/patterns/general/large.rst | 86 + docs/patterns/general/simple.rst | 66 + docs/patterns/index.rst | 43 + docs/patterns/matlab/matlab_interface.rst | 80 + docs/patterns/optics/filter_wheel.rst | 127 ++ docs/patterns/optics/rb_element.rst | 109 ++ docs/patterns/radiometry/complex_sources.rst | 5 + docs/patterns/radiometry/propagation.rst | 159 ++ docs/patterns/radiometry/self_emission.rst | 32 + docs/patterns/radiometry/source_coupling.rst | 9 + docs/patterns/radiometry/source_defocus.rst | 7 + docs/requirements.txt | 2 + docs/user_guide/diffraction.rst | 124 ++ docs/user_guide/focal_planes.rst | 106 ++ docs/user_guide/imaging_artifacts.rst | 113 ++ docs/user_guide/matlab.rst | 166 ++ docs/user_guide/overview.rst | 64 + docs/user_guide/performance.rst | 32 + docs/user_guide/plane.rst | 178 ++ docs/user_guide/radiometry.rst | 56 + docs/user_guide/wavefront_error.rst | 19 + lentil/__init__.py | 18 + lentil/cache.py | 105 ++ lentil/convolvable.py | 307 ++++ lentil/detector.py | 1228 +++++++++++++ lentil/fourier.py | 166 ++ lentil/fpa.py | 794 ++++++++ lentil/modeltools.py | 188 ++ lentil/plane.py | 756 ++++++++ lentil/prop.py | 459 +++++ lentil/radiometry.py | 1637 +++++++++++++++++ lentil/util.py | 606 ++++++ lentil/wavefront.py | 293 +++ lentil/wfe.py | 123 ++ lentil/zernike.py | 407 ++++ setup.cfg | 26 + setup.py | 15 + tests/__init__.py | 0 tests/airy/__init__.py | 1 + tests/airy/airy.py | 50 + tests/airy/test_airy.py | 71 + tests/detector/test_detector_gain.py | 40 + tests/detector/test_windowable.py | 37 + tests/fourier/test_fourier.py | 77 + tests/fpa/test_fpa.py | 10 + tests/modeltools/test_cached_property.py | 12 + tests/modeltools/test_normalize_power.py | 16 + tests/plane/test_plane.py | 34 + tests/plane/test_pupil.py | 24 + tests/prop/test_propagate.py | 213 +++ tests/prop/test_propagate_segmented.py | 46 + tests/radiometry/test_blackbody.py | 32 + tests/radiometry/test_spectrum.py | 185 ++ tests/util/test_util.py | 28 + tests/wavefront/test_wavefront.py | 255 +++ 148 files changed, 12349 insertions(+) create mode 100644 .gitignore create mode 100644 .readthedocs.yml create mode 100644 CHANGES.rst create mode 100644 LICENSE.rst create mode 100644 README.rst create mode 100644 docs/Makefile create mode 100644 docs/_img/python/getting_started.py create mode 100644 docs/_img/python/pixel_mtf.py create mode 100644 docs/_img/python/simple_plane_attributes.py create mode 100644 docs/_img/tikz/FPA.light.tex create mode 100644 docs/_img/tikz/README.txt create mode 100644 docs/_img/tikz/black_box.tex create mode 100644 docs/_img/tikz/block_diagram.tex create mode 100644 docs/_img/tikz/detector_model.tex create mode 100644 docs/_img/tikz/detector_model_simple.tex create mode 100644 docs/_img/tikz/fraunhofer_diffraction_geometry.tex create mode 100644 docs/_img/tikz/fresnel_diffraction_geometry.tex create mode 100644 docs/_img/tikz/imaging_chain.tex create mode 100644 docs/_img/tikz/propagate.tex create mode 100644 docs/_img/tikz/propagate_fourier_period.tex create mode 100644 docs/_img/tikz/propagate_npix.tex create mode 100644 docs/_img/tikz/propagate_npix_chip.tex create mode 100644 docs/_img/tikz/propagate_npix_small.tex create mode 100644 docs/_img/tikz/propagate_sampling.tex create mode 100644 docs/_img/tikz/propagate_tilt_angle.tex create mode 100644 docs/_img/tikz/propagate_tilt_angle_steps.tex create mode 100644 docs/_img/tikz/propagate_tilt_phase.tex create mode 100644 docs/_img/tikz/propagate_tilt_phase_wrap.tex create mode 100644 docs/_img/tikz/radiometry.tex create mode 100644 docs/_img/tikz/spectrum_bin.tex create mode 100644 docs/_img/tikz/telescope.tex create mode 100644 docs/_static/img/api/convolvable/jitter_m.png create mode 100644 docs/_static/img/api/convolvable/jitter_px.png create mode 100644 docs/_static/img/api/convolvable/smear_m.png create mode 100644 docs/_static/img/api/convolvable/smear_px.png create mode 100644 docs/_static/img/api/detector/cosmic_ray.png create mode 100644 docs/_static/img/api/radiometry/blackbody.png create mode 100644 docs/_static/img/api/radiometry/blackbody_vegamag.png create mode 100644 docs/_static/img/api/radiometry/spectrum_bin.png create mode 100644 docs/_static/img/api/zernike/zernike_compose_1.png create mode 100644 docs/_static/img/api/zernike/zernike_compose_2.png create mode 100644 docs/_static/img/black_box.png create mode 100644 docs/_static/img/circle_amplitude.png create mode 100644 docs/_static/img/circle_focus.png create mode 100644 docs/_static/img/circle_mask.png create mode 100644 docs/_static/img/detector_model.png create mode 100644 docs/_static/img/detector_model_simple.png create mode 100644 docs/_static/img/diffraction_geometry.png create mode 100644 docs/_static/img/fpa_raw_frame_pipeline.png create mode 100644 docs/_static/img/fraunhofer_diffraction_geometry.png create mode 100644 docs/_static/img/fresnel_diffraction_geometry.png create mode 100644 docs/_static/img/imaging_chain.png create mode 100644 docs/_static/img/lentil.png create mode 100644 docs/_static/img/pixel_mtf.png create mode 100644 docs/_static/img/propagate.png create mode 100644 docs/_static/img/propagate_fourier_period.png create mode 100644 docs/_static/img/propagate_npix.png create mode 100644 docs/_static/img/propagate_npix_chip.png create mode 100644 docs/_static/img/propagate_npix_small.png create mode 100644 docs/_static/img/propagate_sampling.png create mode 100644 docs/_static/img/propagate_tilt_angle.png create mode 100644 docs/_static/img/propagate_tilt_angle_steps.png create mode 100644 docs/_static/img/propagate_tilt_phase.png create mode 100644 docs/_static/img/propagate_tilt_phase_wrap.png create mode 100644 docs/_static/img/psf_32.png create mode 100644 docs/_static/img/quickstart_detector_frame.png create mode 100644 docs/_static/img/quickstart_detector_irradiance.png create mode 100644 docs/_static/img/quickstart_img.png create mode 100644 docs/_static/img/quickstart_opd_spherical.png create mode 100644 docs/_static/img/quickstart_psf_480_spherical.png create mode 100644 docs/_static/img/quickstart_psf_550_native.png create mode 100644 docs/_static/img/quickstart_psf_broadband_5.png create mode 100644 docs/_static/img/quickstart_pupil.png create mode 100644 docs/_static/img/quickstart_source.png create mode 100644 docs/_static/img/telescope.png create mode 100644 docs/_static/js/copybutton.js create mode 100644 docs/about.rst create mode 100644 docs/api/convolvable.rst create mode 100644 docs/api/detector.rst create mode 100644 docs/api/lentil.rst create mode 100644 docs/api/modeltools.rst create mode 100644 docs/api/private.rst create mode 100644 docs/api/radiometry.rst create mode 100644 docs/api/util.rst create mode 100644 docs/api/wfe.rst create mode 100644 docs/api/zernike.rst create mode 100644 docs/basics.rst create mode 100644 docs/changes.rst create mode 100644 docs/conf.py create mode 100644 docs/index.rst create mode 100644 docs/installation.rst create mode 100644 docs/make.bat create mode 100644 docs/patterns/general/attributes.rst create mode 100644 docs/patterns/general/large.rst create mode 100644 docs/patterns/general/simple.rst create mode 100644 docs/patterns/index.rst create mode 100644 docs/patterns/matlab/matlab_interface.rst create mode 100644 docs/patterns/optics/filter_wheel.rst create mode 100644 docs/patterns/optics/rb_element.rst create mode 100644 docs/patterns/radiometry/complex_sources.rst create mode 100644 docs/patterns/radiometry/propagation.rst create mode 100644 docs/patterns/radiometry/self_emission.rst create mode 100644 docs/patterns/radiometry/source_coupling.rst create mode 100644 docs/patterns/radiometry/source_defocus.rst create mode 100644 docs/requirements.txt create mode 100644 docs/user_guide/diffraction.rst create mode 100644 docs/user_guide/focal_planes.rst create mode 100644 docs/user_guide/imaging_artifacts.rst create mode 100644 docs/user_guide/matlab.rst create mode 100644 docs/user_guide/overview.rst create mode 100644 docs/user_guide/performance.rst create mode 100644 docs/user_guide/plane.rst create mode 100644 docs/user_guide/radiometry.rst create mode 100644 docs/user_guide/wavefront_error.rst create mode 100644 lentil/__init__.py create mode 100644 lentil/cache.py create mode 100644 lentil/convolvable.py create mode 100644 lentil/detector.py create mode 100644 lentil/fourier.py create mode 100644 lentil/fpa.py create mode 100644 lentil/modeltools.py create mode 100644 lentil/plane.py create mode 100644 lentil/prop.py create mode 100644 lentil/radiometry.py create mode 100644 lentil/util.py create mode 100644 lentil/wavefront.py create mode 100644 lentil/wfe.py create mode 100644 lentil/zernike.py create mode 100644 setup.cfg create mode 100644 setup.py create mode 100644 tests/__init__.py create mode 100644 tests/airy/__init__.py create mode 100644 tests/airy/airy.py create mode 100644 tests/airy/test_airy.py create mode 100644 tests/detector/test_detector_gain.py create mode 100644 tests/detector/test_windowable.py create mode 100644 tests/fourier/test_fourier.py create mode 100644 tests/fpa/test_fpa.py create mode 100644 tests/modeltools/test_cached_property.py create mode 100644 tests/modeltools/test_normalize_power.py create mode 100644 tests/plane/test_plane.py create mode 100644 tests/plane/test_pupil.py create mode 100644 tests/prop/test_propagate.py create mode 100644 tests/prop/test_propagate_segmented.py create mode 100644 tests/radiometry/test_blackbody.py create mode 100644 tests/radiometry/test_spectrum.py create mode 100644 tests/util/test_util.py create mode 100644 tests/wavefront/test_wavefront.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..24db0de --- /dev/null +++ b/.gitignore @@ -0,0 +1,122 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# PyCharm project settings +.idea/ + +# VS Code settings +.vscode/ + +# Sublime Text settings +*.sublime-project +*.sublime-workspace + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# MacOS junk +.DS_Store +*.swp + +# LaTeX and Tikz +*.aux +*.log +*.pdf diff --git a/.readthedocs.yml b/.readthedocs.yml new file mode 100644 index 0000000..e37d84e --- /dev/null +++ b/.readthedocs.yml @@ -0,0 +1,7 @@ +version: 2 +python: + version: 3.7 + install: + - method: pip + path: . + - requirements: docs/requirements.txt diff --git a/CHANGES.rst b/CHANGES.rst new file mode 100644 index 0000000..aeca7c3 --- /dev/null +++ b/CHANGES.rst @@ -0,0 +1,8 @@ +Changes +======= + +v0.1.0 +------ +Released June 12, 2020 + +* Initial public release diff --git a/LICENSE.rst b/LICENSE.rst new file mode 100644 index 0000000..fa01455 --- /dev/null +++ b/LICENSE.rst @@ -0,0 +1,29 @@ +Copyright (c) 2020, California Institute of Technology ("Caltech"). U.S. +Government sponsorship acknowledged. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..e19b3f3 --- /dev/null +++ b/README.rst @@ -0,0 +1,33 @@ +Lentil +====== +Lentil is a Python library for modeling the imaging chain of an optical system. +It was originally developed at NASA's Jet Propulsion Lab by the Wavefront Sensing and +Control group (383E) to provide an easy to use framework for simulating point spread +functions of segmented aperture telescopes. + +Lentil provides classes for representing optical elements with a simple interface for +including effects like wavefront error, radiometric properties, and various noise and +aberration sources. Lentil also provides numerical methods for performing Fraunhofer +(far-field) diffraction calculations. The collection of classes provided by Lentil can +be used to simulate imagery for a wide variety of optical systems. + +Lentil is still under active development and new features continue to be added. Until +Lentil reaches version 1.0, the API is not guaranteed to be stable, but changes breaking +backwards compatibility will be noted. + +Installing +---------- +Install and update using `pip`_: + +.. code-block:: text + + pip install lentil + +Links +----- +* Documentation: https://lentil.readthedocs.io/ +* Releases: https://pypi.org/project/lentil/ +* Code: https://github.com/andykee/lentil/ +* Issue tracker: https://github.com/andykee/lentil/issues/ + +.. _pip: https://pip.pypa.io/en/stable/quickstart/ diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..d4bb2cb --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,20 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line, and also +# from the environment for the first two. +SPHINXOPTS ?= +SPHINXBUILD ?= sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs/_img/python/getting_started.py b/docs/_img/python/getting_started.py new file mode 100644 index 0000000..201a176 --- /dev/null +++ b/docs/_img/python/getting_started.py @@ -0,0 +1,123 @@ +import numpy as np +import matplotlib.pyplot as plt +import monocle as mo + +pm_mask = mo.util.circle(shape=(512, 512), radius=256) +sm_obsc = mo.util.circle(shape=(512, 512), radius=256/3) +sm_obsc_vert = np.zeros((512,512)) +sm_obsc_vert[:, 252:258] = 1 +sm_obsc_horiz = np.zeros((512, 512)) +sm_obsc_horiz[252:258, :] = 1 +mask = pm_mask - sm_obsc - sm_obsc_vert - sm_obsc_horiz +mask[np.where(mask < 0)] = 0 # Make the mask binary (0's and 1's) +plt.imshow(mask) +plt.savefig('../../_static/img/quickstart_pupil.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + +simple_pupil = mo.Pupil(diameter=0.5, focal_length=10, pixelscale=0.5/512, amplitude=mask) +simple_detector = mo.Detector(pixelscale=15e-6, shape=(512, 512)) +planes = [simple_pupil, simple_detector] +psf = mo.propagate(planes, wave=550e-9, npix=(128,128)) +plt.imshow(psf**0.1) +plt.savefig('../../_static/img/quickstart_psf_550_native.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + + +psf = mo.propagate(planes, wave=np.arange(450e-9,650e-9,10e-9), npix=(128,128), oversample=5, rebin=False) + +plt.imshow(psf**0.1) +plt.savefig('../../_static/img/quickstart_psf_broadband_5.png', transparent=True, bbox_inches='tight', dpi=150) + + +simple_pupil = mo.Pupil(diameter=0.5, + focal_length=10, + pixelscale=0.5/512, + amplitude=mask, + phase=-1400e-9 * mo.zernike.zernike(mask, index=11)) +plt.imshow(simple_pupil.phase) +plt.savefig('../../_static/img/quickstart_opd_spherical.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + +planes = [simple_pupil, simple_detector] +psf = mo.propagate(planes, wave=np.arange(475e-9,485e-9,1e-9), npix=(128,128)) +plt.imshow(psf**0.1) +plt.savefig('../../_static/img/quickstart_psf_480_spherical.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + + +qe = mo.radiometry.Spectrum(wave=[400, 600, 1000], value=[0.4, 0.8, 0.05], waveunit='nm', valueunit=None) +gain = mo.detector.Gain(gain=0.0016, saturation_capacity=10000) +simple_detector = mo.FPA(pixelscale=15e-6, shape=(512, 512), qe=qe, gain=gain) +irrad = np.tile(np.arange(512)/511, (512,1)) # gradient spanning [0, 1] +flux = irrad * 15000 # flux spanning [0, 15000] e- +plt.imshow(flux, cmap='gray') +plt.colorbar() +plt.savefig('../../_static/img/quickstart_detector_irradiance.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + + +img = simple_detector.frame(flux, ts=1.5, wave=650, waveunit='nm') +plt.imshow(img, cmap='gray') +plt.colorbar() +plt.savefig('../../_static/img/quickstart_detector_frame.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + + +detector_attrs = { + 'qe': qe, + 'gain': mo.detector.Gain(gain=2**12/15000, saturation_capacity=15000), + 'shot_noise': mo.detector.ShotNoise(), + 'read_noise': mo.detector.ReadNoise(50), + 'dark_signal': mo.detector.DarkCurrent(500)} + +simple_detector = mo.FPA(pixelscale=15e-6, shape=(512, 512), **detector_attrs) +simple_pupil = mo.Pupil(diameter=0.5, + focal_length=10, + pixelscale=0.5/512, + amplitude=mo.util.normalize_power(mask), + phase=-1400e-9 * mo.zernike.zernike(mask, index=11)) + +src = mo.radiometry.Blackbody.vegamag(wave=np.arange(350, 750), + temp=9500, + mag=8, + band='V') + +ir_filter = mo.radiometry.Spectrum(wave=[350, 395, 400, 700, 705, 750], value=[0, 0, 0.8, 0.8, 0, 0]) +collecting_area = np.pi*(simple_pupil.diameter/2 - simple_pupil.diameter/6)**2 +irradiance = src * ir_filter * collecting_area + +fig, ax = plt.subplots(3,1, figsize=[5, 5]) + +ax[0].plot(src.wave, src.value) +ax[0].grid() +ax[0].set_ylim([40000,80000]) +ax[0].set_title('Stellar flux') +ax[0].set_ylabel('ph/s/m^2/λ') + +ax[1].plot(ir_filter.wave, ir_filter.value) +ax[1].grid() +ax[1].set_ylim([0,1]) +ax[1].set_title('IR filter') +ax[1].set_ylabel('a.u.') + +ax[2].plot(irradiance.wave, irradiance.value) +ax[2].grid() +ax[2].set_ylim([0,6000]) +ax[2].set_title('Detector irradiance') +ax[2].set_ylabel('ph/s/λ') +ax[2].set_xlabel('Wavelength [nm]') + +plt.tight_layout() +plt.savefig('../../_static/img/quickstart_source.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() + + +wave = np.arange(350,750,10) +binned_irradiance = irradiance.bin(wave) +planes = [simple_pupil, simple_detector] +psf = mo.propagate(planes, wave=wave*1e-9, weight=binned_irradiance, + npix=(128, 128), flatten=False) +img = simple_detector.frame(psf, ts=1e-4, wave=wave, collect_charge=True) +plt.imshow(img, cmap='gray') +plt.savefig('../../_static/img/quickstart_img.png', transparent=True, bbox_inches='tight', dpi=150) +plt.close() diff --git a/docs/_img/python/pixel_mtf.py b/docs/_img/python/pixel_mtf.py new file mode 100644 index 0000000..21ac726 --- /dev/null +++ b/docs/_img/python/pixel_mtf.py @@ -0,0 +1,95 @@ +import numpy as np +import matplotlib.pyplot as plt +import monocle as mo + +# Define some system parameters +diameter = 1 +focal_length = 5 +f_number = focal_length/diameter +du = 5e-6 +wave = 550e-9 + +cutoff_freq = 1/(f_number*wave) # cycles/m +cutoff_freq_mm = cutoff_freq/1e3 # cycles/mm + +# Define some simulation parameters +npix = 256 +oversample = 4 +psf_sampling = du/oversample +psf_sampling_mm = psf_sampling * 1e3 + +# Set up the spatial frequencies we'll evaluate the MTF at +# Note that we would like to at least cover the cutoff frequency here +mtf_axis_mm = 1/psf_sampling_mm * np.arange(0,npix//2) / npix # cycles/mm +assert mtf_axis_mm[-1] >= cutoff_freq_mm + +mtf_axis_px = mtf_axis_mm * du/1e-3 # cycles/px + +# Compute the analytical optical MTF +s = (mtf_axis_px*wave*f_number)/du +s_valid = s[s<1] +mtf_valid = 2/np.pi*(np.arccos(s_valid)-s_valid*np.sqrt(1-s_valid**2)) +mtf_optics = np.zeros_like(s) +mtf_optics[0:s_valid.shape[0]] = mtf_valid + +# Compute the analytical pixel MTF +f_px = mtf_axis_px +f_px[0] = 1e-15 # We have to cheat a little to avoid a divide +mtf_px = np.abs(np.sin(np.pi*f_px)/(np.pi*f_px)) + +# The system MTF is just the product of the optical and pixel MTFs +mtf_sys = mtf_optics * mtf_px + +# Let's take a look +plt.style.use('ggplot') +#plt.plot(mtf_axis_px, mtf_optics, label='optics') +#plt.plot(mtf_axis_px, mtf_px, label='pixel') +#plt.plot(mtf_axis_px, mtf_sys, label='system') +#plt.xlabel('cycles/px') +#plt.ylabel('MTF') +#plt.legend() + +npix_pup_rad = npix/2 +npix_pup_diam = npix_pup_rad * 2 +dx = diameter/npix_pup_diam +amp = mo.util.circle((npix,npix),npix_pup_rad) +alpha = (dx*du)/(wave*focal_length*oversample) + +# Compute the optical MTF from a Monocle-generated PSF +psf = np.abs(mo.fourier.dft2(amp, alpha, npix=npix)**2) +psf = psf/np.max(psf) +mtf_optics_mo = np.abs(np.fft.fft2(psf)) +mtf_optics_mo = mtf_optics_mo/np.max(mtf_optics_mo) +mtf_optics_mo = mtf_optics_mo[0,0:mtf_optics_mo.shape[0]//2] + +# Now apply Monocle's pixellation method and compute the system MTF +pixel_mtf = mo.convolvable.Pixel() +psf_px = pixel_mtf(psf, oversample=oversample) +mtf_sys_mo = np.abs(np.fft.fft2(psf_px)) +mtf_sys_mo = mtf_sys_mo/np.max(mtf_sys_mo) +mtf_sys_mo = mtf_sys_mo[0,0:mtf_sys_mo.shape[0]//2] + +# Finally, we'll grab the Pixel kernel to make sure it matches the +# analytic pixel MTF +mtf_px_mo = np.abs(pixel_mtf.kernel(mtf_axis_px, mtf_axis_px, 1)) +mtf_px_mo = mtf_px_mo[0,:] + +#plt.plot(mtf_axis_px, mtf_optics_mo, label='optics') +#plt.plot(mtf_axis_px, mtf_px_mo, label='pixel') +#plt.plot(mtf_axis_px, mtf_sys_mo, label='system') +#plt.title('Model-based MTF') +#plt.ylabel('MTF') +#plt.xlabel('cycles/px') +#plt.legend() + +# Finally we'll bring it all together +plt.plot(mtf_axis_px, mtf_optics, label='optics') +#plt.plot(mtf_axis_px[::2], mtf_optics_mo[::2], 'o', label='optics model') +plt.plot(mtf_axis_px, mtf_px, label='pixel') +#plt.plot(mtf_axis_px, mtf_px_mo,'.', label='pixel model') +plt.plot(mtf_axis_px, mtf_sys, label='system') +plt.plot(mtf_axis_px[::2], mtf_sys_mo[::2], 'o', label='pixelated model') +plt.xlabel('cycles/px') +plt.ylabel('MTF') +plt.legend(prop={'size': 12}) +plt.savefig('../../_static/img/pixel_mtf.png', transparent=False, bbox_inches='tight', dpi=150) diff --git a/docs/_img/python/simple_plane_attributes.py b/docs/_img/python/simple_plane_attributes.py new file mode 100644 index 0000000..0a7ef07 --- /dev/null +++ b/docs/_img/python/simple_plane_attributes.py @@ -0,0 +1,15 @@ +import numpy as np +import matplotlib.pyplot as plt +import monocle as mo + +circlemask = mo.util.circlemask((256, 256), 128) +plt.imshow(circlemask) +plt.savefig('../../_static/img/circle_mask.png', transparent=True, bbox_inches='tight', dpi=150) + +amplitude = mo.util.circle((256, 256), 128) +plt.imshow(amplitude) +plt.savefig('../../_static/img/circle_amplitude.png', transparent=True, bbox_inches='tight', dpi=150) + +z4 = mo.zernike.zernike(circlemask, 4) +plt.imshow(z4) +plt.savefig('../../_static/img/circle_focus.png', transparent=True, bbox_inches='tight', dpi=150) diff --git a/docs/_img/tikz/FPA.light.tex b/docs/_img/tikz/FPA.light.tex new file mode 100644 index 0000000..69f218c --- /dev/null +++ b/docs/_img/tikz/FPA.light.tex @@ -0,0 +1,31 @@ +\documentclass{standalone} +\usepackage{tikz} + + +\usetikzlibrary{positioning,shapes,arrows} + +\begin{document} +\tikzstyle{class}=[rectangle, thick, draw=black, minimum height=1.2cm, minimum width=1cm] +\tikzstyle{arrow}=[->, >=latex, thick] +\tikzstyle{line}=[-, thick] + +\begin{tikzpicture}[node distance=1cm, auto] + + \node (light) [class] {\texttt{light(flux, ts)}}; + \node (dark) [class, below=of light] {\texttt{dark(ts)}}; + \node (sum) [circle,right=of dark, draw=black, inner sep=0pt,minimum size=8pt, thick] {$+$}; + \node (cosmic) [class, below=of dark] {\texttt{cosmic\_rays(ts)}}; + \node (diffusion) [class, right=of sum] {\texttt{charge\_diffusion(e)}}; + \node (offset) [class, right=of diffusion] {\texttt{offset(e)}}; + \node (readout) [class, right=of offset] {\texttt{readout(e)}}; + + \draw[arrow] (light.east) -| node [midway, right, align=center] {\scriptsize e$^-$} (sum.north); + \draw[arrow] (dark.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (sum.west); + \draw[arrow] (cosmic.east) -| node [midway, right, align=center] {\scriptsize e$^-$} (sum.south); + \draw[arrow] (sum.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (diffusion.west); + \draw[arrow] (diffusion.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (offset.west); + \draw[arrow] (offset.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (readout.west); + \draw[arrow] (readout.east) -- ++(1,0) node [midway, above, align=center] {\scriptsize DN}; + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/README.txt b/docs/_img/tikz/README.txt new file mode 100644 index 0000000..4ad0989 --- /dev/null +++ b/docs/_img/tikz/README.txt @@ -0,0 +1,3 @@ +Use pdflatex to generate a PDF of the image. + +Open in Photoshop with defaults, then File > Export > Quick Export as PNG diff --git a/docs/_img/tikz/black_box.tex b/docs/_img/tikz/black_box.tex new file mode 100644 index 0000000..a2f0160 --- /dev/null +++ b/docs/_img/tikz/black_box.tex @@ -0,0 +1,69 @@ +\documentclass{standalone} +\usepackage{tikz} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,0.5cm)}, y={(0cm,1cm)}, scale=1] + + + % object + \coordinate (0) at (0,0,-2); + + \draw[-latex] (0) -- +(2,0,0) node [right] {$\xi$}; + \draw (0) -- +(-1.5,0,0); + + \draw[-latex] (0) -- +(0,2,0) node [left] {$\eta$}; + \draw (0) -- +(0,-1.5,0); + + \draw[-latex] (0) -- +(0,0,10) node [above] {$z$}; + + \node [align=left] at (0,-2.25,-2) {Object}; + + % entrance pupil + \coordinate (1) at (0,0,1); + + \draw[-latex] (1) -- +(2,0,0) node [right] {$x$}; + \draw (1) -- +(-1.5,0,0); + + \draw[-latex] (1) -- +(0,2,0) node [left] {$y$}; + \draw (1) -- +(0,-1.5,0); + + \draw [thick, fill=black, even odd rule] + (-1,-1,1) -- (1,-1,1) -- (1,1,1) -- (-1,1,1) -- cycle + (0,0,1) circle[radius=0.9]; + \node [align=left] at (0,2.4,1) {Entrance pupil}; + + + % exit pupil + \coordinate (2) at (0,0,4); + + \draw[-latex] (2) -- +(2,0,0) node [right] {$x$}; + \draw (2) -- +(-1.5,0,0); + + \draw[-latex] (2) -- +(0,2,0) node [left] {$y$}; + \draw (2) -- +(0,-1.5,0); + + \draw [thick, fill=black, even odd rule] + (-1,-1,4) -- (1,-1,4) -- (1,1,4) -- (-1,1,4) -- cycle + (0,0,4) circle[radius=0.9]; + \node [align=left] at (0,2.4,4) {Exit pupil}; + + % black box + \draw[dashed] (-1,-1,1) -- (-1,-1,4); + \draw[dashed] (1,-1,1) -- (1,-1,4); + \draw[dashed] (1,1,1) -- (1,1,4); + \draw[dashed] (-1,1,1) -- (-1,1,4); + \node [align=left] at (0,-2.25,2.25) {``Black box''}; + + % image + \coordinate (3) at (0,0,7); + \draw[-latex] (3) -- +(2,0,0) node [right] {$u$}; + \draw (3) -- +(-1.5,0,0); + \draw[-latex] (3) -- +(0,2,0) node [left] {$v$}; + \draw (3) -- +(0,-1.5,0); + + \node [align=left] at (0,-2.25,7) {Image}; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/block_diagram.tex b/docs/_img/tikz/block_diagram.tex new file mode 100644 index 0000000..3dbb9ce --- /dev/null +++ b/docs/_img/tikz/block_diagram.tex @@ -0,0 +1,34 @@ +\documentclass{standalone} +\usepackage{tikz} + + +\usetikzlibrary{positioning,shapes,arrows} + +\begin{document} +\tikzstyle{class}=[rectangle, thick, draw=black, minimum width=3cm, + minimum height=1cm] +\tikzstyle{myarrow}=[->, >=open triangle 90, thick] +\tikzstyle{line}=[-, thick] + +\begin{tikzpicture}[node distance=1cm] + + \node (Telescope) [class] {\verb`Telescope`}; + \node (Instrument) [class, below=of Telescope] {\verb`Instrument`}; + + \node (AuxNode01) [text width=1cm, below=of Instrument] {}; + \node (AuxNode02) [text width=2cm, below=of AuxNode01] {}; + + \node (OpticalSystem) [class, left=of AuxNode02] {\verb`OpticalSystem`}; + \node (Detector) [class, right=of AuxNode02] {\verb`Detector`}; + + \node (Element) [class, below=of OpticalSystem] {\verb`Element`}; + + \draw[myarrow] (Instrument.north) -- (Telescope.south); + + \draw[myarrow] (OpticalSystem.north) -- ++(0,0.4) -| (Instrument.south); + \draw[line] (OpticalSystem.north) -- ++(0,0.4) -| (Detector.north); + + \draw[myarrow] (Element.north) -- (OpticalSystem.south); + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/detector_model.tex b/docs/_img/tikz/detector_model.tex new file mode 100644 index 0000000..f585409 --- /dev/null +++ b/docs/_img/tikz/detector_model.tex @@ -0,0 +1,63 @@ +\documentclass{standalone} +\usepackage{tikz} + + +\usetikzlibrary{positioning,shapes,arrows} + +\begin{document} +\tikzstyle{class}=[rectangle, thick, draw=black, minimum height=1.2cm, minimum width=1cm] +\tikzstyle{arrow}=[->, >=latex, thick] +\tikzstyle{line}=[-, thick] + +\begin{tikzpicture}[node distance=1cm, auto] + + \node (scene) [class] {Scene}; + \node (ts) [class, right=of scene] {ts}; + \node (QE) [class, right=of ts] {$\eta$}; + \node (pixelate) [class, right=of QE] {\begin{tabular}{c} Rebin \& \\ pixelate \end{tabular}}; + \node (shot2) [class, right=of pixelate] {$\sigma_{\mbox{shot}}$}; + \node (prnu) [class, right=of shot2] {PRNU}; + \node (aux-light) [text height=2cm, right=of prnu] {}; + + \node (sum1) [circle,below=of aux-light, draw=black, inner sep=0pt,minimum size=8pt, thick] {$+$}; + + \node (dcnu) [class, left=of sum1] {DSNU}; + \node (shot3) [class, left=of dcnu] {$\sigma_{\mbox{shot}}$}; + \node (ts2) [class, left=of shot3] {ts}; + \node (dark) [class, left=of ts2] {Dark signal}; + + \node (diffusion) [class, right=of sum1] {\begin{tabular}{c} Charge \\ diffusion \end{tabular}}; + \node (offsetfpn) [class, right=of diffusion] {Offset FPN}; + \node (sum2) [circle, right=of offsetfpn, draw=black, inner sep=0pt,minimum size=8pt, thick] {$+$}; + \node (read) [class, above=of sum2] {$\sigma_{\mbox{read}}$}; + \node (count) [class, below=of sum2] {\begin{tabular}{c} Count \& \\ saturate \end{tabular}}; + \node (gain) [class, below=of count] {$\displaystyle \frac{1}{K}$}; + \node (quant) [class, below=of gain] {Quantization}; + + + \draw[arrow] (scene.east) -- node [midway, above, align=center] {\scriptsize ph/s} (ts.west); + \draw[arrow] (ts.east) -- node [midway, above, align=center] {\scriptsize ph} (QE.west); + \draw[arrow] (QE.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (pixelate.west); + \draw[arrow] (pixelate.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (shot2.west); + \draw[arrow] (shot2.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (prnu.west); + \draw[line] (prnu.east) -- (aux-light.center); + \draw[arrow] (aux-light.center) -- node [midway, left] {\scriptsize e$^-$} (sum1.north); + + \draw[arrow] (dark.east) -- node [midway, above, align=center] {\scriptsize e$^-$/s} (ts2.west); + \draw[arrow] (ts2.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (shot3.west); + \draw[arrow] (shot3.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (dcnu.west); + \draw[arrow] (dcnu.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (sum1.west); + + + \draw[arrow] (sum1.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (diffusion.west); + \draw[arrow] (diffusion.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (offsetfpn.west); + \draw[arrow] (offsetfpn.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (sum2.west); + + \draw[arrow] (read.south) -- node [midway, left] {\scriptsize e$^-$} (sum2.north); + \draw[arrow] (sum2.south) -- node [midway, left] {\scriptsize e$^-$} (count.north); + \draw[arrow] (count.south) -- node [midway, left] {\scriptsize e$^-$} (gain.north); + \draw[arrow] (gain.south) -- node [midway, left] {\scriptsize DN} (quant.north); + \draw[arrow] (quant.south) -- ++(0,-1) node [below] {\scriptsize DN}; + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/detector_model_simple.tex b/docs/_img/tikz/detector_model_simple.tex new file mode 100644 index 0000000..2a6b729 --- /dev/null +++ b/docs/_img/tikz/detector_model_simple.tex @@ -0,0 +1,38 @@ +\documentclass{standalone} +\usepackage{tikz} + + +\usetikzlibrary{positioning,shapes,arrows} + +\begin{document} +\tikzstyle{class}=[rectangle, thick, draw=black, minimum height=1.2cm, minimum width=1cm] +\tikzstyle{arrow}=[->, >=latex, thick] +\tikzstyle{line}=[-, thick] + +\begin{tikzpicture}[node distance=1cm, auto] + + \node (flux) [class] {\begin{tabular}{c} Photon \\ flux \end{tabular}}; + + \node (ts) [class, right=of flux] {ts}; + \node (QE) [class, right=of ts] {$\eta$}; + \node (shot) [class, right=of QE] {$\sigma_{\mbox{shot}}$}; + + \node (sum) [circle,right=of shot, draw=black, inner sep=0pt,minimum size=8pt, thick] {$+$}; + + \node (read) [class, above=of sum] {$\sigma_{\mbox{read}}$}; + \node (dark) [class, below=of sum] {\begin{tabular}{c} Dark \\ signal \end{tabular}}; + \node (gain) [class, right=of sum] {$\displaystyle \frac{1}{K}$}; + + \draw[arrow] (flux.east) -- node [midway, above, align=center] {\scriptsize ph/s/$\lambda$} (ts.west); + \draw[arrow] (ts.east) -- node [midway, above, align=center] {\scriptsize ph/$\lambda$} (QE.west); + \draw[arrow] (QE.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (shot.west); + \draw[arrow] (shot.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (sum.west); + \draw[arrow] (sum.east) -- node [midway, above, align=center] {\scriptsize e$^-$} (gain.west); + \draw[arrow] (read.south) -- node [midway, left] {\scriptsize e$^-$} (sum.north); + + \draw[arrow] (dark.north) -- node [midway, left] {\scriptsize e$^-$} (sum.south); + + \draw[arrow] (gain.east) -- ++(1,0) node [midway, above, align=center] {\scriptsize DN}; + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/fraunhofer_diffraction_geometry.tex b/docs/_img/tikz/fraunhofer_diffraction_geometry.tex new file mode 100644 index 0000000..4e9785c --- /dev/null +++ b/docs/_img/tikz/fraunhofer_diffraction_geometry.tex @@ -0,0 +1,45 @@ +\documentclass{standalone} +\usepackage{tikz} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,0.5cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{4.5} + + % coordinate system + \coordinate (0) at (0,0,0); + \draw[-latex] (0) -- +(2,0,0) node [right] {$x'$}; + \draw (0) -- +(-1.5,0,0); + \draw[-latex] (0) -- +(0,2,0) node [left] {$y'$}; + \draw (0) -- +(0,-1.75,0); + \draw[-latex] (0) -- +(0,0,6) node [above] {$z$}; + \draw (0) -- +(0,0,-1); + + \coordinate (2) at (0,0,\zimg); + \draw[-latex] (2) -- +(2,0,0) node [right] {$x$}; + \draw (2) -- +(-1.5,0,0); + \draw[-latex] (2) -- +(0,2,0) node [left] {$y$}; + \draw (2) -- +(0,-1.75,0); + + % Aperture plane + \draw [thick, fill=black, fill opacity=0.5, even odd rule] + (-1,-1,0) -- (1,-1,0) -- (1,1,0) -- (-1,1,0) -- cycle (0,0) + circle[radius=0.9]; + \node [align=left] at (0,-2.25,0) {Aperture plane}; + %\draw[-latex] (-1.5,-0.75,0) -- (-0.25,-0.5,0); + %\node [left] at (-1.3,-0.9,0) {$\mathbf{A}$}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + \node [align=center] at (0,-2.25,\zimg) {Observation plane}; + + % Ray + \draw [latex-] (0,-1.25,0) -- (0,-1.25,1.95); + \draw [-latex] (0,-1.25,2.6) -- (0,-1.25,\zimg); + \node [align=center] at (0,-1.25,2.25) {$\Delta z$}; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/fresnel_diffraction_geometry.tex b/docs/_img/tikz/fresnel_diffraction_geometry.tex new file mode 100644 index 0000000..75a4a4e --- /dev/null +++ b/docs/_img/tikz/fresnel_diffraction_geometry.tex @@ -0,0 +1,41 @@ +\documentclass{standalone} +\usepackage{tikz} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,0.5cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{4.5} + + % coordinate system + \coordinate (0) at (0,0,0); + \draw[-latex] (0) -- +(2,0,0) node [right] {$x'$}; + \draw (0) -- +(-1.5,0,0); + \draw[-latex] (0) -- +(0,2,0) node [left] {$y'$}; + \draw (0) -- +(0,-1.75,0); + \draw[-latex] (0) -- +(0,0,6) node [above] {$z$}; + \draw (0) -- +(0,0,-1); + + \coordinate (2) at (0,0,\zimg); + \draw[-latex] (2) -- +(2,0,0) node [right] {$x$}; + \draw (2) -- +(-1.5,0,0); + \draw[-latex] (2) -- +(0,2,0) node [left] {$y$}; + \draw (2) -- +(0,-1.75,0); + + % Aperture plane + \draw [thick,fill=gray,fill opacity=0.1] (-1,-1,0) -- (1,-1,0) -- (1,1,0) -- (-1,1,0) -- cycle; + \node [align=left] at (0,-2.25,0) {Input plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + \node [align=center] at (0,-2.25,\zimg) {Observation plane}; + + % Ray + \draw [latex-] (0,-1.25,0) -- (0,-1.25,1.95); + \draw [-latex] (0,-1.25,2.6) -- (0,-1.25,\zimg); + \node [align=center] at (0,-1.25,2.25) {$\Delta z$}; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/imaging_chain.tex b/docs/_img/tikz/imaging_chain.tex new file mode 100644 index 0000000..c73129d --- /dev/null +++ b/docs/_img/tikz/imaging_chain.tex @@ -0,0 +1,50 @@ +\documentclass{standalone} +\usepackage{tikz} + + +\usetikzlibrary{positioning,shapes,arrows} + +\begin{document} +\tikzstyle{class}=[rectangle, thick, draw=black, minimum height=1.2cm] +\tikzstyle{arrow}=[->, >=latex, thick] +\tikzstyle{line}=[-, thick] + +\begin{tikzpicture}[node distance=1.5cm, auto] + + \node (scene) [class] {Scene}; + \node (optical-trans) [class, right=of scene] {\begin{tabular}{c} Optical \\ transmission \end{tabular}}; + \node (sample) [class, right=of optical-trans] {\begin{tabular}{c} Sample \\ spectrum \end{tabular}}; + \node (diffraction) [class, right=4cm of sample] {Diffraction}; + \node (optical-state) [class, below=of diffraction] {\begin{tabular}{c} Optical \\ state \end{tabular}}; + \node (dynamics-ts) [class, left=of optical-state] {\begin{tabular}{c} Dynamics \\ (timeseries) \end{tabular}}; + + \node (aux01) [text height=1.2cm, below=of sample] {}; + + \node (integrate-flux) [class, below=of aux01] {\begin{tabular}{c} Integrate \& \\ apply photon \\ flux \end{tabular}}; + \node (integrate) [class, below=of integrate-flux] {Integrate}; + \node (detector) [class, right=of integrate] {Detector}; + \node (dynamics-stat) [class, below=of detector] {\begin{tabular}{c} Dynamics \\ (statistical, \\ LOS) \end{tabular}}; + + \draw[arrow] (scene.east) -- node [midway, above, align=center] {\scriptsize ph/s/$\lambda$} (optical-trans.west); + \draw[arrow] (optical-trans.east) -- node [midway, above, align=center] {\scriptsize ph/s/$\lambda$} (sample.west); + \draw[arrow] (sample.east) -- node [midway, above, align=center] {\scriptsize $\lambda$} (diffraction.west); + + \draw[arrow] (optical-state.north) -- node [midway, left] {\scriptsize $Ae^{-j\frac{2\pi}{\lambda}\theta}$} (diffraction.south); + \draw[arrow] (dynamics-ts.east) -- (optical-state.west); + + \node (aux02) [text width=0cm, right=of diffraction] {}; + \node (aux03) [text width=0cm, right=7.1cm of integrate-flux] {}; + \draw[line] (diffraction.east) -- (aux02.center); + %\node [right=1.8cm of optical-state] {\scriptsize intensity/$\lambda$}; + \draw[line] (aux02.center) -- (aux03.center); + \draw[arrow] (aux03.center) -- node [midway, above, align=center] {\scriptsize intensity/$\lambda$} (integrate-flux.east); + + \draw[arrow] (sample.south) -- node [midway, left] {\scriptsize ph/s/$\lambda$} (integrate-flux.north); + \draw[arrow] (integrate-flux.south) -- node [midway, left] {\scriptsize ph/s/$\lambda$} (integrate.north); + \draw[arrow] (integrate.east) -- node [midway, above, align=center] {\scriptsize ph/$\lambda$} (detector.west); + \draw[arrow] (dynamics-stat.north) -- (detector.south); + + \draw[arrow] (detector.east) -- ++(1,0) node [right] {DN}; + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/propagate.tex b/docs/_img/tikz/propagate.tex new file mode 100644 index 0000000..4acbebd --- /dev/null +++ b/docs/_img/tikz/propagate.tex @@ -0,0 +1,60 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zwf{0} + \def\zpa{4} + \def\zpb{8} + \def\zpc{12} + \def\zpcc{16} + + % wavefront + \draw [thick,fill=black!5] (-2,-2,\zwf) -- (2,-2,\zwf) -- (2,2,\zwf) -- (-2,2,\zwf) -- cycle; + \node [align=center] at (-1,3.3,1) {\begin{tabular}{l}1. Create \texttt{Wavefront} with \\ \hspace{1em} wavelength = \texttt{wave}\end{tabular}}; + \node [align=center] at (0,-3,\zwf) {\texttt{Wavefront()}}; + + + \draw [thick,fill=black!5] (-2,-2,\zpa) -- (2,-2,\zpa) -- (2,2,\zpa) -- (-2,2,\zpa) -- cycle; + \node [align=center] at (0-1,3.3,6.5) {\begin{tabular}{l}2. Propagate \texttt{Wavefront} from\\ \hspace{1em} plane to plane\end{tabular}}; + \node [align=center] at (0,-3,\zpa) {\texttt{Plane()}}; + + \draw [-latex, thick] (0,2.2,\zwf) parabola bend (0,2.6,2) (0,2.2,3.5); + \node [align=center] at (0,0,6) {\huge $\cdots$}; + + \draw [thick,fill=black!5] (-2,-2,\zpb) -- (2,-2,\zpb) -- (2,2,\zpb) -- (-2,2,\zpb) -- cycle; + \node [align=center] at (0,-3,\zpb) {\texttt{Plane()}}; + + \draw (0,-3.25,3) -- (0,-3.25,9); + \draw (0,-3.25,3) -- (0,-3.1,3); + \draw (0,-3.25,9) -- (0,-3.1,9); + \draw (0,-3.25,6) -- (0,-3.5,6); + \node [align=center, below] at (0,-3.5,6) {\texttt{planes = [...]}}; + + \draw [-latex, thick] (0,2.2,\zpa) parabola bend (0,2.6,6) (0,2.2,7.5); + \draw [thick,fill=black!5] (-2,-3,\zpc) -- (-2,-3,\zpcc) -- (2,-3,\zpcc) -- (2,-3,\zpc) -- cycle; + \draw [thick,fill=black!5] (-2,-2.75,\zpc) -- (-2,-2.75,\zpcc) -- (2,-2.75,\zpcc) -- (2,-2.75,\zpc) -- cycle; + \draw [thick,fill=black!5] (-2,-2.5,\zpc) -- (-2,-2.5,\zpcc) -- (2,-2.5,\zpcc) -- (2,-2.5,\zpc) -- cycle; + \draw [thick,fill=black!5] (-2,-2.25,\zpc) -- (-2,-2.25,\zpcc) -- (2,-2.25,\zpcc) -- (2,-2.25,\zpc) -- cycle; + \draw [thick,fill=black!5] (-2,-2,\zpc) -- (-2,-2,\zpcc) -- (2,-2,\zpcc) -- (2,-2,\zpc) -- cycle; + + \draw [-latex, thick] (0,2.2,\zpb) parabola bend (0,2.5,9.5) (0,-1.5,13.75); + + \node [align=left] at (-1,4.3,2.1) {For each \texttt{wave} and corresponding \texttt{weight}:}; + %\draw [thick,dashed] (0,5.25,-2) -- (0,5.25,10) -- (0,-4.1,10) -- (0,-4.1,-2) -- cycle; + + + \node [align=center] at (-1,2.25,14) {\begin{tabular}{l}3. Apply \texttt{weight} and accumulate \\ \hspace{1em} results\end{tabular}}; + + + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_fourier_period.tex b/docs/_img/tikz/propagate_fourier_period.tex new file mode 100644 index 0000000..b2df095 --- /dev/null +++ b/docs/_img/tikz/propagate_fourier_period.tex @@ -0,0 +1,74 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (0,0,\zimg); + \draw[color=gray] (2,0,0) -- (0,0,\zimg); + \draw[color=gray] (0,-2,0) -- (0,0,\zimg); + \draw[color=gray] (0,2,0) -- (0,0,\zimg); + + \draw[thick, fill=gray, fill opacity=0.1] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [fill=gray, fill opacity=0.1, draw=gray, draw opacity=0.1] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + %\draw [fill=gray,fill opacity=0.1, draw=gray, draw opacity=0.1] (-2.5,-2.5,\zimg) -- (2.5,-2.5,\zimg) -- (2.5,2.5,\zimg) -- (-2.5,2.5,\zimg) -- cycle; + \draw[color=gray] (-2.5,0,\zimg) -- (2.5,0,\zimg); + \draw[color=gray] (0,-2.5,\zimg) -- (0,2.5,\zimg); + \draw[color=gray] (-2.5,2,\zimg) -- (2.5,2,\zimg); + \draw[color=gray] (-2,-2.5,\zimg) -- (-2,2.5,\zimg); + \draw[color=gray] (-2.5,-2,\zimg) -- (2.5,-2,\zimg); + \draw[color=gray] (2,-2.5,\zimg) -- (2,2.5,\zimg); + + \draw[dashed] (-2.5,-1,\zimg) -- (2.5,-1,\zimg); + \draw[dashed] (-2.5,1,\zimg) -- (2.5,1,\zimg); + \draw[dashed] (-1,-2.5,\zimg) -- (-1,2.5,\zimg); + \draw[dashed] (1,-2.5,\zimg) -- (1,2.5,\zimg); + + % Fourier transform period + + \draw[latex-latex] (2.6,-1,\zimg) -- (2.6,1,\zimg); + + \node [align=center, right] at (2.6,0,\zimg) {\begin{tabular}{l} Fourier\\ transform \\period \end{tabular}}; + + \node [align=center] at (0,-3.5,\zimg) {Image plane}; + + % psf location + \draw[fill=red, opacity=0.6] (0,0,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (2,2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (-2,2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (-2,-2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (2,-2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (0,2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (0,-2,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (2,0,\zimg) circle [radius=0.125]; + \draw[fill=red, opacity=0.3] (-2,0,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_npix.tex b/docs/_img/tikz/propagate_npix.tex new file mode 100644 index 0000000..6dad15d --- /dev/null +++ b/docs/_img/tikz/propagate_npix.tex @@ -0,0 +1,54 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (0,0,\zimg); + \draw[color=gray] (2,0,0) -- (0,0,\zimg); + \draw[color=gray] (0,-2,0) -- (0,0,\zimg); + \draw[color=gray] (0,2,0) -- (0,0,\zimg); + + \draw[thick, fill=gray, fill opacity=0.1] (0,0) circle [radius=2]; + \draw[color=gray] (-2,0,0) -- (2,0,0); + \draw[color=gray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-2,-2,\zimg) -- (2,-2,\zimg) -- (2,2,\zimg) -- (-2,2,\zimg) -- cycle; + \draw[color=gray] (-2,0,\zimg) -- (2,0,\zimg); + \draw[color=gray] (0,-2,0\zimg) -- (0,2,\zimg); + + % npix + \draw[latex-] (1.5,-1.5,\zimg) -- (1.8,-1.75,6.5); + \node [align=center, left] at (1.8,-1.75,6.5) {\texttt{npix x npix}}; + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + % psf location + \draw[fill=red, opacity=0.6] (0,0,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_npix_chip.tex b/docs/_img/tikz/propagate_npix_chip.tex new file mode 100644 index 0000000..5aee11f --- /dev/null +++ b/docs/_img/tikz/propagate_npix_chip.tex @@ -0,0 +1,60 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (0,0,\zimg); + \draw[color=gray] (2,0,0) -- (0,0,\zimg); + \draw[color=gray] (0,-2,0) -- (0,0,\zimg); + \draw[color=gray] (0,2,0) -- (0,0,\zimg); + + \draw[thick, fill=gray, fill opacity=0.1] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-2,-2,\zimg) -- (2,-2,\zimg) -- (2,2,\zimg) -- (-2,2,\zimg) -- cycle; + \draw[color=gray] (-2,0,\zimg) -- (2,0,\zimg); + \draw[color=gray] (0,-2,0\zimg) -- (0,2,\zimg); + + \draw[thick] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + + \draw[latex-] (-0.8,-1,\zimg) -- (-0.8,-2,7); + \node [align=center, left] at (-0.8,-2,7) {\texttt{npix\_chip x npix\_chip}}; + + % npix + \draw[latex-] (1.5,-1.5,\zimg) -- (1.8,-1.75,6.5); + \node [align=center, left] at (1.8,-1.75,6.5) {\texttt{npix x npix}}; + + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + % psf location + \draw[fill=red, opacity=0.6] (0,0,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_npix_small.tex b/docs/_img/tikz/propagate_npix_small.tex new file mode 100644 index 0000000..c0e77d7 --- /dev/null +++ b/docs/_img/tikz/propagate_npix_small.tex @@ -0,0 +1,54 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (0,0,\zimg); + \draw[color=gray] (2,0,0) -- (0,0,\zimg); + \draw[color=gray] (0,-2,0) -- (0,0,\zimg); + \draw[color=gray] (0,2,0) -- (0,0,\zimg); + + \draw[thick, fill=gray, fill opacity=0.1] (0,0) circle [radius=2]; + \draw[color=gray] (-2,0,0) -- (2,0,0); + \draw[color=gray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + \draw[color=gray] (-1,0,\zimg) -- (1,0,\zimg); + \draw[color=gray] (0,-1,0\zimg) -- (0,1,\zimg); + + % npix + \draw[latex-] (0.75,-0.75,\zimg) -- (1.8,-.75,6.5); + \node [align=center, left] at (1.8,-.75,6.5) {\texttt{npix x npix}}; + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + % psf location + \draw[fill=red, opacity=0.6] (0,0,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_sampling.tex b/docs/_img/tikz/propagate_sampling.tex new file mode 100644 index 0000000..68df7b7 --- /dev/null +++ b/docs/_img/tikz/propagate_sampling.tex @@ -0,0 +1,52 @@ +\documentclass{standalone} +\usepackage{tikz} +\usepackage{pict2e} + +\DeclareRobustCommand{\slashcirc}{{\mathpalette\doslashcirc\relax}} + +\makeatletter +\newcommand\doslashcirc[2]{% + \sbox\z@{$#1\m@th\circ$}% + \setlength\unitlength{\wd\z@} + \begin{picture}(1,1) + \roundcap + \put(0,0){\box\z@} + \put(0,0){\line(1,1){1}} + \end{picture}% +} +\makeatother + + +\begin{document} + +\begin{tikzpicture} + + +\draw [very thin, gray, step=0.25] (-2,-2) grid +(4,4); +\draw [thick, fill=darkgray, fill opacity=0.2, even odd rule] (-2,-2) -- (2,-2) -- (2,2) -- (-2,2) -- cycle (0,0) circle[radius=1.75]; + +\draw[latex-] (-1.75,-2.25) -- (-0.4,-2.25); +\draw[-latex] (0.4,-2.25) -- (1.75,-2.25); + +\draw (-1.75,-0.45) -- (-1.75,-2.375); +\draw (1.75,-0.45) -- (1.75,-2.375); +\node [below] at (0,-2) {14\mbox{px}}; + +\draw[latex-] (1.237,1.237) -- (1.75,1.75); +\draw (1.75,1.75) -- (2.5,1.75); +\node[right] at (2.5,1.75) {\large$\slashcirc$ \normalsize$1\mbox{m}$}; + +%\draw[-latex] (1.875,-1.625) -- (1.875,-1); +%\draw[latex-] (1.875,-.75) -- (1.875,-0.125); +%\draw (1.875,-0.125) -- (2.375,0.375); + +\draw (2.125,-1) -- (2.875, -1); +\draw (2.125,-0.75) -- (2.875, -0.75); +\draw[-latex] (2.75,-1.625) -- (2.75,-1); +\draw[latex-] (2.75,-.75) -- (2.75,-0.125); + +\node[align=left, right] at (3, -0.85) {\texttt{pixelscale }$=\displaystyle \frac{1\mbox{m}}{14\mbox{px}}=0.0714 \mbox{m/px}$}; +%2.5, 0.125 + +\end{tikzpicture} +\end{document} diff --git a/docs/_img/tikz/propagate_tilt_angle.tex b/docs/_img/tikz/propagate_tilt_angle.tex new file mode 100644 index 0000000..4537806 --- /dev/null +++ b/docs/_img/tikz/propagate_tilt_angle.tex @@ -0,0 +1,69 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (-1.4,1.4,\zimg); + \draw[color=gray] (2,0,0) -- (-1.4,1.4,\zimg); + \draw[color=gray] (0,-2,0) -- (-1.4,1.4,\zimg); + \draw[color=gray] (0,2,0) -- (-1.4,1.4,\zimg); + + \draw[thick, shade, shading=axis, left color=viridisblue, right color=viridisyellow, middle color=viridisgreen, + shading angle=30, opacity=0.75] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=white,fill opacity=0.1] (-2,-2,\zimg) -- (2,-2,\zimg) -- (2,2,\zimg) -- (-2,2,\zimg) -- cycle; + \draw[color=gray] (-2,0,\zimg) -- (2,0,\zimg); + \draw[color=gray] (0,-2,0\zimg) -- (0,2,\zimg); + + \draw [thick,fill=gray,fill opacity=0.1] (-1.75,1.75,\zimg) -- (-1.75,1.05,\zimg) -- (-1.05,1.05,\zimg) -- (-1.05,1.75,\zimg) -- cycle; + + \draw[latex-] (-1.2,1.75,\zimg) -- (-1.4,1.9,9); + \node [align=center, right] at (-1.4,1.9,9) {\texttt{npix\_chip x npix\_chip}}; + + + \draw[dashed] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + + % Fourier transform period + \draw[latex-] (-0.8,-1,\zimg) -- (-0.8,-1.4,6); + \node [align=center, left] at (-0.8,-1.6,7.5) {\begin{tabular}{l} Fourier\\ transform period \end{tabular}}; + + % npix + \draw[latex-] (1.5,-1.5,\zimg) -- (1.8,-1.75,6.5); + \node [align=center, left] at (1.8,-1.75,6.5) {\texttt{npix x npix}}; + + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + + % psf location + \draw[fill=red, opacity=0.6] (-1.4,1.4,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_tilt_angle_steps.tex b/docs/_img/tikz/propagate_tilt_angle_steps.tex new file mode 100644 index 0000000..2581736 --- /dev/null +++ b/docs/_img/tikz/propagate_tilt_angle_steps.tex @@ -0,0 +1,77 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + \def\zout{14} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (0,0,\zimg); + \draw[color=gray] (2,0,0) -- (0,0,\zimg); + \draw[color=gray] (0,-2,0) -- (0,0,\zimg); + \draw[color=gray] (0,2,0) -- (0,0,\zimg); + + \draw[thick, fill=gray, fill opacity=0.1] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {\begin{tabular}{c} Tilt-removed \\ pupil plane\end{tabular}}; + + % Observation plane + \draw [thick, fill=gray, fill opacity=0.1] (-0.4,-0.4,\zimg) -- (0.4,-0.4,\zimg) -- (0.4,0.4,\zimg) -- (-0.4,0.4,\zimg) -- cycle; + \draw[color=gray] (-0.4,0,\zimg) -- (0.4,0,\zimg); + \draw[color=gray] (0,-0.4,0\zimg) -- (0,0.4,\zimg); + + % npix + \draw[latex-] (0.3,-0.3,\zimg) -- (1.2,-1.2,6.5); + \node [align=center, left] at (1.2,-1.2,6.5) {\texttt{npix\_chip x npix\_chip}}; + + + \node [align=center] at (0,-3.5,\zimg) {Detector plane chip}; + + + % psf location + \draw[fill=red, opacity=0.6] (0,0,\zimg) circle [radius=0.125]; + + + % Observation plane + \draw [thick, fill=white, fill opacity=0.1] (-2,-2,\zout) -- (2,-2,\zout) -- (2,2,\zout) -- (-2,2,\zout) -- cycle; + \draw[color=gray] (-2,0,\zout) -- (2,0,\zout); + \draw[color=gray] (0,-2,0\zout) -- (0,2,\zout); + + % npix + \draw[latex-] (1.5,-1.5,\zout) -- (1.8,-1.75,12.5); + \node [align=center, left] at (1.8,-1.75,12.5) {\texttt{npix x npix}}; + + \node [align=center] at (0,-3.5,\zout) {Detector plane}; + + \draw [thick, fill=gray, fill opacity=0.1] (-1.8,1.8,\zout) -- (-1,1.8,\zout) -- (-1,1,\zout) -- (-1.8,1,\zout) -- cycle; + \draw[fill=red, opacity=0.6] (-1.4,1.4,\zout) circle [radius=0.125]; + + + \draw [-latex, thick] (-0.1,0.5,\zimg) parabola bend (-2,1.7,12.5) (-1.6,1.6,\zout); + \node [align=center, left] at (-1.8,2.3,13.5) {\begin{tabular}{l}Chip is placed in detector\\ plane to account for tilt\end{tabular}}; + + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_tilt_phase.tex b/docs/_img/tikz/propagate_tilt_phase.tex new file mode 100644 index 0000000..5cc3d0a --- /dev/null +++ b/docs/_img/tikz/propagate_tilt_phase.tex @@ -0,0 +1,62 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (-0.5,0.5,\zimg); + \draw[color=gray] (2,0,0) -- (-0.5,0.5,\zimg); + \draw[color=gray] (0,-2,0) -- (-0.5,0.5,\zimg); + \draw[color=gray] (0,2,0) -- (-0.5,0.5,\zimg); + + \draw[thick, shade, shading=axis, left color=viridisblue, right color=viridisyellow, middle color=viridisgreen, + shading angle=30, opacity=0.75] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-2,-2,\zimg) -- (2,-2,\zimg) -- (2,2,\zimg) -- (-2,2,\zimg) -- cycle; + \draw[color=gray] (-2,0,\zimg) -- (2,0,\zimg); + \draw[color=gray] (0,-2,0\zimg) -- (0,2,\zimg); + + \draw[dashed] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + + % Fourier transform period + \draw[latex-] (-0.8,-1,\zimg) -- (-0.8,-1.4,6); + \node [align=center, left] at (-0.8,-1.6,7.5) {\begin{tabular}{l} Fourier\\ transform period \end{tabular}}; + + % npix + \draw[latex-] (1.5,-1.5,\zimg) -- (1.8,-1.75,6.5); + \node [align=center, left] at (1.8,-1.75,6.5) {\texttt{npix x npix}}; + + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + % psf location + \draw[fill=red, opacity=0.6] (-0.5,0.5,\zimg) circle [radius=0.125]; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/propagate_tilt_phase_wrap.tex b/docs/_img/tikz/propagate_tilt_phase_wrap.tex new file mode 100644 index 0000000..a291f1b --- /dev/null +++ b/docs/_img/tikz/propagate_tilt_phase_wrap.tex @@ -0,0 +1,68 @@ +\documentclass{standalone} +\usepackage{tikz} + +\definecolor{viridisblue}{RGB}{68,1,84} +\definecolor{viridisyellow}{RGB}{253,231,37} +\definecolor{viridisgreen}{RGB}{35,138,141} + +\begin{document} + +\begin{tikzpicture}[z={(1cm,0cm)},x={(0.5cm,-0.4cm)}, y={(0cm,1cm)}, scale=1] + + % constants + \def\zimg{8} + + % coordinate system + \coordinate (0) at (0,0,0); + \coordinate (2) at (0,0,\zimg); + + % optical axis + \draw[dashed, color=gray] (0) -- +(0,0,1); + \draw[dashed, color=darkgray] (0,0,1) -- (0,0,9.5); + + + % Aperture plane + \draw[color=gray] (-2,0,0) -- (-1,0.5,\zimg); + \draw[color=gray] (2,0,0) -- (-1,0.5,\zimg); + \draw[color=gray] (0,-2,0) -- (-1,0.5,\zimg); + \draw[color=gray] (0,2,0) -- (-1,0.5,\zimg); + + \draw[thick, shade, shading=axis, left color=viridisblue, right color=viridisyellow, middle color=viridisgreen, + shading angle=30, opacity=0.75] (0,0) circle [radius=2]; + \draw[color=darkgray] (-2,0,0) -- (2,0,0); + \draw[color=darkgray] (0,-2,0) -- (0,2,0); + + \draw[dashed, color=darkgray] (0) -- +(0,0,-1.5); % left side of optical axis + + \node [align=left] at (0,-3.5,0) {Pupil plane}; + + % Observation plane + \draw [thick,fill=gray,fill opacity=0.1] (-2,-2,\zimg) -- (2,-2,\zimg) -- (2,2,\zimg) -- (-2,2,\zimg) -- cycle; + \draw[color=gray] (-2,0,\zimg) -- (2,0,\zimg); + \draw[color=gray] (0,-2,0\zimg) -- (0,2,\zimg); + + + \draw[dashed] (-1,-1,\zimg) -- (1,-1,\zimg) -- (1,1,\zimg) -- (-1,1,\zimg) -- cycle; + + \draw[latex-] (1,-0.5,\zimg) -- (1.5,-0.5,9); + \node [align=center, right] at (1.5,-0.7,8.8) {\begin{tabular}{l} High spatial frequencies \\ wrap around \end{tabular}}; + + % Fourier transform period + \draw[latex-] (-0.8,-1,\zimg) -- (-0.8,-1.4,6); + \node [align=center, left] at (-0.8,-1.6,7.5) {\begin{tabular}{l} Fourier\\ transform period \end{tabular}}; + + % npix + \draw[latex-] (1.5,-1.5,\zimg) -- (1.8,-1.75,6.5); + \node [align=center, left] at (1.8,-1.75,6.5) {\texttt{npix x npix}}; + + + \node [align=center] at (0,-3.5,\zimg) {Detector plane}; + + + % psf location + \draw[fill=red, opacity=0.6] (-1,0.5,\zimg) -- (-1,0.375,\zimg) arc(-90:90:0.125) -- cycle; + \draw[fill=red, opacity=0.6] (1,-0.5,\zimg) -- (1,-.375,\zimg) arc(90:270:0.125) -- cycle; + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/radiometry.tex b/docs/_img/tikz/radiometry.tex new file mode 100644 index 0000000..370768a --- /dev/null +++ b/docs/_img/tikz/radiometry.tex @@ -0,0 +1,45 @@ +\documentclass{standalone} +\usepackage{tikz} + +\begin{document} + +\begin{tikzpicture}[scale=1] + + + % object + %\begin{scope}[rotate around={30:(0,0,1)}] + % \draw[fill=white] (0,0,1) circle[radius=0.5]; + % \draw[fill=white] (0,0,1) -- (0,-0.2,1.95) -- (0,0.2,2.05) -- cycle; + % \draw[fill=white] (0,0,2) circle[radius=0.18]; + %\end{scope} + + \begin{scope}[rotate around={37.5:(0,0)}] + \draw[fill=white] (0,0) ellipse (0.2 and 0.5); + \draw[fill=white] (0,0) -- (1,-0.25) -- (1,0.25) -- cycle; + \draw[fill=white] (1,0) ellipse (0.1 and 0.248); + \draw[dashed] (0,0) -- (0.88, 0); + \draw[-latex] (1,0) -- +(.5,0); + \end{scope} + \node at (0,-0.65) {dA}; + \node at (0.55,1.15) {d$\Omega$}; + + \begin{scope}[rotate around={146.5:(10,0)}] + \draw[fill=white] (10,0) ellipse (0.2 and 0.5); + + \draw[fill=white] (10,0) -- (11,-0.25) -- (11,0.25) -- cycle; + \draw[fill=white] (11,0) ellipse (0.1 and 0.248); + \draw[dashed] (10,0) -- (10.88, 0); + \draw[-latex] (11,0) -- +(.5,0); + \end{scope} + \node at (10,-0.65) {dA$'$}; + \node at (9.45,1.15) {d$\Omega '$}; + + + %\draw[thick] (6.6,-0.4) -- (6.6,0.6) -- (7,0.4) -- (7,-0.6) -- cycle; + \draw (0,0) -- +(10,0); + \draw[-latex] (10.3,0) -- +(1.25,0); + + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/spectrum_bin.tex b/docs/_img/tikz/spectrum_bin.tex new file mode 100644 index 0000000..f8d6266 --- /dev/null +++ b/docs/_img/tikz/spectrum_bin.tex @@ -0,0 +1,52 @@ +\documentclass[tikz,border=10pt]{standalone} + +\usetikzlibrary{arrows} +\usepackage{upquote} + +\definecolor{apricot}{rgb}{0.98, 0.81, 0.69} +\definecolor{persimmon}{rgb}{0.93, 0.35, 0.0} +\definecolor{orange-red}{rgb}{1.0, 0.27, 0.0} + +\begin{document} +\nopagecolor + +\begin{tikzpicture}[ + scale=1, + thick, + >=stealth'] + + \node at (4,5.5) {\verb|ends = 'symmetric'|}; + + \draw [draw=orange-red, fill=apricot] (1,0) -- (1,1.3) -- (3,3.7) -- (3,0) -- cycle; + \draw [draw=orange-red, fill=apricot] (3,0) -- (3,3.7) -- (5,4.5) -- (5,0) -- cycle; + \draw [draw=orange-red, fill=apricot] (5,0) -- (5,4.5) -- (7,3.85) -- (7,0) -- cycle; + + \draw[->] (-0.3,0) -- (8,0) coordinate[label = {right:wave}]; + \draw[->] (0,-0.3) -- (0,5) coordinate[label = {above:value}]; + \draw (0.5,0.5) parabola bend (5,4.5) (7.5,3.5); + + \draw [gray, dashed] (2,0) node[label=below:{\color{black}$\lambda_1$}]{} -- (2,2.74); + \draw [gray, dashed] (4,0) node[label=below:{\color{black}$\lambda_2$}]{} -- (4,4.3); + \draw [gray, dashed] (6,0) node[label=below:{\color{black}$\lambda_3$}]{} -- (6,4.33); + + + % ends + + \node at (15,5.5) {\verb|ends = 'inside'|}; + + \draw [draw=orange-red, fill=apricot] (13,0) -- (13,2.74) -- (14,3.7) -- (14,0) -- cycle; + \draw [draw=orange-red, fill=apricot] (14,0) -- (14,3.7) -- (16,4.5) -- (16,0) -- cycle; + \draw [draw=orange-red, fill=apricot] (16,0) -- (16,4.5) -- (17,4.33) -- (17,0) -- cycle; + + \draw[->] (10.7,0) -- (19,0) coordinate[label = {right:wave}]; + \draw[->] (11,-0.3) -- (11,5) coordinate[label = {above:value}]; + \draw (11.5,0.5) parabola bend (16,4.5) (18.5,3.5); + + \draw [gray, dashed] (13,0) node[label=below:{\color{black}$\lambda_1$}]{} -- (13,2.74); + \draw [gray, dashed] (15,0) node[label=below:{\color{black}$\lambda_2$}]{} -- (15,4.3); + \draw [gray, dashed] (17,0) node[label=below:{\color{black}$\lambda_3$}]{} -- (17,4.33); + + +\end{tikzpicture} + +\end{document} diff --git a/docs/_img/tikz/telescope.tex b/docs/_img/tikz/telescope.tex new file mode 100644 index 0000000..a38f9e6 --- /dev/null +++ b/docs/_img/tikz/telescope.tex @@ -0,0 +1,51 @@ +\documentclass{standalone} + +\usepackage{tikz} +\usetikzlibrary{calc} + +\begin{document} + +\begin{tikzpicture}[scale=1.5] + + \draw[semithick, fill=gray] (2,1.5) ellipse (0.3 and 0.5); % edge of secondary mirror + \draw[semithick, fill=white] (1.95,1.5) ellipse (0.3 and 0.5); % front of secondary mirror + + + \draw (6,1.6666) -- (8,1.5); % top hole - detector + \draw (6,1.3333) -- (8,1.5); % bot hole - detector + + \draw[semithick, fill=gray] (6,1.5) ellipse (0.9 and 1.5); % edge of primary mirror + \draw[semithick, fill=white] (5.95,1.5) ellipse (0.9 and 1.5); % front of primary mirror + \draw[semithick, fill=black] (5.95,1.5) ellipse (0.2 and 0.3333); % hole in primary mirror + + \draw (0,3) -- (6,3); % top scene - pm + \draw (5.85,3) -- (2,2); % top pm - sm + \draw (2,2) -- (6,1.6666); % top sm - hole + + \draw (0,0) -- (6,0); % bot scene - pm + \draw (5.85,0) -- (2,1); % bot pm - sm + \draw (2,1) -- (6,1.3333); % bot sm - hole + + \draw (7.8,1.2) -- (7.8,2); + \draw (7.8,2) -- (8.2,1.8); + \draw (8.2,1) -- (8.2,1.8); + \draw (8.2,1) -- (7.8,1.2); + + \draw[dashed] (0,-0.2) -- (0,3.2); + + \draw (1.5,-0.6) -- (8.65,-0.6); + \draw (1.5,-0.6) -- (1.5,-0.5); + \draw (8.65,-0.6) -- (8.65,-0.5); + \draw (5.45,-0.6) -- (5.45,-0.8); + + \node[align=center, above] at (0,3.2) {Scene}; + \node[align=center, above] at (8,3.2) {Detector}; % (8,2.1) for just above + \node[align=center, above] at (4,3.2) {Optics}; + + \node[align=center, below] at (0,-0.2) {\texttt{Spectrum()}}; + \node[align=center, below] at (8,-0.2) {\texttt{Detector()}}; % (8,0.9) for just below + \node[align=center, below] at (4.0,-0.2) {\texttt{Pupil()}}; + \node[align=center, below] at (5.45,-0.8) {\texttt{planes = [Pupil(), Detector()]}}; +\end{tikzpicture} + +\end{document} diff --git a/docs/_static/img/api/convolvable/jitter_m.png b/docs/_static/img/api/convolvable/jitter_m.png new file mode 100644 index 0000000000000000000000000000000000000000..c7845a0e21cb13c44b666e660ca467e18c5b0201 GIT binary patch literal 12424 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/api/convolvable/smear_m.png b/docs/_static/img/api/convolvable/smear_m.png new file mode 100644 index 0000000000000000000000000000000000000000..b9ddf373ef7302f07fae7e9f017169df8a2f6653 GIT binary patch literal 12124 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 CgWj$H literal 0 HcmV?d00001 diff --git a/docs/_static/img/api/convolvable/smear_px.png b/docs/_static/img/api/convolvable/smear_px.png new file mode 100644 index 0000000000000000000000000000000000000000..3bc0f84b45655a5b1a37d5ee8a21de17788b4208 GIT binary patch literal 16542 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/api/detector/cosmic_ray.png b/docs/_static/img/api/detector/cosmic_ray.png new file mode 100644 index 0000000000000000000000000000000000000000..643e666c40fe2574993b6c019dc64b918bf29096 GIT binary patch literal 9641 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 x->5avYFBV1Ox#=5k-oi(mRM0sS(5q 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/api/radiometry/spectrum_bin.png b/docs/_static/img/api/radiometry/spectrum_bin.png new file mode 100644 index 0000000000000000000000000000000000000000..e44c960388343dfa468a458deb5d15f739a7c254 GIT binary patch literal 56535 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%0Dx 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/api/zernike/zernike_compose_1.png b/docs/_static/img/api/zernike/zernike_compose_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e6c8b86c845fc29309c4966c7a58a78f510279e4 GIT binary patch literal 46726 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%0DnUK88_~p%bd-M*@n=X)5Pi9 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

gxd;;Dk&#~l;xb^mQ1|c+WzEwkF&Gi( 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 Ziu-=5=m_iJn}Z*2=^N>lU9*4k{{c3{$DRNH literal 0 HcmV?d00001 diff --git a/docs/_static/img/diffraction_geometry.png b/docs/_static/img/diffraction_geometry.png new file mode 100644 index 0000000000000000000000000000000000000000..607fcc34afb73f3e1956f2a92f3ec89e0a759011 GIT binary patch literal 42912 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 Nfv2mV%Q~loCIEPzT_*ql literal 0 HcmV?d00001 diff --git a/docs/_static/img/fpa_raw_frame_pipeline.png b/docs/_static/img/fpa_raw_frame_pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..ade48f04e4d326f5b12dabe958a0ddc84accc252 GIT binary patch literal 52294 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/fraunhofer_diffraction_geometry.png b/docs/_static/img/fraunhofer_diffraction_geometry.png new file mode 100644 index 0000000000000000000000000000000000000000..db05ada11259e6b52fc29a258da22773282bdd14 GIT binary patch literal 19972 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/fresnel_diffraction_geometry.png b/docs/_static/img/fresnel_diffraction_geometry.png new file mode 100644 index 0000000000000000000000000000000000000000..5428c6ac06410afe2e37d87b81c13e33e48ffaeb GIT binary patch literal 15339 zcmdtJcT|&I^EMi!i3o^-AP86@7(@_h(#@lYk*W!TbU`|ZfYi{$R}oOqAYGbhfY1b_ z1_+3Nbdlags-fhegpxq`Hj?K%&-?q)@zV!2|!cEinOqI=@jh5xqrtEsvvP#@TgJk4vk0RMmwKD*d zZ&F4a_RQ&2Bq`1M>m2}Q{Xh6OZ>ik8i0BYi99lL4)BL8dW0Jf22P2z+p6?ejiv>|- z-YUl-kl?W^Z%5;Y!miPP)Qp!3UfQ#AvJm`UYsp?<=`Gx!AlO^KqkV$`f)eUn^6ksi z3`%J#WL{$b?$lHyh&t{Mx%ztsTJ~Y{?~?6Rm0|W?BwJ*z^J9q9d%yB=uO@2-NMHRj z&+x&?vUZP}5*Kz$YiB#}C*JS()|tPr+~5ESZG1>LhacuBEuM4|K-(T#Uk5z*?49#7MeNel~lLsN6{<6F#BZvB{PRff)4G zZ#Hr<=i*Y5T&M?(ly&sX{Gbh)+E^K8h%Ky4aXpEpTEJYg;Xp1gGVTDx45r6D;F>gf z-K$LToh~GoC4=rb$~FQu`h!GS@LQ za|KmV;KFJDCT%D+TZF9rYrCe4q4QQrA5QBPP2U52;S5TqEeMJi;`2{yhS@>e1p7K3uH4{M9RbwMx&9 zbpJ_{fdANRr0^;;hnnc&NCfP-hb(?pdsL|@AbQHQQc-bD8Mz&pI$r0&2x+g7Y}UHd zcExn*mG~qP$1^POQByzDgX;nOHK=kgV+8s$Od?(y<#G1So?U&0 zr?ae(A*8Ts_nMrPx~$)b9(2%gv+xOrL3KPScW@{2Nc_MYYpq%ChgTWi+s9;VZdlzEHrz3vJmc-lZLG2V-EmCW;0R4n5rhRc>z z`k#7Q@Qufcp1-Tik#qI12m|B%;Qm_9bYCO*|W1XSc&3PUfHpbi@99A+} zQ*K5yAi#vx`T!)>LjoP;ub5$@CzwB}DT6lom3eoq3WB(+;Q3pH77Y!G9%Qex zaP`%OTn#dPJC%`8ebLPjqvY`Hb< zI19Pj+gdzOdVM%kzIMp{N$J+YOB&h<o3i-hDfzg9x-&-xeP zp!oB&m)RGT|G3RYJHWf2F+GThH$V&v30C^bQ*uz8qOHvU@q7VuJce3}i9Y}#9zn|f zrQfA#bqJDmO}mR9t}*@s21(=Df}vfDSR&^;vF z^W6Rp@{XW#&q^~xdQM~QU!_@%(rwLQ;+?;~zcFL6EF(VpZrI=rN=J~8t3p=c9S6lL zMfY_iA4NSz>1Oe26aWq@mx1Ww#=}kC3E%0+KVb zFzga_s9&6f5>KJ6ut+yl9!1IO?C-@7SPI>D&72Ti1G&GK_i;?T zI&>e59Yyuf{a7uU1&;eqB>3s+7fS5U<7a|5T&DZr5)*I4(S1YV+$f2^_JvtA^`)ig z!ccgF3SIaU6EBsUE_@8tc4ptvPsOt0_qGSZO+F;e>gfKw0sfG1H~PumX5uxl3OBeC z`#`KY8#*i$#T?vw6zO~tu7S`lJT#1WD7>@#hR2P$_EH#39+P&48=2ejrciyntNA>{ zNKU$;@hIvA?Cx*->0Q!IcN0TK21}c-Jc2s%5R1F>L(Q3=iDX8k5)6 z-wYMIa~*l-Ki%ya!(|v1{7UiUMDK+VM~@e~))d?Q- zM_p(Iz>BmL{s5_pzb{{?K9eQ?H2%GdjsBoA^QFU9;fTo0_+ZDO^qpz>s}&nW?P+xA zh28P_R@})2KS=J#G0b)=(C={`A4&x?z6Y_M!Ippb3QzM}SKENS((EsRaWYn2R2?@z zf~w!RfS}#oVwKilZ>dI>*^@29m3?%td~biNNKwmM*AD^9Bc2oNu1TDZGF+j=b4g*Nxc_k_g@A&{Je+IMyoowI}W5&6NRYs>|GR zOM-7>l#^P*nfKsV!>}uR zxyZl@w;`#u(g6*6Hx(DHGEi$BE3?|BwC+nt@O>z_Q|0jy^8EfC?dg?Psi3HMVs%7x zl~S`N^5pc2*oDBFSA)tiSEgLgOTNfvWaS+3Zax=h>bEr=r{HPNzliq7h=>H3VXP?B zpwaKvNeQgMID|BLOH-ZF6;;0WLu52 zQI3dn0WKJCu?m^yB#cV_N_9}m)UM0l6>V*dS1+H#)=+W?ltf@bn8?yYBZ=QdJa1MC zc}{!UOruk8uGFxk&ii1HgVnSL4$7;^>YnzG31cG5XR;_xAeYZ+NLA+G?-!;suZeK|AxiI^OkGaMnAyWkHI~yKz>cV^T?v2nru7 z!tx?trOe(8Kk+mN_e9R=a`-V=NBz>ye|Xm?*SjarU?~gBhM?XmvdW#Jo6d9SfqOuIuX+M zdNXFKc3&ZA*t%K5#fJ4SLNHre`&_5kop%`lPT|)moS82&-AjMg!#H_W47V!AJib{F z-b$0bTLizNq;{eZW0z(FcFUkarC@=gZ*3}}cL7C9G-&L(P~-D7o|wS}^@U?rJw`TU z9K1-VJ50tWu9szQLN<-U)ITxVO>ER!_+mI z9N}+F5p8WACRhu8{$TPM?DOdz*n6Ua3|g-jEo0$xk@&#YmGN!p8pp3sHTM?MiLBCc z+G3dPsh6Z6iG~Hm97|i_;C3)A`z5YZZ;PfIo@VuIA>BC0%CTJX)(TmsW;ZI@|2}i4 zNk>~WPw1jShW(`N48s7#%5k7ZzQHro>&|w5PN0}7!TzDhz_pUGuRV_pGI2Xkc?>U! z^sg;OK36N zW*LI!uhD6d!Y8LD)0xd97G5d{zrMv1uk)sA ztw>d#7_#L?%_Foq`ai^1+O1U|8+?Vcu$bTn0e;CJm>=jj_<>6g7LD^o~$X5#WtXTLkjGDO$D{|^Z2CYOjp06et&&C%wVYw9L1j*ymc>4BuJ6Zmk?&vEi1&vL`^5{S4RU zNQyW12*H_vNu`)7DXT+!m9T#ODL2wdPv28ho5Qfe9WS~!%ngQ%pu12j$3-^W!xz~T zxcm`NhjYMDE!x0z1+NH7m#i}xP=Wnm^&zmNjyCyanqyqNfTT3@Rgh~xg=GsLMJ)nF z01ntcjTexY?nQ>+guvQBk;@Tey(rdCTR$)5-!oE

lw4|1a|)Oua;~`u{dx;2^w2 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/pixel_mtf.png b/docs/_static/img/pixel_mtf.png new file mode 100644 index 0000000000000000000000000000000000000000..606e2558f4473d1445dde3d502311e0d7fddcc76 GIT binary patch literal 117759 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®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

|GR2UmlW%Q2GN!}YOZ2-~DR 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 NeNkQEoxHK{{{iKNyX*h} literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_fourier_period.png b/docs/_static/img/propagate_fourier_period.png new file mode 100644 index 0000000000000000000000000000000000000000..b8df6b6c4d7f54f688451e2e7a1aafbc211af2ec GIT binary patch literal 66774 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

(vJ2-smX1nVw$dx0g=j*oQ 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 O1cKBv24R5?fBzS64WN?% literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_npix.png b/docs/_static/img/propagate_npix.png new file mode 100644 index 0000000000000000000000000000000000000000..68878f79e4a5d941bb9c51ba6805a4ef0a293d11 GIT binary patch literal 47755 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_npix_chip.png b/docs/_static/img/propagate_npix_chip.png new file mode 100644 index 0000000000000000000000000000000000000000..4d2e1016282cfb7dd6f87a3c19999d1fdfe429f6 GIT binary patch literal 53929 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 KRdVOy)BgcHt98Ku literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_npix_small.png b/docs/_static/img/propagate_npix_small.png new file mode 100644 index 0000000000000000000000000000000000000000..c6f98ec285e81ee25d53b678e73edb7d26d2533a GIT binary patch literal 47555 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_sampling.png b/docs/_static/img/propagate_sampling.png new file mode 100644 index 0000000000000000000000000000000000000000..dc84926caf4b4078bbee439c302600e3d582a18d GIT binary patch literal 38983 zcma&OcOaGT|37}(!#vrU9ThUm&Z-RSaqjEB?(4p;=Xg9H&*$^JR#TBDyL|OB3DYwz{ zE*&ebh;&%3D0ZkEA3ZKF7+=HN1Zj>v-ofb>j9>0Yoa4FwR`KFA?SqTguLZt(^-J*4 zy!66}m?yb+{FUMaSIeHd)TnmJj%1~tg@dD1llj~0d#RglXfy(>BJsoPj`0Wqu&jXe z8T0F>zz6Vg_d)Ij;wM;Zg1MQiprBx!g@whcKqiSh(+uIqf4xRjI>BjeSp6$zRHKN`qMN$sSZrtanG2#1m}ir8(;eNTI=s3=&D z5wz^$+(6Zjb*(Mmh|}NrG&g4sCh*Pz2s}yGygu$kfyWz`$TDV5l9~N7a%74ze8nsAocG{wjN62o`Cin8yRRV>cnTRsF023%gqIH zZfTIM)7l8z$jv=URR)&@&OqxdDP1W0s7&^2h}1-8(D&A;bwz=kc_do$o8Tod#`2M6 z)+tzkGQ*krbBO-Cuf~1kkrl5M;)L1_v_roH&t?x}K){ zE0Htnmw8LZX#0ljN4G1<#zI~z*f2286%YeaX|Z)mBMMs7J%TJi7A z)z6rRTW*opDC;Kw>@JjR#A;JqISZXhkCQSuV@lgKaJTn~^(bvM=flSB%?I`}>#faw z^^XobGH9pX2>kNbV+`tG2(u*>q-O13!==pp?Paw5Q*Yxb30{AOI-SKBj=?4U8W|Dq zT6L$`^pqS4yvNqEzGD^IG99bN8Jj*qEhoP1FGPLW!dj3wD?L3ux2R|}GBT3fO(aAt zMWwN2`cHuj$Bi3gVoZ_7j~_oytC12HA4y70orp_FSnB!y-FabQVaK`dRO>0RtkcWT?)PB8CiWlzlB@<+2trtTOW8S4VKuNNA;lo zwpp7Jy^P->lVHuegaq+#OE2aVG*uUz#J;$?x>}iAS{fQdwuwBH9rvt~xY(D;URzr$zqP#`x#cO@;wwEVkk%VVb@A+% zBR_u?0s5zBYRg>n^t80Hk2PLIc55Z8HeYezm+TJkwTWcxHso!K=>!FGMWI0&zbD=!JWkHdm+)(11-+7X) zR!aQ0O~UN_^XXrS1CkC&(`DlxDx02W!=ldUQAm-(lPU3USfpyiI5;?ZBeHW@hf-7) zs*;nFCAwB>TBbXCySnt_qoZ$wtt!Fg7Nrx8SFc_TDblZYN!{0XsU43?Qs2COS#FLm+$M?3 z;-bxxi6f3ng+fa6Bgg3ElHl-svgy1o52JIUnqWU#@FMID(JapVx|BY#y*d^*KR3rC znyH8Aot8>D-pRS^D>{^-tiZAG#}iV; z+r@boa=+{N``aihE2~>sEeK(7dUHDmIp>3#AIS61qHldM$#2SzKy%3p z@!*xj6knkf6w1rX>4b!ZyH}Q%lcqQK_(;wNY4qG^QdChPzYx@XYxPVvN`ey+N?Lg> zrP@8@Fo)#)h4hd>JWs20NYYh16_>jy8q{(OnVdhkJU((hE}mRZE11A)cmsrCfh#sJ z$ji&~?jIQN00`tMEe(xkB>nBLWdoDZ@rX0^%f+>8zHqNsIkNgcRo^qGry%mvUV4iJ zP9SCD>7sHbfT@S&$mNED}J*Dg8SAXM`^{qo;5za~wtdM1;3f#mqjI>S0nhWjp`n3aL|B;X z`}gnOf_LszL@V%KBfBs71*(R z`q!{QysuhJxVX8KYHV@EdUb~Db;bgo-x;zV#woN9c~6y4VRB>Ga~3nlyao!+Ahhh9o*nU+UR3UF_Tua=GL=yrIN(r$f{ zuW&FnzGslI)9Fxo(0PG^Wd%TUeqK(_XMzCohJm*+KK+LE{QZwsioMq9$@_^?O5VP? zgDN?`-6ftO&rK#|N9|wHE{;?Gr3Z^>a=%ER+|@ou1eY|yiR zJ=g5)?CLiEOt+*kFfbJGRZYEoUuxN%ue24YL=6N_X!us8C#COogM#eVD;0AFc_KGl$83q+}uS~ z;1_n2G{a3OpoKj9n4@QQarNfaiuV4(Iygu5q=mX3Sc$RgD^$s^=AaAmgIMgZJ{-XivYO#1IzJRjdP9%Xee%IXxloi zSM-D$_gw;kXdH0(&BXgWXNeEzfVbEFn~&AnXz zDCXwTXRsrbLG+DaS=Jjm=TVfuj^CZrFGy#>AAM9;(CAu$UT*o?3j}vJwov$6okvGUJL?nm z2MvjdiRBtOD!x`AI%axHfBz$qgW!iwyrd&4_s5qDaCo(% zVgaB!`)6`;-xk1$o(an^Pc!%5FYocAl`pvZwE;Wm>Yq1$tU|KmAefpsHar~9h2Uou zcQK#LRnIg`1N(M2XCUuSvH-=u8I!N3v-FHGyz&Y~&dHSj$%=}8NVcZXxJ$K7BgkxpCu$ot=vSJx~AF`bme;vZbr!&$s@Y zG2t4vg#kzm7pu>o<^}29sUQnLMi|L_U#Vjr$WcAXVLe)u_os3{d0?Ye3GxOF-!aGHpcN8?4!KAyl!9ccn<%!+=SUJy<{y;YL{Z8Mn83V z`F2sD4T~|7exbAhJl=EB@_cmB%M6;WrGmz$PVkhcMQjW{w(pC?@9=7f5V7tE}dHWZ;>O=BC$a0IO=vLy!nNM zgm|PMebnYa7+rz8X-zyiEp;6x{OceP)h)GpH`-4&F6GRbGamLMUo7%aMUN`SQrf6y zy8fH18tmq!(Xp{o?ZRh&SHS`+!PCp(jncOeQDGgQ5F01R>s^c2n#-(nW(*Ms#fZQP zV9oL6H?@m&32Xa=Wykr~&ZvJH;=;G_hMf9!`36V(pmH8R`4e)G*#Pt!#E<6cI* zL+d=ghp?fJ#-KZR;CoHOCr)CL`JX=hZdZ)s^L6V@m5T9nPyTg$bRhqKtD8+ky-ktu zFx1u7-gyed%D)q_iKOq!_L!q%yr^R;7aht&jA;Z!&oWHptU{Z^ zK=^3#glXh%+gBtE;rgbXs)h;^Z{-Y#KT?milv9`FIH<=hyA?nCY^nqlj8jhh?-$SD z;NZ1`wc7P2Y@UX9?-#oYw9-%7K7j#JxO$qR@6914y6C)7e52(P+luEnFU4046}Fo%v}Ya5POYpnv*#9+Bi0RM5__1Sf* zaMw0aTXZNTvPLD1fK+%*#c{mDTls4vkfFY(yE`R1A)&gYx_VDeP=4<#3ICxp2ynuI z+{gpsaa$O8n_@sCSb=}8O1Q5y0w{$15;(_)1*TVeN(P?2FR?3B3y4^D94ofOq-4UGT zXg5!b+#D}l=LH`Du!oykKqAfk{ZHygZC9K}Mn-;bF7*0a%(T9?kM{RyK1b)%y|AeX z!puZ>eGpfdK8#{HnhYgp-cMv8+~VeLcN{L6){#>WG4MYk6l5zWX_-DW7_V}k^)t~j z(sZo*+ZH9o(o4F^2XS<;fNO4Fmnt19Yipr!IO1AQS63YyJG)s^A*u#M!25&udb?_D zi~vtrurm2${}Cv-U{;zk5D7c}aaT52H(=Et9tP_N)6n9u2N4!itX{ zyU3Y0{dP&Xd!{ri%lsZPvAa<3i3?BEAKjnYZX%|NrwN4I@4lL8EytU=dB@{Nh&$Ry z+VBp$BRXGSU+u%+{Qg|uySoj1TF6A}-h-2u6l0Y_z3}Ix#tUt_nGTnjw178fzLS|< z!P$0_!})mojp#&``$U~r5+HJwe3h9*9g?|x2hRoFFP4EQdp4VAoa}*+imGdAZHLC3 zMd96=i?6`r&@XQ6i=C1+4@c{BAtvvn(iR)a7Z(&Pr+wfzI_?ApNk!pRv-I~{l^0Au z>Oe+~5_ges<(`3o!8BmG4Q*^~4+8Hhw*547b04EZxCEnPq50G)`&CHNvQzxL^w}t@ z3cq~W=pHQ4_7~r{>f`S6?p~DKZD=avi0DL z!9+<8R>&h8coB_v_}-mvqFxW{2nDW`fAL&U^VF8n;S8Myf9=YhlezCPIG|uvCykH( z8Hm1bN>YrYfWJR{!zkKdU}TiW+E+`1xMP6y10$Yg%OV>%5tRkuwTo{qhPFHcAgIo2 zZ{s&Vv!tifQ%P2q(?tFmE&V`>acOy3(crV`HyKvoalQe2*Z)(HfH*RuiXKB|arL!d zLc{%OqZtqzA3lpi_|D5~Z(YRUm#4iX3+KOS1TLhfD(4nFFE*@4Jp$@*)W!mm1M8I0 z38O2Lu+MS^_WQ1QUckxaR4S>*CIc;{gER-}4~U97Cc*zEp-4|9D>SIxE|&7%KD#%=V zAU<4;Khn*^!|HHJ)qmf_+xuV#L~Wv5St`ilYT%A`tjx_{QTZkZcnSa)*kA?b4@GQb zIm_7y7h(zv54$0s5jp7a&zlGAT_nsr1rLz(2UaZ3Q!;f7f%=n;rVj5ILb9^6O*}7{ zI7TApZKn@!0~AwMR(AMIiWxWiH>>qY*&!U=btQU|u{J$5vexDI4x z57e;1^jlaQzyS@^eKQ`&IV!x>3V4mC?8jvT&J;`I8q_x`0f#&nL?OMaR8|A*mg}@} zBavciK<>`#qx4-~)Oqmz}70sLgz?m*h{ z)(ddPcs25SW@cu`fY$RX^*z{Ti2iTBfZ=<&bhD5wtpcbpc`^7wn~tEooOwFBE_QMD z%=Nb_aCN#iuZdv`fH)8Eg9S!X08@9QUkw`_9o++)4dRjy^g&Yp2{ZF|rtsl%kjJ`E zQ&YndbWZ2IGWAOIDq@2hF79sM4XC$~54?JQ;{yYmyIV^Gw!I$D zP~P5y{AAbxpHi%`DpH?|i_7r;CVqvw-LbyIQDj)Z{~fTb-U!{DY_yMZN^;Di+1cx2 zZkoSr;5s)EvxDhC+30dh!BpO9i2$UwxiYi3wWUq2H$G{^ob$%y<{TEtP!WOLJ-ex` zG5UeNzG%Yn!FuD1clXv05F6*fBNJ0b^KnUAWcd7HKw10!#Q?$cUAU_Na6&j@l95{O zyBf8{GZmGd<$s`tlJO$J6peD;r;s`P;|3^C+|OGWw2u}tRb568k}t9Q1?XR#h(()-FWR*T>P(agOeCJD?!^rp?2xAX5kHlFy}M2T+A?0z?~(&Bi4i zKM{m82ZYf)cbL;1n?EOBaIeu_iOR8~sW2LDzs0|vPkLTpD;&mA79fIsUNX6i8)hGd z(mzCz39uilFfi2ABq$ORpM?yqP(^zoo_r`db7o2@uhi3@6Jex|>;8GtHv5+cDDz-A zNIWK3eMuV{8oHpeL;v!hsUmxYq8+RA+8iVh2;qY?H^_L^`Ca_qps^ftA7NtJipV)~ z_|m|Mp;U@L!0;HrMP1){dQh03pSTF99r2hN^3ayC{(hH%k<w}L0vf&yc{nb@c zm~7F5q}AHT$eVcweK%>4VgPeP$Rdr4PiAT=q@(xS5AJqaYZV5tH z3}EWya{#c&i4*tyGbIbZ5d^pr?wd;Sf94|?1j(K5K@+lVQ{ofs2>3w?cMlJltLmC5 zpLgn3B`BKg3B1(l^w1jds5_4A3 z&)Ls~wZl5diNK5u0J9OqMh4oad#*t`pLyWgx-B4gM}het@Lva{@h3-sa`3fB+hcT) zX&gwG4So0U&DC-**(bf9!442>0YI{v`=&~=XTR+l*(WG1^L5%ObZk}R_tC?+xVW8l zW@hFSQ>}V!BVU39px>^n7VqEnuhc1rPJDP0Br=LBCu-IcZHujMXX2n#*U}5xkO%2D zg7V^ATzO(lrvW87o1-go+IaHz@=Zo#4$ojW^5HO`XC zCf|Ka&OH3J@VATx%dif+m@^!GHX>mPwXcPXR+izbmLI6$2^hou{<#LjZ03R7t-)o& z&7&17nc57%%c@O&NKR(D#mVV3;XY=5jwbi@1in4lax3qM0jYC-M z){B2B`bx*iV+>qy>nmd827J$6X!%2IEDud|jsahswO|dPlEcaqv;92Fb1^mopFwtk zSD+wU%j30HCAKwDYuhca^S7>zX}3O{%dJ}fo8=%D-;g`_#?nYb4$wO;p$*pnn=EPa z_0@&0I`;`+t649fJuMIDASJKHKA@D|ULeF_w%T6YtbDQ5j{`xLoxS{juMrzF9l=Mq zih>8G)}ZF-GMN`oH9gvun=^!qvt)ZovRDDP-pkF+%^_$EDFUU;MM8#x!EX^$^@tMp z`f5>ooDS^ojN?lwIdzvoV@!6oC6hcH8aZ<&-7ppcE2$t=t8nlchuU*KhaF^a*9Od5d8hYUOkLhi|?M zu;C}5kOE~5bGw~ZggSYU{&No0M$}=)#*%u}p%n)VBXdQOkRvF@VEpf^#|pKu3s zG5bXWc4g26zL&M%pS|O6Y&?|;ku~qF&O$e~(mtr)oZ2~v0XernF~$PV%!fN4!uMXH zbn>f~DPd^fZzSaAcJr$M2{ZYu(qY^_f{b_{Ik>L`MZj|$`JL#uuxwGZoN>l6z;?Y8jjh;(l007PFYslnj)K5F8@j#P^_nAh)=}Kmk@V@fhy)&@niJlO1?`zg7aVIEZck zA_1{QAbir&);@Wr9{Zxjk%cDuNBna(SnCJY{Fo#H?cULGHAE-Ii9LkYLuv2|1(ybC ziuRyp<7kuRB*ex;B_VQ{sj339fepco>I6H%I?~{KKpIH{-GBt)RWsli=0SRL(sB4H zpyDd)Okk8_iE?xIWl3VdNvEyi@jvFOAhU7r1ts1Zlw!Oa1Ei^Ai1K~-9uKbXOn~49 z$1HvdgfJ_hAfoZx&wpdZNV(~L{6FVsRtQQ3iU*c>K-zuKl4T4KJu^;X`bC^!xT+%% z`o|mU=_O$%8==^4t$t_XNcO4L`1*DD$Q|T?godjel6jJa%61;zfjzraaF@io0&OP% zx%cRrZZk?Q3GPbWYs+MaFE*U+^E(GAy^@<<1mLP$2=*ZU z$lAxNd}&e4Kd*)W(UgB_{7Ec@{I+mMha2kbo_h{4h}tiYkXAEwcYuUVQ4yj z_eQD^gW*rPWAWpzAPT@yDPAe5qZ(kfwY!;qt7ks+ZLF-^Q3eD{wxb?EtZpDdja%Ls z06FAez~36tME{|DU;h9p&5ux}=sWJgk{~u*;UiY2-CUzwov(l5ZX-6>N%r%Hd{mJ? zh_8f8WGW$}iZ*)o6UR|zX5(&TMW$&4I3tUpLLE8i+#RXq)X&K3)Vx@#0_0j64K3|9 zK8g_lsrq!a+@hSE_ShZ9aZoptleCu#*0Jfk8cq~kdKXY^2eyM3B!Pu3NjE{YT_`AF zAS7z4YOASDIoFO8?CtIG!XLAMCvyU6fVTHn4?r?Dr*Si79ZRO!{qEg6eZpo+=kL+m zPY)zpYVd{SzLrD0TwKv-@wS!wKA%5gQV=d|f&03SE=GeV7#5QKQA>5BBUyco@wmHG z>t1`iLcfwdCVh8~A@(ngaA9tKzT!gA{ecO`7n$-=pR|E`RBmav;Dn(C`@o) zpExp*Q;(o?_1D*9I|Fla@VkXrCNysC`G`WS_cb%9oCYS#kuF=`-`_6*vMz%m${^Z{ zqZPRXTe(;NqB%}3%V=E@lrw5{cXzXk)j;C~gszBSZSCy3K*)1aVG@JdpO+=xkY$KW z?LPno4QmzlV+}2Es7N#*J-Q@)B9d7m^$GQjv64qeB_rl0F|Z~FT1IUpP|T5bxR@DL zyub&TG;TQAAB!xq7tBYJkX1Sv&8fltVi{0Fp68Nke-V4 z{3dAz;#kv%$}n z2csjq(OT5sJ_DBrWt<*hnusE@z-}U~7TjVYZ(uMU6XtTrqbGOpmZ7Y|0``{j2Xbx! zB|q-46AuC<|1eo1jkR#oxkktcmF)qxgNgHhyL0MR`R9xz!3} z9Hv%oAaijO6RG2UeSdTPCIR{Sx?`u%o(6V3nFYRQRX-4xLCVk1?;o234TmMyzq&{O z96t+)*4POLpfX7Y9?fT~cMf)GNfabPLboC*NJ)RyLvfNM(XdUe3`=9jYCYCpL2S_C z4&XRe{QyTaQBk1@ds`Cgy;f}%+%o->-w9t>P~iPChv+ktna4s=2RrL0*`Lz@8b1jH z0ai(Q(dmFzO?~}ecN~6Ix$VQwo(`M=faq6;286<3J;_C~^}r>l?)o&?k|p^;D9n%~ z=`4&g`T~pRR20JHkgy9>Fv?3ZmAVZQB3Ms^y=*;5qJosl{s)s7ZRGLb*PEwcLbGje zT*Es`_m9*#h1N2oq-&!7La!enXf~$i2%J(S2;2}Y*>uRPW@x<1*1NxM)wQ(;fVQ=7 zp=XDt7L(EoLE*XdL4-LeV0ZTxqE~15I;?5(iItknCr3?ci(N>VTg9Mxo0dlIV8;Lu zsRyZopCwE3ZMLGPV5V*Ba#{M0N=8PL3lLZnhbj(XPBs-J1VEtN0R?!Cro&J95g0va z;wftQUh%P>oO(Y1%qOXTiNI8&)F8LgZF%Sd$U!NzWV52tlf?Dfm!k^@S^Fj@{d+;K zr2UR1G_!!1UN8!OZU~SgjmE=e@<=~hAek_$`PvZq8|!10>#X#m&^Y?!q6hV1VPU-> zA7VeeB?Z4kTtLDI52ABR9wnJ72NJlm^hBpGCO-BGh3An1R78Nu0Qu|%BYGq9PK?T!%?$c_dx5vSPI14S}e8pniB7hn}mU+wAv zkNo8dA9QE(s}`{&dk~LeCR{psm%He5S5{W6mzI`r<&~8uhdw*yb|YWLmY0{KLQ%xT zo;-_}`6?U5Nig~_2`!Z7I9}=mAd(@n!NOE|kOYwtxh_p*s{)V4a3~nHqdTIIbGA2! zsEg*k5lw ze@B};2Hfl-s9iZ~2mHT#ieq12rhFrIbaX#zp*BsBu)mD)Z)|Kld9pfYaqvP-B?M<_Ji22V|clGxA@A_;53&RYol`G)@kkl{yXBj7}43WjGbE-Gd zP-fRj+O79V16t`ybdGXiUShtl=i2ShmXTVb@cqO*skE*&+t2$?>7xI6Y5BC76IY=u zv_kqh-+CqFO}(Eu{qW<)d`xqx>UJl;|6XSg@GWLC++pvYg4`MQcbt)-M}r(FbS&BQ z?GV1tBW7=41g4%*T&Yp(M0C&m7t)BUokpQ~(FY3|N-C7>XER5b6u+ z>yHjXl#OVkPZ(DIf+QJ$$|ga&T*XJN#}G{~wS8}Mm=))6kR;kR)EaDzOq zQ@FV>QP+Urb^@ND>k<~4CrC>eL7l-F`5)N>v$eLFC*i%l@*5Poc_jBr_q6qYQZynt zdm82RU5Q9&$=)i)r{L~W zFj8hhKc!6H4&ZM#fpK*(^+GiOFTU|tX20Xj6;WWW~DZv`o&>@qXlx_@VQWMmIE zON9Nb;bUqTQ0n6vQhN=)mq46Sir{kj#=arQQ(!?JQzt?YQkYijTpY-F^w0kNWjefd z0WNL_P1u*-^L2aC8{n*Crdd*Goby%uDkwSPgFh0sL-l=~hru#(WRb^d4IaRQPJz11 zOnOIX+-ttI2ax@IQ9GV?$8Pi{B8k`T3XH8LB2L?B4Ok3^Hb|)NWrWwN0p{M$5X8=A z!&_m{0+Evr@I3`gKMuFU)i{~fS_RpC1#@RQJOFFHqfV8;{#co~!eH~e)rL2i$m#6H zYY4h+kPp3w2rp1mt&e=yyO88Kyd{IUV+_5JkA&1C}5XAt6heC@B$#!8SE*jTV_Q{rWQfrdyn$r@ckb+{D^iTi@>K_=E0P=d~k; zHC=6Q{Hfl!sNVQzS_~SafOLlA0hOEWT|W^VqU^6G3YpFTVLy!TXICXa9;`AE1?yf(!0NmQRyuPmb8!9PN!S(Tu22-nOG1^}0E#*0g-`234=x`+9LF^>{pf znSFG(hl_#+)J;44nE&gu^ph^vR5#Pc7OMYuP z1$)f_IWEHkpN2h_D30I-qNhhvmZlr3szy2AXt9Kk*g%5#**b6H7SMc;^$Dr)S%}(T zgNv1gzhQMsF?w6L7K7(1C;-IksBLS&wxl$_Un8iZqEh9#d_L$A-Y+aXoMO^@y}q1d z%*w@OL$le~sZ=LLzs}Ry8B}XWx@)JXgChHX6lvPuEiG#YhlyX~S%S^Edm!D)TheQyhytQTxj#0z->KbHi)F;%b`eW0erepj+=VFP@4$~#=rmgadl*1 zz|}4~0yz5YloemO_i=F^BgT#4=PSpg9v);60b+>0d9FuEdb&vxLyIKn6nOOL5!YQE z0RQgHUJhv}(yMGJ0l4Q{f{yl+C;hyLBm+KNbNcWk!_d)mgeX0wHoqH{;^D`>HaTNYMm1%fJjX@F7 zXYcB|DH#dLG^{qfS`CwzXKfCulz@X-A1H;vDza05)GDqUgDkB+IT39UM^#jaY_ts9 zgeRVcp;_DM4*nb*xk|FAUT%j1gn*Q9`nkBVFPyj)Pn*mtg@8_4~9LlS?ZrbJY6KYAR?o(hUJORt2a4fd1Nu(}c<+ zMHY()o|4*5E6|`}9i?Cth*Vt>B1NUST%Zw7BfnCN@}koE>ZCUPTVz;IrGi7^_&M+#*oX8(3s5{sdRHM?Fx>kwoYah8&THI3+EWTZhO0q7OD zUHO9u8%cxX_eutEIMEiTom@0l4;aRKKBHNcy6UkJz}kFgl80W%omwy*G#S)(IeBbC z+tOrQL0?%}Ufyk-1zjFiS9*m4^>=wdZ^BHdK%vK!{tI-6-_iQ{^XLCHjtxHnLx7W! zL%cH`F8fVQaRD~<^vBjDAcQ)W%ZVtQw-v-#ph2kHNgEzrL@ROuMmZU2q|FbC|JK*m zdZs*y`<4`c5r~Up^t8hpbQNUq*&6Ic%O=zTiQoDcvNpz|x8Zm&ZC*&N1drWi7~AnG zb#%!@IB168V$y(?>u%STTplcEz)_#4W%jR!BLl1 zR#~ZPJ_lVMe*HV$P=H>@?XjYCDYYYs6x) zb)e-Wy3HOG_-{Zdm%ihv_k0LCkO@IncU`(HcO6vLw60LRPe9zs27K69YogheTns*V zXMlInwqif|PId8nUuFxJ@oBtb>^Wa%2X&(uaHSYMCttg^)38&&4ScAX4Cwg^M`raF z?ucoEMgSW&N`V34b6Z@_BRkZNVnc0g7Ke zMP-|h38&NfsZEGCw7ze&$-B6Gc2#(H`#J629EXfJ9?*Vww_U}UdO)8R7pODxy_+cf z1^~jFOwvBXg)Y!;UFib3F_3NlU~X>CBWiZBEs9lU;b*$+q^5stlDi;0c3@P;p@a}0F`I+~$v#?JVXAaY`&Y%dP8!03J#zep?)Vd8 z4)7CSoNXTTCJoq^4IqOAJeLFyfc1sUFRJzX$f;zmAuRS&Ku&oAoK$Fr{$>^Ui~~Il zIz*YcPOFH?1Nq7K7FBw-CP3P^U7Ln8K^xumNMiXDQ9n@AAOdOoSGhSC^LlwSyWneh5a%M=~)0P6I%|&=tW#SOC5A zVSO;M-!mZP87-a})JvJS-h2Q|jT$?#iPTsT+%-Nv&W;d)8XH4EeJiw=dS7_3%d4xx zJ=o2>n4J}IpmQX`_)lj712Qu+*~5c~29BJEgaEpqoLa`&E9jMB_X@?Qk3JO@@usmu zYTg8027p1JWn4=y;wFr3DEZGZfXQ@TQrgfX(280iDDjZmWE2Su9YQr>1RMcNCIs7w zcb*QsS267n&ijxGG&kNwUeB%MqP&RY>xZU>Ie-76*1NvLXoWBTw(#c^Y^Le&PW(N# zrhg$%g|SX99qD;NG7m@(`&L5Y4)Fj2j74!gi_Qn)+`Br4%T{gcBztqiAbTj8$Zfj z*g0Ugdb~AeDs&3=xg)a@R95mtLY*7Lg^+}{e1|8UChjiJ2E%CVS2$#2jW2w7g-TcB z+}Pp(omepRhuJvKsVzO|E_XOdI!h^VE`2Y)9z=|-s+g5QuiYx4_yA-VBXTCm|L~lK zA=T5IafTSt_sx(`rCjIv_X^;1vP6MOW4Fk!-(b1`Yv3LF8SKH=u)ln?mUu$@JpgsL z-M*SC0YgjUM4VYlr4gc3!QV`TtU=`i$Bk~$$-2!^TZ|O-Dj$zgLmlwmg$hUF5)!rR zdkbkNMpU7zwD1v1ujwsLZt7@j#D+G|eh2DkW<a1LhFxbdE&=jtLJT^8}?lWZHFI#ZN0)R!=@VAXI4ZAD}68rwl z!ZuH_bk@3co`370YB+0;IM4-exkU#Sd(Tv$_yISFB_vQNl*q%{1weUupgTUR^)77Y z8B=cjHI||$B$1se3lpqsP4@O#edQLUdHEHk=0k;>+q^3kxM^JPPRUg&U+~b&o#De+T0Khtg z@7v&QOSC)!(M&?M#SSOON3}F^){*Ya7~FECJ274PI@}f*f)&2^>_lC30J6bEF8|X> zG|q|!#uj$xO)V%1-4Ylko_Gq-rh%ocjjmI$XP}bgMn@BbYSA9aek8CGi3{@d;J<+J zXIJpx8iT6uk7=EAFmwjh1OV|a=jrXBIe=sp=jA+peGmhgt=IkLYlz9> z?YjU?`nvs{nkpz+6*8`pn4zXP2b=O?I+@|*;(Be1AL+C}Y`jG4CoG-;A`sAOrjr|& zoNRY!tob&;i~=Um4on+x<$P^K56ld#_@}Hadf9psyW5GNqdf+J@Ioa$dGh2xd-KvF z-4L|$MosexLdMVO>wzK=aEbr6r7$_qs_xm|^Zyy-cd4m8|IccIPVEufDn$TQi53|g z(p`EB=-u6cNsWt+HjzAXFLNIU#BfM|aGNjGWgOE7X+N+?!6?9_wNYr1!x_xNAxrnp z8KrkeP_PATre7qq^I!*gu$`Tq;mN$t(Q?YCV8gh-YW$!}xz!mmL&kJq4p2TGO~>8n z^fvS~%&GXlcY60eXA%XDGbluPc9rOhm?;P$6s#&>q2NG8fTMW|%A#3X#xK!|oP!z5 z;Jtr+Lt!39(Es}x1u%k)07)FF2mfaP)L{n<+=x6B2H=PPp78L?XLi7ccY+o-0Sg+? z@Qba3vp?Jgy~mN`9-yrg{33*fpyl$X0^B+`7uW4{taC8_Yd8>U%if1wPqk_IxVV-? zKF`OW#TTHMJ6@3NCl*QPC>7gU7|AE-dsOXTvAAy(s)xmygDc#Ky}sfDP`A`uP+TnS z*ZA?{y-R0LXBU;Ff?}Yn7teP69}`K5?~cDcTS{l>IbCE)8VDlty2Xs}4Ud&!=aq&G zPP3QIQ(wT(NZk1Gi6gwj7BLg$!ptrl&q*2m36Q<3WuSmBV@E&ZU7VVVhw{DDZ3GXXzmTaNC=Tg=}CK7 znyv2VcU&bKN}iwz9p$~3;@7Zapf0!~9yEBu$NigA6U)O2b;oM~rHC2bjP7`j1bkbkY7FqO5{g zL7V+$&8JT#DSs!nmzS008nJbY6c8)iTTPdQ371JoE+9md%R%%9J4ndbfs~O8up=;- z-M4-Ro^PtQ?rag_iH7lMa|93~7)!bWMi`)V*})zxXQy`&zw zq;;RN+Z{Fqh6>Sm1jeAl*Dqv67Pa~GG?-^pEFdp$c|EU-MYmwQ)n7^B9NWFk1o zyS{e69`x(DDqvqBa{=^OQoh3|@M2LdWD>Gc3S7<N6`oH+Y1h}b;MbOohk63*kn~( zhq_Jnw~6}&7~2)rx(}Z9hA)Ys*%OrqT}D=&8Eim%7sIb1?)=<8sH>Coeh8vG80<7Y!;Ni?(ipD*;bqDDT&Uk((g}NMuO+=ew|gIW3dHiQg{e;5S*^ zMHi^RsC)U3&>ts0-Vd7iBK5*BIsY_F!Oyjj7Q_U0on2ikGs*wfcnOYW1m!I(W2OwH zGtZb|_cmM-FxP;o!Z`C0-!cO%lHsljo8z)QKac zZ{P(H1w$ZN$tWI5e3~X$P%OwCp=R4jsEYhx0k7PLLhpktJjSI48jzL$>T)8;=qKvX z93jnZh_mo*7LL~F7n@OWsMt*%LT|31d5H$gD1|CZJmEB!eBu0W7)jx1{@&Iv2akYF z$mX(Xe&dBG_*jse%+e&o!~;0zOoE5%oZCRB9IrGWR~z;`L7GLeEy{*d^TTHO8QArN$E7vE;P^Hl z?m@7z1B8IOx<*F+r#NU~0rB~?(U~u9!&(i$@*?{h{ZHrse~Fws6w|r@d&@+tTMnrF z0}fDt%C`Vejr<IPzSmE!hUIv8bSCn+BM?oqvx<0;tG z#k8Ie+Rb$-h$o7bX98TW@a2NaEZm2L1nc6L-a5qH@EI5^E7alzKlWiXm3#_DsZov! zlojrBuSf67nR6MC!+IW9eN26qmUdG2clIfqfu$V}!qc(AhpROpC_TBdKmuMsH?wq( zJ0fCF^MyD}tn-tMiTLb0MLsWU(62(Kf}Mhz#dkp?6Se;)u%%`IU?lC;f~xl4pu%BX zTSvyo=kGWF+O?Wx!>A{Htnlb|C4nbPN?Ooug7om_=+TUg)GgVsd_9)b6`I zzV5e^2I_NMZfZDAH3eP(eKahUtecWg&gdQU*sx-3b6Sx4UBl})m+e}f zmtT9b@VetX+^fC$j{NJ6cp>Y88l5zn(2D$(L1o03k>)$IBU*zh9D@nDkuGF7dxWaPi&6#_4N-Qm*74FFSZcY5drvxRnY(7Jm(L3FfA&M zCn3EE$d%yEt@PemD*|m_PIL3cpj|I*5C`&QlK&rfZypWx|HqFG*-ByR6G@gvr3hsw zYsQjf-}e$i$Xdo4#YjSh?6U8&?^LpjtRuVZhGZH0a-ZXSf9L*l|Ga-)=X6eInD_cx zp3leg`FK1GH8h-h4n0DfQ|xD@vg#b3K8@4T)J!SD$LtyWh0gW5<}>|5jT8zE7>^qAqrWC3fuBC_%_jh%M%jV@??6`{ulIUAZf6^)$d z()ll_MR@Ahz>cF0o_6Y&4ne$-OKE28i6v=;QN9NR1*^2*4ghMVQ8xuSDj`}H@xkz; zcwh-L#a$;(S!s+?izwkElq9V}Sc~;eqOe#Fi09u`BT|+3e2>9YZ`1 zAmiwMG0%RyuC4yJ=+4m9(%S0&#+eKu-J{O6kUx+!pD(P_SGv6+i6_K)4Wu8Yiz%At z9SC38W9i@1b#g~2UOmawM_hE8^_bE1<~|qFZhnx98`E6 z&0x+klii#eAyFhh$=nwUN@DFiQTSJ@zg&-R)o~iHT+6RzSw6f>^UNETLjz7Kt9-M1 z4a)h$huR)?AxJVUnOY0v5^vKXB5dQVSY}jw{AhT5{6Wd;uTo6+X?W1pL!J^Bpwn>I zWd%}s4XmkfT6LCSF2W>@=2XD&`035?EK0VkS6tLoZ}9MVcWkSl`BsZM-W>u$4NKKz z9Uw?HovMMYfv>LylY{wn!IX?d`kage;>P7ke~fqik=!t6h42sJ4!F%^)>#O8AbYx@ z&ApB8BnY;&4HuG|^c|#OZf7MkGjzT|XOdu`w($+rYsXwDYS#6Mi!kb(2{_HTc75&y z!uMnEU;_og#Rs8?Imz0mN!-~xx4YYaq$9!x4u9L!G*A7O0LU+IVeB%D4@8fuJYUI+ z-HnCV=fM6hFD`b@^q%iUtp$tdQX?j698r8YPC+TDBi=awlG}2$wL%XD##QOUcgn`I z-kzB?fDKQ&P3cWi0zBSn5Yusjbs%;_b`H-}z3iBO5%E<&@wO5*kOpSEHhhLY@u2EY zb`KiVM%O7GqgYutZv>2Ug7)0bhpLzSEW1yM>+!P$1+=7f#3BJ>3OXOdUG9oZ^(!)A zDqizj>npq zV5udkr;a0bhyRVI2gJ}Pm8Mj!Cql;-1fp;t9#rn=-TSU>V6V&mqSqaLVmPEodGCCm zrtmY^$9?!%s_Cu7uqv2gBg)FkqIXvSgfT>?3f_xBAm*cUo>D&+mp)3XHO02z z{9L|EER5YoOwgVGvd$!z)vc*rmaH4xauI2LizSC4Tz=R)VmD`edu(@4dv}kbHhKmI zI%o4p{m`K9fpOlLYSz?ulJ_R1%RAS&uNbSTGTt)#8Ux#zzD(^|oS+l zGBMbE^XAmp3t8^S)go*MALdaGw&wk�f;F+RGxs=tnJU>Z%*m{$#)IGH0|={Rg1! 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⪻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 z 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 z%0A|NP);p4cAmZ#rvu=!k%Pt)Oq6vrk9rY-K-i5q6T&(deS8LeNExt&;PYea05X*M zoA0Ag@BT?79~|H*z(pVhB!J?2js$MVfTq>4NOqz{Ps+0UvVh%$(KCe?T+RB)4lR+} zZ{UNudA>;Gc0DU-`u9fr(Q8!MY%f+Q-EX^3wbpuAW&qn}_H30LcH z$&f3DH&0(Vnsx!u;d*wmo4=-Lg1nDhm5WpzpEq8pf;D8^o~C#*OkD5Vor$p5Ep4)K zu-0LpH~+)xo~@Z1Xc6KB2Vn+jbQZ-Tw#~-B=k`{o5CL~YMJ7cFg1p(crNqU>mG+m? z;mtc&FDkoA{8lX{n_p2f(l8F;LB2S|!U}=l*7F4-<3gpO!w?;HV#n6uJ$Qloh~xh$ zT^grO|9A?FCEAai{kdlQQAQ$wAiDoi$0Rl!rG2mYF0@ZKcN+LIZ2&~8+ez{2uIV+W zvl9QU9dd0yE||;CHjoMAS=xn}a^T-a)G;Z`{`cDZnBJVSs74KyIGyCcbdHD-j-%}UxT?9>RE2Oj@4gJXUx z|5?rpp+pV44d8wsrUPjA__4_2f^poZGbBy`E~C~K7rQ6^9xSBsg9+Dc^0%hA;o)IU z>J%7o{{Q@lQQwnhJ03R>@`AUs4)&SmU4Wo2^9Jd+&rn zTIDCM^KB%dn8NFv{58Dv8JC>Z<<1G|wth#vn%4dLM|_~d2+vM~RE^X}fwMOZE*%z` zjN4Zva02_y;$kF^G`DqjUkmzOpp-)VWNZY_DWlxWEnNVo^UQPAe4W5M{Wn2NG2y5d zb5G3CzHcWnH_bI~6`lM+Tr0~-ObNKjUj5ctLp*5}A01NkS6D6yzVwiQ{K{;5_KJ(X z=#!EuW%!=R&$Q;9N!Rv|B>r&T=mpoDn-uE^qeSt zyd~G(BzIN2z+AzVvjB$iD^gonHIr=n(K%zHSRa( z>t(yb!Ewx)habKFgk*ygFMx6MinlKe2-)92EG1p-yl4_mdlTCDz*fNGICDx%42NnZ zPgC6TU_5t6dSr^|K-T5elMoHA(6}-EluH|xnaCx1?^Rf)#F*4QxLd>p1UDHGUw!1z zO3*kAzT00SeC?zB{^806{10ROdo}j$&xT1)nX}i5wYyW*+e<1VB+=okBj$RzNR=X5k1HSKUu-p8KUsxVa|9P8+Z!A@O#CO91XFzQLFEx{7AT;Og}vtXHa4OcBu zEv`TOXne?l)X=M9mNr-{leq9^PTh6}}ISdK-#xmi{6rJPmQUcp)M7pkcxwiQhdBx6YdZ&(~K~;=Ro6Q=7 ztQAR%5IgMV6y{Tk5Zc**@ZRlqOBdkl8`iuNtQHpAW1Di z%1ya5`Qi9Ci5SmI8irOp=Gn^__gG_U6un$JyRFZKaHWAnN&uE|qW!{z)hD^Kx%E21 zp}b+WlaP=SO?@k#cHcZ#LGpH(girEH$v4b}R!QfWxk%<~vMF*ESsdBgw;IH3ar{?x z5!oEnEA6=2X0l>pEsHd+vzir>-DD&8mHn>!msp~KY7INqb9Y0y>|%LQgq*g04IfBc zTqm_N+-1a0-iCY_6gW)HV|-#ypDy(5U^uc&+w?U#s|VN6O#Bm~tdP{**zRB*l1CWO z_F0n}S}=Mz>usk0<;31s)@Yyjn=NJ*Ei&%dP4ikp>fAMJ@rYz5Td=yi1u5OX-q>7q z*kt3&dY{+$KwvfSvbH3ryTZT&rh-nppn)>KmX+MfxX(RCw)_@iKADHDrs7tvm}?g+ z#=QGjL1&O%tF1IvGNBj$v5d|HpZOqyV%n8@lrYHzvXglM>T868}3$y7=4O? zR)w~4+IPK?DiObr*}bxX+QfV6JX(Jg?F0bldC0{UvnCx~!aeM=vn-!ea;>al+t4F5 z+bJ*KgarZUpd)?K;C;dNrHQnwJ;fIWbfzWqq&paN-!tWC3@ld~%kY6^D`CFNRMu(| z>`-~IJ-2|Ao%Fn<^gS)lpE;cma1HwHl?~G~OpB4p_PZ&NPFQH%xa1V_`#>wFE5@%d zu^kZB`RiqkY%i9NSOH1%{v8qfj2khwVE6l%^Xe}-xBAIg3IrYG3AbivhK(&;bJwIN z#|kQ>CA(Nky+oSToGW9@>YmRYRO-Ku(Ta*32?b8+Xr?7G&5F z6a6}Vv#7&}T&#Xrl+yGCZii`@i^GX{QwR^`j$Sfaeb{sMP+1I$J6EEUm?%3p9{0;itTsVrDpp_$PUfTKRMRAjVJA#oi<(a zst$lPqAUxxfz>tRE5Nq~PX;Yodi?PG4ith&1qk#V|3~@t|MY+!4F33MsE`@j2Zai8 zJ<(r*r9hzyZ5u>Ovh)0(L#9DMv}Ifaq6c#Ed)(*3+z;VK?mNJf4*_By91#A$d^&4U bdq;mL%-n(&?BA@SHKKM`3tse()${)Wy)P3h literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_tilt_angle_steps.png b/docs/_static/img/propagate_tilt_angle_steps.png new file mode 100644 index 0000000000000000000000000000000000000000..84dcbf754601caeec820a9fab6d6c0416a65f9d3 GIT binary patch literal 70366 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 U7PIX9*KSeTxAbAfHy-}|->*>oTL1t6 literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_tilt_phase.png b/docs/_static/img/propagate_tilt_phase.png new file mode 100644 index 0000000000000000000000000000000000000000..8253ee466f2da62dcf07c4756f8fe08dcb8ec67c GIT binary patch literal 109855 zcmY&g1yq#X(??MhB}BRfMOIu|I)w$4?vhZDT^i{I6{&>bU zWZ93b4-fAa-ecH9ZI6W22|}Mc2+xh9tX!eToK_FweWzM59yRm~w=M+Zhra*yrU7ka zzyA2@t2c^7gk1()ZUoM)W;2z9SoJ$3cP^TdtVYd%RoMeH#dahnKQ0exH?%tP;Xn zIKO%R2_9aECJAMto+`{QMhqu0`0rM@kT$gbR2ODgVe|JByyN{qWY@|S){>xq4@px} zaA+dP{(k?m@P|5YoU&ibgUjN>BiAs$i}S650Vzy05&h5E(Q z<-`p%yGEOgtXs0n(2KDuZ;L^o)|ZvA?5nsrzlzI&WjF__pD*#H zXM|`N9-Kav_56LrFL5LCf1}s9(e;0$H@Ff0zflNobo1W`i5p$}Hwwp%F8&+g-jMn4 z4Jx=fGyl!0f}1n*-<&EzU{pZ;-|tj#Zz#C(Z-kq(;PSr_Zcb~tzbnE6dQG|epT?dt zxKdqMWc|BxJWBA@t$$)=%YcPHyGnThx73&1YKcwt+GSb@GE1lbetYZf6U1gc*ORhU zccO+?kG=FR)}F@yo|pb4b=)9zJY8U1y)K}#9gZ*s`=o;Wt3^CZPi*y+?=O^t&rJ8- zo1q(Cds*POZ~ncjEctXPdHw9y6{-FEOD>0n(S@ntYuLZ3RT4zQBE`2_Wq}pN|66{= z-Tya&<3|5Brh*GMBK=Pp752E%Kb6J`;zs{e8mkLNbj<%f8S91{{o9IIGTi9j`(ib4 zqknV8I+D3kof*P3#V@izB(f;I z%?B?J75>{6xUqC%lLhOR9hoPo+NErVe>$TEb}~TvZ#{+T2(no3f8tJpz2YhVZ?C@Az<{9Z{~f-Uo?$@H@qhZ+W&(na z{vb;wWQCN^G1{)ww(8#dveWD6$dLmYacr+wcKn? zNCH*VDZD=F{9qj986h@hnGbuMB_t#w(TW*V?mTm%VGdMLS)Ps30y0hWJuIx{p{<>) zB`UD8eF<+_BE)>|vk+QmNv_8^5KWE`pR})5D5+p*MyAo@vijn%)DC-SE{)UZyY1$y^rjqGkf&?Q3PA~K=!@j*H(>+U1Ls3`q60y zkU2BYA5G2~#juB4pLrJ^B-Io{0+myvnVn1y`bIvp-J7_>y5SV_NQ#AZ%4O;bP7Nvc zBCb>p)oW#@2QyNqGgpFwgQw;yyWA_t-A-#m66OdmPFh~wHmDA%>GkDwNwSgAyngfD zYQ*FG2_7QM9ai2@%Aes8QD2ImR!r#g^jUwxaLSLxK5JBDYuKK6TCq{#pqLby_>%W_ z!;jz7gF{i%gXpMf=`l;k?9bX9@$07eytNSoGsELKGsp0A*}hAx zpo`vt==MW_$@94o*2c|uQI^>&T@#@(E{Q*20P820Y4YqQB%fM7&Ael$2#tG(W^;V( zLT?s6ET>HSIgZPG^Q(;csC00zKpH_%S4+kZY?kB#HAJ<}RZ1^@JnK0T<>45?R*WdY z^;*XCz|=38r$2vR3a{+bH?51U<5H zy-~m~|57$-@S$)HXe1S3%rU#UV*6nyH~LFK=worl7?@*dahiKT<;f16b9>~hcFZph#S$^P?%wPgGN#us(i^)(O?+vxU!ucdwnnU?vWV`RQ_fd4`|tQ1^<5bgjDc z`2-WDp0A77_UMbo@)&N-Y+v?;-;%$K96UO@g8Xo#b}5SYwu!A8l))guaBO&@B)9uP z$9H|lFLFdnFTOX$#ywKXiRM=Pc7VSh1ACr0CKvzWJha~hItwMH7ks{6wNk+Cv*A6Z zwBS@ZCZXq=x9#9eHo8*Kh97?|b^5rMgSCD}xmd7qQT6dkiLTWX>i7Cj6b<=T!s%5V zc*+v(gs8&l%+SrUvV=MBEe|h+Os-i!wUobtoH^6D_@g2YBFs+{Q)*We9iE}!+@#EE z+UDBWsqH?l?27&r%ZSoEMO$O*Lb*va-5YyY5=(y%mQ@5|QNN z+v-nhF3*F_uCbP=!Bho~d}W+jv=f-!LRy&+^R7lW*X;W0?y-bke*AcDh~{IrEuUMG z)%(5BdG_`2??uwQmIP_4jB@oS?XS#!a6ff1W#j!M&>LqwUQ$-bU-|r&UPq&IMsGw# zlp#$dDmcu%N%L84$Z^_{PH>zI36Lozl#F92Rj>YVFjy^7ba!oXax$6ggJR-3rRWKX zpAL*Gtd%tWgelb%XjO>a=!lZc^XrZDJXfC_=M`&NW#_o!Dny>+_79S!`1nEUq7H)z zw_21zuFQ`jX^q@~*5~=0QxjE(ZLbGP?yFV^>oPDVSJLpmw`h?PEMYVh zoV~I~V~e^o^X5txI%oTQ3w#ci5R8EWuc$io02=0Y$BgqJkTb8qB@;~q-)i{b!#fri zf)a8GrB?LR`s7j`VvBRre0|xZbhwxMfF%~Id=x}YI<_#H?tdfo>xpWgv)?wl=StQ4 z07%wfR0(y>v&t9b|2L@=oGHZg$bv8pku$XD5 z=vS)!kbv_|#y=S-E30Rll;nFy|0w3u?3=JKm|~^by?Sk!-$Pi?xK|kN{XInB9Y#-{ zJn8l1k~;oPszyvo3eq%{VD;kD@ms9^>&J7yq3)`W+uJG{!{||o?7D4-Cgyyp&P$h& z({U`>W3d?=Ap`m8ma4uCG!U=I87rFpc>TA=?@atFpGPBaSH6mfr8NcGw{m~H(++!{ z6>_W(3tBkQ!oh@>FWw-x8*NOs;{({$l8(FP+G92{yIA81Q_XxUwO~xVjfYbuHCa(ZG!eJ0@u*Zhz3mU` z7SWr<==FDxQuW)oDWa0eqnOA<1e2K`;8qR0rJbO#UbEd523#zLMLVCl@J19Vy;)i5 z5P*}pK6#O%e>0G!M7Xx@ zEXcy0Sv8A_xH%lAU{kUZU|lt%_0$m6jQ&Qn-%9$M8f%?lL>tYDfbbr+AB|baga8 zl{YLzEwTBJD3a|qt2$Avr&WBYnfuXCzy9!rU`&kIO!4#beil(v2Iswf+H(1(-b4R^ z^Vg%|klQrCc7a_j3~{nDWq_knBtNY@pfO1 zUez_yrHqrArfsJz=F{Svu*5(!`%iZ=suN7FhPIN*ebR5~rpL|h0+i?sl$dUQusuF1 zP6nal1db|)0a7qbNHK_YU4|e{QuMbZ>R`hfJEKxAqs~nWvdtR2ZnB2&jpIJ&txNWO zFmWAyFm3laXLGJ6u|0ty*l7{>dOg_<|=3^i6{pnBjZ+(P|ZU$ zm+>-1y~JW&5_i3W!O*?BN*sLZ!0$%3c6M2azKYh$iVPO4m)Pl%by#0o@|-={@b_<{ zZB3H!P7ngQWhd*F3ucPBL&`B}G~fC3&ptVs!NA?Ml?3TxB`VX(OzC24=1%Ee?~Yb! zjaq_4QRJjuyemaOGmVR}Dr@yqEmNCZn=cuqFM^{Lo5B{3xOcIpvF}*NV9ij0%JI8nxB-QR4r^hW)r<=DYCMHZdslw)*T-sr? zW2{?}WCy}n>TSZ*=~eG~%uc1;Pu)hg-Vf-ARL1w?E>`=j@3%vz0}^=48G&A zs}#g+9sPD4tXj+p0`PmGbTrn2aE<2Ayb+q>NgbS)roIPlJ)?4*IR%_?#jnf{d?rhv zD~@Cb*U1hv58js9iPe++gs=)BTe*a6T}<2$-=Iz==lbWcg!Jc{9RB{G(+q(?IEW@r ziiwLKt9G+Y{yr5O{6V6x5?rOA(lk2rM$dm9>Tdr&;&W!>^I*rLs4p&XnZl=Z%Mfb; zc+TQ6^z@Zk545RBx|jPC(RKOz1*uy!bu%|)(GH9+s-)Tv(y#9suZn%yF`N4Rfi*)0 zZu`e0l}B(^mCYTUu+U&%YB%Os{;G=vOS-ky(QGGq!KYsAW3O2C=1U8MnD1TZQpRWJ zj8xPuM6AvMypm)P7IEFaXy2jJFI|1=DkY-jBH4kBY&e_MQq8xeotnuJH>aHZWl{<6 zkrG6wv_?S=Zy4P#s{xIjpje$@Vb|~#tBy1i^Mly-@`}`HCF7%na^C>6m#4sOfyvz>4aj2`-s&ArLJIHRkx;td;f)HFUhvpRyZQ~dpOY1jC zlntM@%jx!Jr2lcIY%qy$i9Xaz?BN1z)*Uum7=Hp!^#jf%f;6;MO%!D?{Z7B4QQy-l zz_z}u845Bk0w^;{`~(6dULP)q&C?1UH+wUuL3H7ZI_?#KQg0g0E?mwI1>Ry#cl$k4!o}~Q@{pp!pgv%GD@c{PH zA>$CO+eA4)4}T8V?dfyH91&U!B)@2ADu&lvWlOz5@^3Ja9Yj8U>{|Y4?5Cg=^Q2YH zYBr1f3r4w4aFWqx#I6)dl1B<$-US&EX*W-;P_jZayO(0R9QC4Qo6O1iDcctqf9#be z32ztDZwK14#?XsMq3PXT*EZM}3G-;FO_r^Fs($VjToNq`v2}q9tYf({%AhN4%Ert< z#+RP2)QcT;0+A6QJ=?zxIFl5B2a3CmNqp-@9T)(fpYAaH4fPgeE4#(XC=`2>-~NHg zo=o1ShL~T6Tu&mdQpj<@uUZdl3=mVWJvVUi{5Zwy`nvaruK>PWx2wpQo^2H$B?re$ zYdCSHYJ#ViIhRm;+XBDDXmK9cq>7N^x{wa*7l<*pFnYmtZM3GCin+1{)_KwpwSLsa zxBP9i1`edea}EMh9t0sR1`HZ~9%c(WCwL!eAPj5`MFm^#Ox6vJIC)j(*D`p?PZg=~ zt4F^*4Co(?%{boGc$FrqmmE0_UW+PQ*hWQhtn@z^e#=-C3wOvV4VONJb)CU~~9HI=4;Vkk48u_KXVM06u zOu_ysi#|1GGasrG$`>Lz$Ehp6jNPDZM@+M;N|xUH$Y{HJDXaxHTeoCA$wxm9)X)cv zx4LU#hrPCx?%Ywm^b7!+w+ci8rf)z*rYUYSnAOSsql+z4sm469cz1x$fP8YUoZjzaYXY91i-vB27V58ZEWvVihwQ=Nv&cAjzgm? zFMp>><>UQOcEL!C!ZMH7O$!NJ6RbBUVF;!YyXyWd@?8>CQSo@xPeOWrl$$B;<)XNk zTa!=*iiTy&zCrfi=VDFfYt$d(N*q%OZE~mM78}32_U)n0Uw3!BOll2$-DfG9vei*~ zGhO4E0bY0&FbRf+x0Lip>@rQ{*Rcl#NXc)OTtakGem<=F9dq(sktkwQ7ys&+4nAU& z%t`6-qF%A|;+kl$48FFsYUSgXCDHNc-XvB8c)OK&896|nEfb|q?|8l6mU0aH@>yBY zddbOrEwHp?PUaWw_lt6I*XFIQJEnQk@tfKVkOB|jn_L+r*C|e#S<({NpEH0nu~4Ix zYKE=*Dy_j7%<_(rUNu2@FR`<7+|n8<<{}zH?I9p4lG!!E35Vu)!6t$NPpda#G|Jl7_4_=Nxl(gN&$Cd z$WzT`stVML0k<7%1Ga2If^`cmXl2SA0~;2d33}iD+|~bAuWtK_;)3=YUL$af!pmj_~er3PZeqt!LCF(D#=sgOvZb4iX+GJE*( zi-XmNomQ@yg4?eY_K3$G;L8yb{+!R|4eNNwD7PW3TY!CoT!uDtw`Q@2%G%GTHvKQ}v_G|RQsLV{685*Yf#as|$IYvdss zw=tx^c?sC1rUB~JIYiyj>li_H5ckE!KJ+ovH^8yI_i~A4E4J0|*~e@aJ(Md&`b9a7 z?-khqTVs2#QRMCQ=BH=VL(qj5^FSuhpClJIDuQ zWyhnluqLx-`mo83AmiA(Wp>=yCD>X`y}C%i_E>2{k|CEj?=GqGDt+klgr~*Y9DAXy z4%=7$bZC8VHclEvU5|c`m?+u=hw6~#8LrSpcNMo&dw&fE)QE-)#g!awl+EnMP+}&F zZ!f3UDd;o^5)x8K9C?@Hf^b$dluu)-$HDto2|`OqJ)tVXDcfUjC(U=5k3<9RktDU- z@ZqFZA%^N&WnNs=sX41t-{&|HXsm0QU7@C^hC(2!+Z(Me=AfpJo}1z!1R`Xc;?kJr z^Meg1OP$`m*R5$Z!m&jB6XYcLau&&6x#={5@A+P!0q)Q4(i|X^ZzAVNGWgQ%P`%O7 z65{Q?)x<7HL~5e{w%fuB6ZefDl)T6e)L3PNb=YmkOlAma!Fd&nzR$4x1~r*6(8Afy zA+SaaI9%!4+uF89{C@+S(pAbrwI*m2V>2W7m!nS2o$F&T;;siPkYxhoG&Kz8+VZ3p z$>%#Q%&7!;j4Fr7Ilwn_j+e%(&2pYHiS3{|M|)qD8M*D-+S>x6+UFtc^kYiFXj$zL zInTNie#=@{w^^I37{40ny~OOqa`yB1qJ9Nu4dKD()^Jg#$!1}|A82}JJCn=6#{$ql zp}FaSmyvvw9fLaNR2v{pO7}W2Oxg_4D(I)s2$FR3>J|`QrM!KyDfcK#JkQ8p*zx$6 zP}#h59L&w-SB8wFw+@VnD$4(6$9<5JtGOqZ_;_W>k5tq%2pghZky(JKdT9Uy9t_T= z4FxPHsJKm+VqmkKR!buc?>&xGXS%5S`V2&rG;jtvOg!D@U;~1EP*&YI?1AIKDYYUM~z@K!2k1x03yKB_Y+LKYH#qEP|F4l)w1RX_Cgn6>RsOlz8 zr{jr!)#FJY|J%HR@9UuFV`bZn z7?YeqkN5O~nbEwYUNX)2NpUE|!8)+mudaaEH^MNTCr0?dZaTTcTC2xC`T82&G=38P z(ZmpC9@PW-L4@qUm+aov_#nG6Ub4|e;ODt*8Pu%>BDitc>%}QvoGXzA z8#jLk7kbR%0olj};!qw)(*Ffz5O1{FpMw-hKT%pk{9BxA3Pg)V zPsNpj*pFwuP#1c6cHVoacyO zpQU@nNKj9|Y>fYwqgFe$R4IN--$k^`NJ+M^%XC`Qw5$2o<#*Y(#5(PVS+iR&_~L@| z%bFkkal+DIh%$*7oT3^ToFE+Meg{O2CW=n_SrNP5U-8ADFFgh!$xcnOI%*e6SeiTL$q0{ zdIyoQ+wy%;{%?K_iT4OPXxVJXm%0E;vf_I>F7??h&8=F4bn6meAm%ARc+MR=Po(H> za4dhc?Rgii{abg2oixHfV>AO&q7m()%#MX)>O^Bcy`Z zIIX3)ih*NKxIGz>8DZ8VeAvZgIN-cWn^iac_K9h4+y%Gf5Q@v${QnP%y&U@h^2*kd ze3qp9V5jnN{?3&V=kHQO)it{L$PR2ZHNz4JINMPI)I*}ghCZ?!fO9+17gMKDyDBJ) zGJutzrr7f=R|eTwb!htfAGZ{H9RR8`vIW60#7DAmGDI6(epH4yid(41_+_8j>T&V= zNXF1Q!S9`Z4)HO3>G_?Q-kl>c+r6qYN1OeF>cATm*e8A*8XNS@)|XF|d&8nVuWlE)kT?5WTn-i($%*Bh>W^kpM$U&Q%Vhm;^(@- zhLmH2H`?=AfPNsEQ*9*n_Yv?kw{R8{ zuXpZgE?lKd7ujt&Wo7%Uq}5mAgepGhxMpr#=w?pUd$lOq*SbK8hO#lV8!DG5T`W$r zxf3<`S;}&#Cw5L0Y}cqZFyU6+z?`U=p6e8~*p2C4=KKn$y+0)~T;3vLK213a*hto` zY&@0k zi{*!p2V#EIp@TJk_eucbdJv$VByo&Ix;lbkl6UbEGU=$y%b?pM+vBjWQMqXpB;T~H zbebHLDDrL}*Oie!ABI-{d@YvYnsMnqsn6km1qVb*jAkAVK2|!}BouA3b%!@^X5kKr;7LAMRt2*Goz zm^yK>(d-}={I7}EIy*g^5~5n81t>KcbE;VEn~fmceOP{bm#n?SX

c?-X3-S96Z8UyyMGIm7#XplqMp z!AAMi7O%}}I=lK?o;<{b&Q$&W2XI1~;05tgkcHZt)@l<{0=Sas_~wB(;WdhO2X8g; z^4YCW=0c9y61@`H6IF>ycDdPri_&52wmX8sjwWFr3cJO=rGcF}58IYE&aD=gbv9)# zgg8^n)czceeG7|Wk++Jf^x^q(`V>U##ng$|jOBf@-7CI(q(l_8!&;M60wf!RE+Dfz zP1=S<-2N1*I4G$po1*U+>9PzVFiKyD4HKO7v8veUc-`@9uD~PL?wO?6v=4KwJS^!3 zUKF%_nLH|MeE7~-Sq!9|$u0P$fE1%eF zCzU$>b45X3-fzPB>y*n%z80eR8?P4cIKuqqlMSfvIu8|zJ->q#6%C{dfXKDO01(SB zHuHM=(tXPo$|fS3hG%|LKA8M$Fx{oSYFy@!+45UVsdvFM97S|T&F?I43>j$DYfRv4 z0P{mx^nBgH*m+l~fpB>e*!Ck~G%Q%6l&(D$WIj|LpsbeC#iLd1DA1@ZR~XFXwfGry zw2+29>f5$jh6)PHG(CMHH(MP2g-hviJJNNYI15c@b9j6)H`}87=c}|waxXHC6*TUv zN4NDTOCUTMD2G$X!VfzEq@j>l=mi+AmTPWOB?uW4qatV>2aNB%x%%FQSf#(?MlbVc zIPC)-q3ELC>Ts`DP7e))Y{gTc8Itlis&4)UIQ7;Q>Kb?bPV46W{BBT9Y@$q31DbkO zd@M4e_G6z|(FOS|x(a21Pf3;!PtmXShovm$0){#U)VM9qemE+dBs&?`9qF0q{c!gO zW!A|6h0Dn0ltJepPVWLXkN~VbbEP=h+c2rmb6@PsDd>GQ3HG=2elnvg`eD5yEJ@el z{>vqV!O&%FdHU2I(|FmMj%0h5JKEn8+xoN2n1mkd4Hrr(g66f}#ucA3_0hYlleOL( z2e_S%sWe*Wa+m!cSH#BZu8t_)gg3Yc#7B~t}nONP?hP}c)Mam_$x%~)|F)o3AG472HJaZdo}#bQ-E zK=30L(JEg39(a9I!h0{GU_ZU8ZCD(-L=!&yg%;4e9&a8MYpKy zQ4NLyQGA-B%P80H@BM34QVYY|{vblu=i(>;%()H+bx3ph2-z$^xcEve^WK(et237} z={xE>Gt{AJ-$4-@i?Fepl0}^<;B{OF*jWc~P;y!2Vp3E0hc}K(e!ay}mEL_N`MIIf zK$~R1ndr#|;|O9~AE^JH(5ckkejkEtNf1q9J*W{~gr`JE@!{llK*h@w`~YDMDJj

)rje^G8q-$>{er)ea}btHzez8EI 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 LvSj(o*YE!a>C>#J literal 0 HcmV?d00001 diff --git a/docs/_static/img/propagate_tilt_phase_wrap.png b/docs/_static/img/propagate_tilt_phase_wrap.png new file mode 100644 index 0000000000000000000000000000000000000000..a3cc5d6c505a30953f8178b52812ceead6cd9b40 GIT binary patch literal 122467 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/psf_32.png b/docs/_static/img/psf_32.png new file mode 100644 index 0000000000000000000000000000000000000000..884547981dc58a9f76bb1dd4ba5f0338cec26dd0 GIT binary patch literal 8252 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_img.png b/docs/_static/img/quickstart_img.png new file mode 100644 index 0000000000000000000000000000000000000000..aac4d580fe348207aae44b33023b9ebe80719221 GIT binary patch literal 31241 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 bUKeqmP6MHp^+VwJnD43q{9^9;yN~`CPh1?c literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_opd_spherical.png b/docs/_static/img/quickstart_opd_spherical.png new file mode 100644 index 0000000000000000000000000000000000000000..8e47d0dfc43f7198b15f03154acd3b385fc5a99a GIT binary patch literal 135906 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%0AL0|7^!qNo>CE;eP%9dNq#x2L0tp&ILr^?q1bsS z?g)zYfQ_%a`4=`hQ@mN5)3Dt3%-y?yLga_sUms?>N5*5TKz%tqB0~x^+<|y{r`Mw z8aDb>KB6w=`L*sSgn_-QWqomS2M~VhvKFXRv57LZL8K%kiVAj9<>O)SS$*@?A^=I?z zhqnHuAU>N=7^|qum1ARgRGa*KBmqlCthAqA6mp^N)q>d1rP%;u9;8nb}eK znzMrkC5DvQ!lDkxGGbnoAS7_dNX@ai|EuA>MLC)sZN~0tR-)4sy?w(nQ|iCz(U zoRYHJlZ@!UW;)j>HSN0yO5TnB1%q6QvV_1#2?Pm_59vX&Pjlt=Jv4?Afn=R|5lGI+ zy34GZj@xt$O%#A;6ypX9{I!g_nPXRYcL!vR;{k?^%*b zM}VRwz)`jW)O_FggA+P8!Vrbae?6@J-hKa>vvagsZ*V<{wIzgz-t7rFpEJJ%8+O*N z_*pkMl5AFDk2>Uz?^bJXOS%3YnseompO_tM+&PX>t;((cRMV& zvm`)+ono)eZEs++z80>>6#J{MLFyy5+_Ewx5AzpKqgvRWgJZ4SXM*iqE~OR+fW8;E zJ}J>j0`lecHu1*h?qc1NHhK~Yogv^H)16s$XuS19Lhxl|gI)E)w!o#Kt{tN!-Ij&7gW zj-58TX;$c@iFNMX1fT;kdrVFb28YjAJD6+H(0<96ab(tB1lFN|S|}T0U#m_f%K^+n zO&h;pw;wS|m#kQD93{2lz9is|$D?_llKRIjNCABuS=$@RRodBctBw(K&8MX=daCS< zF_#nHEz4nI504$F-15SQS>MZrfQq+#hHkVt4;(M~%2d=VY3iOKc%5%s{&|9T+o>F? zPx_mI6pwE$w3d#s-3~llsg1Vj3W_}iC}(S{4i6vmHbJx!1P@1xtY?EKMg)xl3wQl{ zNL=?w0)qHv#JS{sbV6csQ9Aat-8LSuoCiQauS^1HtX#Re#H|Rt4iu4&WG!teFVz7N z7Hr6}H=d^2xj<*gg+l0t$`+VWnxITUu9$>dP7UC?SAZPq13`D2)7t&nAyjYREx}}@ zBp2Rb(yzbynXN@3#N5a+D{!x}It;Y09)~EHgLOrbuihO}2Wyjn+^&?KeY&s*#b@6= z2PHo;gR(lb~{nIum{rYnFdMQK#qg#(yEAa=~A3ui5K zd!;)f72Qy8A=M-q(uv|y`S`Sj{z}+NaxtYnE9xw}9H!bhhl?$T9bN;KgIMpxsUn~b z5r0=8`*4u|=D|CuSVcz(|3pzmn5oOE=uS%QUUcoDV<~L>wfvcGYk?EHfK);85LCql zMFnmT;~o69+(x6eG4yhgVEtlsPNRiF_fN>1YPgk<7uuOx{Qv)d30p zHihJPBNNou+pnSBu?`fE=xYxxeMMoIt4jc_QBBai1=O{}M5jthDcYQm7Pbua`p=cN z)lpTS2cmujKPq?-rLpw+lU_d)dyiyvJ++dMC_FQfqWC$7R9+gZxQt!Ez4k^pgso<2***mUC_1S>zL_YFMaNaz&+3(#9waQ& zPu-217OOKrOv=XXUb|`#c`rS2E|0SN(_Ah%7L-t*%l6`Pmq`6)a_D(t_>-@yhWx|w zi^Ctca|dO76o!@4(;}r-P8v7{*W3Mo@cxV_2Z%13RTR?TkA1Atg+|7GiRzfPQ5)lr zVn5ae&{PXjE}=qo#f#>>^B|N9%|b@e`uhBNsBYO92fKTa^a%)eXa4&xkaVA1KMXC> z7bM&+>dP|Zt7j#p6s(-og(T>V_&n1Nc{{%+cztI#HkYj1CcA?RF(h$tr+m>ILG+yc z$)E4$g*dh2LZN zJG7q*j_K?}y0g3*(As9$v(x}dkLmT7@BzT0R2qm^uWVQV!fgWbBqPOuwupr1B%jfZ zzv$+l`g^(gL+Re+Z=adz%qzXEvCHP{rJTsSU7osX@p}xaI@VyVj&&JqrigKkkvvY_ z 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�>}{eMbN;OOcd86QtfH8n92T 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�_9qRngIPts0qVTTE<`yABSGJZ7>Y)zC^_ z^4?EtJ#CMO80bdW7)i%oS-gFW_<#G&Y((1aWy(MFe`iaN2p&@}`bw6w--?Rxzx&F- zIF!&3$(gTnNrdp&^O7CHj%yEc1BZNgb&K6T@np0t(gJAlZNm6t7k{xS-m2qG9ao$a zf4zQPT6=ByYf15uT;29<4txxk<^FHHhfGaeVR>p?^5ZpFVv^gh;R6ds89Q(z<(z=R znX5z2dbKEdtfdI)+MqA?)HW(};Amokgr8caP`Do5(q8!Q-+ay0+b z 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_psf_480_spherical.png b/docs/_static/img/quickstart_psf_480_spherical.png new file mode 100644 index 0000000000000000000000000000000000000000..dc6fbcd84f3c68cf5f7f63fa9ac805aaad649cfe GIT binary patch literal 49795 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 DEkqZ& literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_psf_550_native.png b/docs/_static/img/quickstart_psf_550_native.png new file mode 100644 index 0000000000000000000000000000000000000000..b7bca94e569bdda980160b72514efdc616794ad9 GIT binary patch literal 57425 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�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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_psf_broadband_5.png b/docs/_static/img/quickstart_psf_broadband_5.png new file mode 100644 index 0000000000000000000000000000000000000000..ba61a602b95e0e34285abf21763f597177e9681c GIT binary patch literal 237450 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

$v<5qy}&@buG3}yMqUSFLU}>$B~SDq7y_$ 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

x{1Qf^Y-M`b$w8`Dt8`jSx_;WLYqRyQxzxkt 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 IHuZk|U;POsd;kCd literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_pupil.png b/docs/_static/img/quickstart_pupil.png new file mode 100644 index 0000000000000000000000000000000000000000..c3cd567ac67531d26ac096a9db407ba0eda09581 GIT binary patch literal 26050 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 rH|)8Pf1UIH4ZHt6bh^In63sL^y(aZk=mkv;k literal 0 HcmV?d00001 diff --git a/docs/_static/img/quickstart_source.png b/docs/_static/img/quickstart_source.png new file mode 100644 index 0000000000000000000000000000000000000000..78b50428cee38cd726b0b03e1f898e65d651a221 GIT binary patch literal 47398 zcmb5Vc|6qN+crFlHG8s`EhYOh_O+ytP_h+Sl9BA|*o~S>R0>%`iX>|$3}cxTiW!P* zF$}VWLB-Hmo@@Hu_j^D8yzl!w^ZCpNW4_n-`d-(09_Mi$=Xu?~U~R^AK=c3v0^zbS zH?@U8U=!dy#>N6ZAzi+=41O?$npoJefmbZs^(62&dyx6%PzXebkMV|fAOCF(KGX?2 z;}mu&5E+K@2=RjWdxQn~1%~LwbrojCmS@b@sCa

caNi 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 Wa51=%X5T=6z4GK;s1nNLnK9|jx}3DbsZ zAM+W?`!aRuuuyAs$70^ckmGA-0dv_NJ5}A3a92_Kp>3+Y)tpcp(;hFaE}{t^(~_xi z2<-PkkoI{KS_mx`xesM39PByUwaawk!c7F{R(BTO7W~#0UPhdKHCjYCqLwZ6dbhp*}w`zmgjAkdh2!J1TS)(=Y8%IF;i zwfkIZ)q`Yk)e#^oO~9*|ssL^H@??pau(_D(_hsNx%t@!*n%Ar~zKSo?H1f=SLgq}Z zdJiq;-c<9N(L}`b6XV4le}R61C)@xF3jG>h*ciuuU=D;T9L$t$=8VL5FXr*po;8Lx z10nqmpqhe+fMj!_iz)k$6C^8)caKsy5ix}|H$PQ^))Ax1_lBS#k$FXJW#=m4szq*` z&`54SZtbDGwOe|P#)>)RL$>a3hxQ-my}%Sq8H(#J6B;+PaSHR+=byIt@VLXUR(QGF9UTLLb?v*9nRYixnH7<9 z!Uv*xJ#H*KPabG^H0wcOGIhM$R@P4or5cZ>!H!Al@P51>#%ID+L}5KXH+!caz-xE}&# zM9fSswJTIKO}e%wnrXrrX47f$^h}pv12w)fr;^#gax3LBqi5Azh#x**>bdQehE(8l zFw?mC^e>FhGU35(wf=VC}sjRI| z_voOn)%+ol(r9R7Si<@K3W*w7Aez`KSlh5EWW|YPKP?_LJjrq$LA6GCo>w zorJbfKo*;P9gz}N51xzJ-3+mGBz^kuxh=MzRms1BraLsX2ZrgF3^wncdHXECc=Qbc zit&)6L*VjnKqWwg021bZS`4U;z0#_flFok)0Ddwt6wONXI~;U)O(ZCEoe6<(S7^6A z%NWTDXb=sF3W*AUif}BSWozeQ8miKXI}v23_!}rt*|vdO*xcuGWGg`KQ-FRy+BXK} zKo5-XR@R1Y%5WkYo4IKqIzCaBtoj`%8|0mal!c4&-da0c!=W_uxByeaiDHgtKL5yP z838!P=tDoex#2g1wFp`cvi|6laj$Co0a+FMXIc_EcWQnBSu80m^eyf0wo@;NqpCG3 zQf$WPJM(ds7CyJ;mVtbx8)+r>t7LXJ9jHacul@mH0O9s5zwFGgr*ruX)pJY_=-1L@ zXQ@KEFb;|XTDLf6IlDtj&e`GF1dq1xsyMZU8P`MBJbjtrX!k`b^w5pqX%DH&TVPLNp7w91dOb{*zn%Dj zQ7kAuv2iyQ$cBZQ73D*V`#l0iLOri#NG!0J3kN=?C(HL7to4;R0EAnab1hRmLcbat zANn*ZT8SQv%nGGxC-$Iwh<=bYuamwZ$-sF@z`{j7-VwhRxb-*V)*2bzDqyd5e^!H% z4rU?6GR@E)?`pa<)!k*Cm>rKh9(2jOo`FA24I^TECW=BJ=0HaBZ6#fEy5o6+f*AE4 zMJf3F5ds{nm;O|l1=&~k_}m^ZU_S)0PVxdm<&50M-F>qh4SX8_#WrZXCvpk&=!D}y zJrESJ58iuhAl3sYiV}R;v`jk|n=EgLUh&jTsfpNfqEMX*25K^>r9joeyMYFGC@pU^ zhj3NR=MlL0lWh@@*$#~J_bgiER&p+%X8TBkI#j$?XA>6ZAn2==?2-Yv25J^h**g9! z?#KJyLo3YaR@$RbtKVdd7?a-sY-ECY54Lj*Kn>v)Msf$_3+qM#_72cJ1wqi>@(B3j zE- z_cClJ;EW=T;m4EB0N^H)A}r}YL7&O!DFO<8L{6y`F-Gi!W`Qsr4NA9Q7(6huYM3L$ z@#Feb9z3Sn@KaxO9Lw(fwn_S;15>LYhed7+)3{iVQ%T*b0WftXV(|_|B|Imoyv84fikTrHpEF;o1 z#7ul*w_97dZX0=YWbA{Hx;j1=+QK*3nulT33eF}_ z1@;BFD3zWLo(L%j52J=4nBO`pp6;qpRs((H!KL&sa3u#uy}m z*(sw=#u#q&`U5Cnfps=He`^1lVp~e$R%Zrmoy`7wy?X;1@o?79Jt7Usa|t{K!06wi zU-zhtkZ+v$lIWL&cRW%Ni0t9tOWeQmkIE#O>tB;JlFOWw@fqSDd0;Eqs-Rl);)?OP znJ%aiP)1LIBD!FtZDQmSaO^@0CzCZ-1ib)1=^X!sxC!ZnyGq4k{&n@`R{&NhTa^ua z21e@NJ0DXSn1HCfK>e-OaVlMY_^oY_CR7MHkkf_YjW0sf7`VbPHJ1KWlJQ7d;vDx=;x>OmKX&R#;W0&pprR2mdZbgH$%{(5F&&u&8;2!r`1%48{fd+Db_Ol!==7OUYXSS2^)nlEFU9d@5tGRH>-ib91lmsXQ zGqpe&eCu7arPoAlB%^2d_ht^11VA%mGK`BK5)Gxww-Gs=}Yb?F2 z4mVb15ctQB`{T8OWT&dD;?QxVXb|Ffe7bU ze&Z2udn=!Quo&MpM8v4pdwEZ1%bGkl%2qYnz3=e7!N+fMW^m#q!v#>bjB*>lXQR$5 zoLk`+{#M`d;~l?aa_CoXzv+9qB%iAVin3PhEhNWA`fX(9yWqbpC*9nW@okr9w=g*J zyKDPMfiB~DYADI?pa=2mUySRb)>6jGBx1sM`P#R#At3GnDr|B-c;7_P5hmkPuO|hW zoVDzs^R>i;tvpk;5&?aTJnitpv!g+ev?}--25$w7$Gyt2f`iUxN!0#FV&<_wCJk3q zsFR{j>9!Q|Tub+6b>r(5-;)1?@k$V>pe`IP`q6(Du7bwB6*Zdj?!8m?NUei7UY%ZY z^&|R0islS9qup;9IItp> zEIM9sG$&fJTlnpv)P5dvWM7=@)a_s%PwDwWJfS}%@j6qpthV>Xc)3IPm07BoN_W(T z-E#Qq0sqAV|1a(DA_Zm$mI>B_oe^#U$XR-doOzo&(sO3m3`fUfDxN^f?eWiZxFi*2 zbp{P9_7|uFq-D=`oz+3mZ{r~E8W=L#I-IC<1@9;pe#PHS;lFzQH9RR?QsxttPd$4w zjwrCqs6ax|9>~o*@{7X_55`L6H*I7T9kIs*7_Cgl6({!O)~=n&=kpq_uv>9usM+U$ ziVhrE+A8a07rF9^lwtulIBXl7AT^X@W!}ZT_EbL0&>$cXsL}R^RZx;rHEno5uGL?9 zA4nB}QFpS}LxkMr*Mdfi?j@!sh7KutkAHx2J=P%q}c{ju)rxS5)-6P|~)3_3Qj8 zaay%&|4XLf@oDq_hAu-Mxmi0hz8iqRCq0h%V*x~8Rf|vw0-Ghjb@}VxPjcemfB~yL zIvY)1V4i|Lq9>*%X(yYYhe`gX3+cPw(~;kP5LmE4$drJ*chK}alGf} zNziu&Qs??tE?xNC`l0nIomD4_KH)6Eg>sQHPc^D~sHYG0hK=#x+VD=a9N)F^|91Jv zmPn06je!SjHk_cMaQ9Wl@FMFDuTENx9m$NaLP&M~jFV%qOsf}TOyIm3cwHUs*XaDu z$)bV(qocrO-9*svnMYhchM*E)prR&YJDS4q^>T_M)VqLwHAu3?~;*7{rXF#V}_~Jyiik)PQ#`@zg4m1v8cd~5QnEt`FLqmBu0 zsZiJu`rpW1c4aix3rbsWa>ECR-0(f?t)pvD3LLca+aT-9@Cj|FS6>+YPmrzg0YSEg zQ_5qY6&ZoUPr8&?H^hlwMD6cwv8ul8-fNIYDKbw=r0giZ2%xukAf2Ho$Z62){gqHl z5K6p+9+2-f7QsQXS;x7E&`st}P-iCZ9+Y?b)E>+8g-4j@5c=v&c!UPFI$G$mab$3z znFe2EZTDV6Lr5wzQhXIwISXH8KP=D|U$b*kdvEluY2VSC1%(pSsu#5vpb@alvf6!T zH2>c1Kk{P<5#tHV*Ty}gC^Js0Uut(1peh}^c+@8L^^M=IZ?CqcjAc3N2Chc#z};JF zclCMW?^`oxIwu#HHSFy{Iy*OIQX=CUcK4iad4DChY2W3m<>_PMeiITqmOL!R3!~a3 z9s$@b(dK3ZAF6ykAQq|Fx_YU5lSk&drEA6fSVuwE+qb*kDxHS8b5ZZs#Wzz|V)L^@ zk5O0ajrB9vqBO{TsmklYDPe}xy&A{QHH*|NXfG2M-5}Ex zVVF8}2&B+|_eb%+b@bop?eACHG+|X9Vi&*9f)Cz5-<29QoLPJ%%VM?rZ#KGi(9A0O zb=*5!xu4Q|RcWkblS7IL>als((YJPKApA^i_m|dI=8G$DWw+ZcOKBusH!Ff1koyy z5l7eT+8ryj&%ayd_dwp`-GlAbGe*!8~-&OfZfRr4& zP2i>oQm&!ej;5C`jhWe5UM&vy9E+4!6~pzDwev<(*gbM=K3zsSc?ec*P&1Dwr@0r>iEHHimNNK{N*SPVVM z>+LaPNjc%r&n&!Th|N^KABThk?zxlFElZ_v}XI zmvOr-UT;!yeRB5SyUtNA>dwo7ohU0Ud?HdPK7ju_aWOFNqkjoL;l}Ix59aR>^3dsQ z*xYezoEmaJtyy5}0ujOC#PsYuTffcq;p%(HlK2U`sd2HH=!lnh0@J|Jy`v8-VxQmL z`CMn;q&%|my{XaYIev^4Q#w5fQDi~#M!zyT7imuAM`ntrkFBh{ENDVg1H?jS{(2Eo z&?tD!!MzKHDXKG_+iy#`MSaEUmK}%wLY%DFs<>Gr;G4o~Bo66PU5&+&{%E=%n1Z%nIX3LD*yKL!yEOOr^=pprX7<#*P|D5r z^YFf;&*X6<`8OAY27jSWkC|s}jOmW0zne$?8XnNPIa*z@aq-DLk#ntwjazHlqx4#g ze#u}_KMYMrQfQBEZd|-5J829KQC%I66Z7bg@*I{eRj?3mcgfc4)oVA%h0yIrR4m$B zdar2>ShBmB<@-*Nf)z-9#~wE;`LEjjbyZV}LMzgmruo0);XF7=i%#><} zhe<1*2Kb$-C6ZfhlX-93XY%k5KZ!?6hBJCTVxgY;pVCqO_G5N;;=UJ6fQw2t?K1xg ze;^i|6t=}Cste(Q?V`?Xg@a25?ta8Y@!mY`l0=y`niFD^bLf)$a+dH8(x z(0pbz$H;X&f3$nQWxuDk($mcIhJS?GQ#b{)M<;ZS_1+l z2JQY{9nNc041YpAuTCbun)53Z8Wxj`#eTXG6dnnB8kMApiE;SU-WxFcpGVUts3HnK z-=vCuBO9qNu2iK~Xn)+`AsYtn1Xq*wJIhno!+z|ZPHfPS-WFY}Usun~;d4bo@YZC+ zp<&tC<-fKjlugUNs3$fT$H~70+j~SH0hT2^U2$6Qw&XFloY0XU(JG&dQC@L&mo_)m z#1YQ_i@W!ZhP!+Fg&94fgb1Qch;oOh6TPMDBqWjOAsNw$8Vn|pL=qv0-cr`Ay#{dY6YJXhyrE(+AO<%Gy9*pOtT)HBVYEn+IthKo3!2<#w%6M`GW8K z>p5md9Z!`tyAArn{AQ;Ar^60ITy|ESQE{JNGd(o}-ecb8}|R&}hAhj2#eNL=RX&aqsq;S;yW#P(v*By zJkF7<8ce6jKh`@i`6k;8b~^zLHd7OH!Gi9`1>I@2?pS z1Vo2Y`TSedXMd>kF-`RaU*0nIqE-HAHvf5aRC|7+-RZJ%n;+AqnVH1kvtJ!#zC{Hr zd>S3S{-vPZbO?5`9W9!jmJoXghEP5%EiFcyX!N`)hbd%THNc52nKGxaGwhi|NJPV#5vMco}=v%_hcT^TPz`&}@BKCBJ-R{OZjd;BtwB5BV5 zGx{az*Bh3w!wdD;qFN~w@?ls4?--YR44?f0>gW3P->J(wgq)HdciLdKnmqi5tWi>I z2#JekIdS=9g8?hw)W-fv|2r}R+7%US1SZT76Ka2q`;aDxvGSNQOX9fX(r2KeHp`Qq*BK@Y-srAx}sOH&(C3Mk~OQ#Y<=#_fz+QGswI4gPzx5VksO*g^lU4mS6_vnyhI@biUIXD zvwytb4AcxcJC>oj0d>|y&H8}{bjh0wkd^cscLNhgr5y{ zDu3(_Qc1zTlGn5Lqmwj9%w|(Knwq^t@ADkPT-sPnjF4f7Z^_)3w{K0zSsmP<%1V;z zim<3Z@3lCYiU4)ft?*4w7o{T#U+pS8f9mEziRQbktVBtwPaqMCgyj(Mzt^byg zaBts{J2>BC=5W9g#_(4TjaR4uCb@qzpv5akgFk9NcWWC&3!MUY)Dv;)1Z|9$e9JJ+ z*2~J8W~}ubac(NJgQ19;HGFpD0&?|@PSnjPkh71N{mT|OUd0=We~1oMyVjUIxw+1M z<<;7;{eGw2D6d7+sS?iOpZvRyt@N-3nqVEq>O(4i2CO$3kGvNqbb(AQLvv8o=9s{7 z5bCcY3xbr8H^1tHg>Rn&EJo3m6!N4<25B8p8Fy1pv3Vbi7cvFV4DGiN>zFWjrRrV3 z&;<5um7s*ArF)ageaM8$-6mq46fwl?@%aWX01@$xrDr)qyvG!&dt17*-HJ z*sI_sD64RwoI4ZUyqV_>7R#r*2<8|eNTx@ja6!%@c)S=%A@YX(DJPW z;^@>Slyhe8K*XaWNy7!s23bJbP%jII=v_Mz&2%Iag;z3>+q!#O#&E^Lv}xVST{;Y3 zs3g)51I*3$yAM_iy~tCH?zwwx1lEQN&tRcwWCjhCn)Q4ENx0V(i*M-?J&JyCei8&S z`yVLEbShZj>m-(B9NU!Xx*ME@Em;Xw1>Y2fq48M3R|{U)f|0Rrl-HO*0xBOvu#0wt zEthKaY@LQ{s{InRC7pVt?90Ug%q7n%I{$2RaoP>!QPRh?e@a8n?8MAd1n>QwFWO=r z1zwDo$ZSX&{QdwjSeC>^pd!5CJfBZd<=>(MYEph;%c)EkmR1x|&oNdQO89#sWkivy zk~5J(eFVSkY!`j>-ZS$n#N#r;d(uTZMipfWl>_4Q3kxZbuZZ2v!a_|m-dxRQ6GViG zRYcYfkN$?7o{wDoynTW2f_+D_g6Z|^*H4d_A^jYN*@s{fE*ZQ-3(hKuXz2R{H@MQ< zhzO4^4f1a{_iQf7J7csSdn+v!dzKGB{M(Dp548L>&~*1pRLSdtD2cPo%~^8eX_Jwa z<2enRBKw<=HcD58r9NQLFiYr=anV-|-TIHAr4(`KF#km&9#4R%g@TM)*ZPYsNZM5B z62^Gsh9X5Uju5(WI(Za15!V6V#Ccbvi|M6lv#D&9Q0v3HT>vY?ygo=dV53)i8{;@_ z;rgL46J1lg9d}d53~%zstu;Xm64Q{{SPNB#D4(drVTD8{!cv!J@Dnen8_Wn82YljS4&p;TQ2_L9IXSt zAW`EB+rTw2`~OUu1HaK>O6jf{iMn$4QlaM1Yc5GQi1NYKltpln zk&>*kcQ-cpu(A0>AG8{*&I@bVJA-9W!wr)U^#{w*=a=q07?X?k*8>!O=F3umr0;4b zZcx+CG}NpNyj%^?Y86&EpqT+E&dT``_+4fyld7|@l)kflfzZArp_8-q>%>_ls?^QV zgDWFe@xG@2wpyFP^8AtER~&y+^$o;5dT>-~W9?aEd%TOgg|6xk&`+uxR=Lupx1jcU zn%DEBud^Iy)p);CY0(tX>v^I7YUW0-Qq#-PJIBCOotit;Kk1(U3IwAE^+Q;;ZZuhf zi7V4RwE6T=O!O1RB6EYnEhyZPDYzU1hzxr#(>%Kp8>*5AR*JB&{LN!E`ao~$ICs#W z-?&GiD}3{;{b0=Qb!2QQ_*453B-{zuB>1xlm6{Cq6NA$JH? z96;BbJI{7_%!~MbLs9DC1zsdbtzav1L9c*8rQ^KB?<8MqLosrC`TKU7y=NZ5V`IQt z>^0B(C{{$#v5v!x@#^f(9HSV5k8R6_iuX@wI_NG=$%b z@>2n(hGUw_99y!{4UpdxU6cCqPy4EQ#RuxUWgmc6X_W6`SyGf$e&8w@(Qg0*v#_{` zOjLa(5bLdf5)_6e$@yj%XxhTjZNg;>IFKL>z7Gd%YNI1or{>H*BP+5wD4%M3;-=GR zsQ1Bv#@!Zbdq!Hg@T*sD>jf4VP&i`Ay)Vg0ffBl~l=l}y(9GS}-9;3p!gQE3t+|Vj zhE?QMEz{lMA`IFx;7RT)o&2nq$w$;; z$r5WJZ(bz72cAOoV9yOed*zsfUAqFrhAiTD0(6vL&Z0qT+Tsq++(R|@r^$`L0!?-` z&v1X4<~1Ne0-riwgEV#eITbcIf3XoHc?=meAvN^F+;^ERkEKo${f0bK@7vZ(+)F1A zm6Xhl9N(nb?9LU&0lB**3A%&HK)SKiWS9vdIKDC}$Fu*H!D89_M;GgInj}eJv{m@} zR90g$1qp!TASyJZ$`%;>eElV#RL(a;r`%V9ML=*f$%^Hs+F%EC$5DVmnnv-Dx7~DqNb~f#yckU~SZI;=ZO+H7GPDw|A zc%uxh8zf$_6p*A*k8^6(sWDYgmDDqiQK=7M)8)T^(tEPBH{$-{Xf>A3+1DEm+=!*f zTg{wKz3e+8N@UOHNebE~0kyyDiLiXulCav>NExg=SlyadD*c(K;EGJjw5M6aS>G-= zOM(NKEe~Z0r9VXz#UAiGtpIe6}?dC6CIMi00k z#A5c5P$mCd#MDmFvC-IdCs^F?ZOfT89DLK-uh`-BRmXZq%=_Ps*kB5CqK=p05VN;l z%UCV`;UiU8ewJTPr~>9DF<75wR+-J8kL2j5rQxtU#dzi3ovK}G1^(rB%tOH8XcGdAXl1V2>>%7tD47oC5`VZ>R?!l&bCctVrARGWqI21C9^YhIcQdm zyV$yRN6}9!cN~E(YuPnw*c*FN&XIk9=HE(2Png}!`{F?+Ka6pMXg-1~(acgG8YC9o z(6e3p`DcwY)D@oTau83>fB)0f=$xEy+H zkGgUY&zFu9iM(dRvdE;~jDIQaQIJA)dYie>TJlaoB@;W$0uK1pF4dP9&Ne$ z>)b}80`dPbOkSn_!28MWl(jaz;@3YG7yR>@j1~u|>`m#ZXunk!fGKS}M{)y{VEex* zbIOtwTf)>5V|Qem$Imn09D8vq2C~dLgaZ3a>H-SU;WDw}HM^rA^ugQ({&Ly{ z_>_FXq8gz|0<`>$E|7rjkFQE~wX61qja~0;yqNv_;Pl5W>sbE#u zK0|^KTEfPOA!lhvOp)U3&G+1CHMOE&N?!YNWT0K^2D)OdP0*b%fH5cd5bJudzM$|+ z5!AB-XI!2j58Hi%4#|J}Fpik{AI-WgEg|?p4Ue&PNgWNS35_{U45pi0id~kd^Y87T zr++C%?Pa2SG_pHAlm-Sdfok^8(nP3i-nIHEO+Hr??zr%#U%rQ6;J$eF@>&@fXK`ny?!Is5gebUk~8ni7X~rA446}dyHtMlT*?f?39=mo zXs92j_1Zy{tHfvT;&n5`{1TXoJ8cJApRJc!2jfu5mAmX;Wn(ul!FDw~AhO(*bX%q9 zVy7!7vd~%X0m(gJa?KrS?sL4#g!w2D>NdHwzswB^E?W{0H2gx|qU*cy6Zs!3%&&S; zrc?-QM9&MI=nDZ7q*Ld@UjTTRPV@zot}fV0j+!hA;7AqDYdJD}E@b@u-*t|(BeNvv zv=gw`;Y(&5*o>_IYFGnt2`OmNZ$K;sl zJu*2M!2bI8mcU^N0g546pJMW63IN-VmeS2uppq}xI!WkKLJ23Y{qxGT2Z20)Z+?nR zO=XyJwaGu)Lux8r4)>(^4>UrRg;{diic=b>wjXTZExBN3E zNx%S_>4~72lhU}^*B8bzX(%!jJd&ZST#ZXB<5#)3Obq(($F=H|8e?FOc`H*S^!Z3a zM#;ELpvA$r{+3X$zPD=X(R+_ZDbAuW=Rp~k_R+A?z_9+)r*Fiv=1_Y7x5RX>82%Su z7XOLOPNBr^PQga);J{U_z`88cM=A_q>mI->QgCNI5s^uA#eF%!Dds} zLprJ8)RLiUNF|z~B%J+%@}MAQIh0I&7Sn_Y00i109WK^h`Z7{r>VOoCPCNBZp7b}y z&S6eqZeys42Tpz=^rTC+)TBbyNFP>`GT|i#xpJ3*#)g`es&2SHM&A^8LcFr#aer&C z3x5xn?*ZI2l>8%V*_X`Hs_1tp>_J1agazucw3sv2oEkn>(~j3RNzpo9KyB>~4^+(G z>-B~q>-rszY?q$DW#l#%9d;e@A9fW>OTdXqKhNhNA~H^(AOP5(RwrDrwsb66Gz&O7 zQ6Bx>dnICbWnDQXF!1hal;~14@!qgJn98$9N^AWKP+D^on}75UN9(`@5%PYx&J$tw zd`WjFm=2o11e7bhcKJ+pQ%1%JarNYH-Mox}QQ)mDz1u&WRRLerSP3zaApW5^Tn}pY zmh6b*MEUnINofo zADdHOqHcb9Q}QoAwE4>|DA|1}Q!F)I)Ks;nyv_40Y|ikY{H4J_A`xbfe|Zknjbr%a)5LJi+8=3>yE zt>?x53EePjo+1X{klHpsH|Mh)R_YBIXaSL#|I{mB0N#$@>28dBi#}UK&ZC55Y61a5Rxczf3GV{W=-_u& z@DP%v+p12=Y8elSB<*Z7kL}kDTE0CBwImA`r6w9vw@`IK0FyRXSXFt(CI60H3;As_ z6)Wwj8UBTRumxUWI^ezv9_${n_stvn%sr`rZWT5;-Z78>d|3KiQ-VaP4M&oEn5?B z3HMD-+V94KE;qtA!;|oC@CiAT`1EfZC%E;)dv~TSwUcqiSQl`AfGlbv3CCv<`1~yl zwGH>RsVTB(X${n?NoQHv3ATfGop#75%8zn$1GIsUQ=J2EKHsk{b?vu+;>Q#@j_w+e zN7X0dX6}wVcPy@PtwJ5(2`RYh%7P0h(W%s_GZfP3!5?0GJ=k$~xB&SusBq)N;oDoz zd=vSPBO{C0U}^!W&ie6D(~G0GDQUz{STaj(m5Ic*xUCpa1}%xc>?C@E0(|qB-=Sw` za6SF%(_-gUBRjY_% z!<4{%W6(CKDC40)?f#CXDF)1o)O9q9NuyWMsVFK}a`Z)#2Hh5~EVPp8E;W`qoiT`N z%R}sN7l}fiAS7VUVoESk9gCnSbRgABopa0GR+Xe?%j0jP-ig944vY)QEag^cep*0k z{mwjefA01Eqvio?s?B{1C~0SFjcbm@Dq#6huJor>ywaG}n|P~J;35liqa8Gr_}-N{ z<1CrCb2P>*K^txXleO}!I#bt)&JNi)HLJ@JRFd}h=$)_=1FoNuJAY=%OQ`PBxX@b1qxR>Lx)?YhL@5l+bdKT2W+{um zB|M`QV>6`?awblbdCRcYXY~Gtr{4L)Ue(T<$ve4^S!5!oYo2X=YD^p-AV;b$eELRy z8@bhXO*IOAID)VEof#rf`L_E;hVu8my^yf6_U*xgv9u z`$a83W#^j$wX>=pUDfV?4smzN&`h7~o{#1Pi$~C-u!7C!kFop0WdD?(bf>Gls zd}j3{bbWipe!NW7vE^Yex>Qr_gUg0ok)RV_;o!=~iIAaU@pWP_x*7k)$_($?h%Xjh zKM-_*(1u2Lg)t4+3iN z|BZke`Zoj=$KMDj!~X#Ss>h@MlBKHNN;_r!V2J-*qYT*=vvKy4~T*S4=W2K zEFkY6B@$ZEBELsfsXRNPNL_3=ttFCOT=*EfV3#hQ)jQby?TW;rm+#oYxMIbd>iM%o zFTJ?(5)S`colo>`LT}H{IXr02X<09-_v<(3_Ox(Z<^u-i)Dt0+7(t|=K&*n(EfQD% zmph&2$u%tG6ty_#({)bVhV!R;c^OK#mC4PO>G(&JDZgtmeT-8a&|IOA$F6Zj%)Yhd zZbfW=h?^@~VYuK^G%!XDQ>duA2$>0{AJw|FSx&t%z~JpZn#eaKLt{-_!#5mD(w@H; z#;epBRqNAzcQp55{ojj~>JBHQpb?1=1r**&G+muB+QO4p#eK% zUFo-Y!N}_3tE1lEuG*FRy5`(1P7S4zRzmgR_xtjKxF7i98TZghR@W0FNwhGv27HLc zjh>VS>?WNi9q`KAM=ev!oxf>Tmm#Ps1AWu+7NK2j&bukULbJNk zRYbsIAET|Io|wM%HED^VCWch_tMwXp5zBlLo8KYt#}1J}>VzNVo-Ft8V)B2oVcY(c zg}ro^@gdh&pk-a}lu5S*P27m8=>I{X{gDJoR5$;O3#goduMkaU^0~B|3)pa2Ee#VL3A}PuDWlhKbIpG? zKPatu>#b6shSC7EX<{K7uAk%gRX<99IM~Vk*?3&kCK76McTzpg8u}!LSAA7bWU(wz zyR14l_c)n_Zrp_1Z{m7l(D?Ai+?-y_OIhyhNK~Y3h8RYZYg511y%?3)v2M~ZWHM{+ zA2_B5vtSZ&HyBlmt1~mu7d+EmTeOwANyI!O)(KYEX*QeAY|5oCmic&%<~B*!F9fV5 z5+Brf05#^k3ol+ov;}ZOQVUp^_oQ)src_$F&YNWY;slBI7AUg46{yL zk69l!)Xx$%W#4~Jl7B`AFZb(QiCO5-RKOQ*$fcK7L^+iX4KBIbtH%WoZOq7AL5RR& z4U|xMDx)ABOV2nVA%EIZAicu{{)W-Zc7pgBmV7a;`e$ZEVDszh`Oow|6>kj!&)R1r|xCB@d;)d)ufY_Y{yBjM5Hu)Y|9qDpj{JjlVN#lZUxg5_L2&Bp#!NrLkbmd zjlM*E8y>Xb)|z20{1X?bE#-5w@gNN`@o4(}IrFwEc5CiKVOtY1g#7*MZEGDx zKpHsbQLt@?6XV&_VL5#c56aB~5DV$vTlp@$Av-lr#hduch~iBtAB4BpE>${RD%JXQ ze@k3Rgk(V0Kbpwyi8XioW16qBalt&Ki({K@w*q$JRVu*Jq8aXe^HfC6FF$ zYsevBq%XG)kcoBaB<^iLWJXKMvzC2*Bg|}GT0BM_^FNl#DOz@GkT|@G`Txv)#`F+l}h#m<04Md_47F8^pBR9UF|PB z-c;)L%5ir3_u<8{a;fq+ZDC_ zA%k*`YIm{aoqSI3*Tgs7oOpO%UV}qrR*hrJ(PfVhIYHy@t`v5HD6j2MkSWg~yWF^7_!y_#t)XR88>UBuAa3IHZ-0S{i14Y97Q=^^!9BC)Yh z)wmYx;z!tDnNlGh+)!%=;UM5gXYLUV_tgdbFML%Z84#>6G;qMGlQH^fO+19EfcAxj zcjWcO&PTX-nlwTGV)_G)Av}?_p=^AD_%vLn1Vn6f@&N2-t_wcMpnhVDfuMo04|Pw( z-NY>5@o!|ZB3kfTkf2Qb^j}ZW^(FX+?9rRuAWJwWL9D~$LH&^pEh~K;w^A)DkBdz! zC0GMOE73*M#FS8_6U~7%$CGh2H8pU>ChYh_ctR3xA6`CyJ#d3dVi%iKwi8nBRg?Eh zw=kBa$7dH|tym*PR7N7Mc7@*=yEqHqG>4&_hV0>hrK~s!mw|PurMOAJ%OPVIufkGJ zt`*WA#E)#aCzTdrRW_~Rn@?b9P(Il_Ee6|7P15*s`3b#A3%@L?37ox2`yE)p*8FD@ zLwEWb!{LfJEXY!rrQoi}?f*$!e(#M>!L0$92+YD2KHAr!h-yj19V$>R7>oC><+H=5 z+rxJUZ_LDYEDo*st$a<|FHYLeI2|0t1ucrGe@SlkCC~bg0pBw}X+J+n;FhyMGER5J z(z(MWHfjGm*2r)~H*V_u>w2y?$9~nzc{9IfUB`oJHIZw?#*hYvQ zsuNbRa;Vw6)CPGTEQj2~>1}9U|1+`Wf!N(EwuTZ2!)zBVEdOp5=2_kz->;aua);UX zj%VU#eK5c;YOXx=5UB5)_MDhj8NJi&+8%1tl2Ot0c!?@9a@*+D=nJIjRC#84MRru0 zYBtD#HCyB?tbVLDl`bZmojqLaJtyRF)l!-Xa!km)LTv^9%=RxV>Z<_3ahtZ z=qz3h^uOX_fveU{nEZ;>jAc9&?47;K7LlnraeQ%z82Iv()ROgxHI?(~O_f9qXKzM@uqDRoL3Ng3H?mybm>_Y6nCLuL?WWLHd#Xx5_{6%(AWc18 zdh$r{MKJcXOZJ`Rad}<^;W>0H7H!x;EPtaA%qnoZM)9) zS=%hHu`Dcfn?^S!d}F=iR#ip@>X765;oT|@f8Q@|*+05wsg1FVN=HJ%mdp9AEdOls#uVwb3ANS0#hzS*r4Zdz*!(>qOb-A5)Nrl+uk}paM zzJgtIu&p@uB%R|~x^}3B>6{mnsfd_H-kqrp)*BXt{kONimYa2MB0^u>0B^6zQ0DJ zrs{Ic@~$u#fu{qWyGpRRec;fROXiX~^q>1GLR=uMh3^~`Jsi|Gncf~)e|t3d;+j3s zQ)UHk7Z!PzE1EaB@d%6O2pKWjdT@`%?*P%+truvm)C9oCD73C@Or4%E;>{uCfum2I zA&z6Vy_!mX7Qcpe0o!->{etwFq}MA7w^_-z{U*8#N^g6_0*+Pt@h-&x4!;Rj%hOt# zYN+kI*GId>CHU=l@9XGD9&hp~w{-M_%$f~v+IS*##P*+r@rF`q63V&|A;%`!;`H(R zJ2l6Nz#wpEBs^CTG|QB9RK0X!4p5{h-49a29Kujbw@by@UM?~0xeLtxp@|HKf@HVW z?bdW!@7=84bgrSH%0Sd?Ww60~YJEY>GB-vGvevOEM?9!VRj+q@j9cvwi0lZPWVwAW z(QdUcY@$mu?7r5$-3OXl3PsD_WQ(=P1tMDtP5~3G5U*rW1d#BYPZy{!kG5-mO_DMj zS`Wjn098wvM;3n|<^CSA`wbM}wD60bxeci)d&{fJoU?zfWrpf!JofAC%xp@lv zh)`oX)#b&ftSxW6z2uW#aVju7xDKsXhnC;{O*c+f$htZ(5D>{QhR`lM4&Uqw(-Pxo zy%Mf#ynO!hnRJ%sSk?SHHnQcNPH_0Lka})n(AlN1kD5_Gy84hRD${xvHV;R2ER8!e zl}0*aLasdViOU%e(Gs=-A^)qH3r%@gK|ZbV_>umEooyzfo5K0_1$D#@zf92zzrN}2 z1=mNqZ*K3FfB55dtHS|)h2^_{`K_YsqxX924y&5W5#F(Fk|uhT(R0^?_fXw`D50@G;GbUy2?_17Zob|b z{l0{2TAzHzjIa9L_?@d=zWJi|10gd+5b5Tdsw94^EmgbLy0NU$snR@}J}YurZ68KD z?RSXiyt|+`otz6Ak{r#^8KT@sXw`wurfRL6f60sZ3HSrx-aj#(Ea}2?=der22sW1k zH^}Ukp{3RU_S9gBO+fCotnr?Dxt;Dg<}dsUiIu@08n%d~_f8HCO}j?0rD@hT)U|HS zUW1ocHXL|8S`-?~v>Y0Fblusj8t=`96IF-o*s zA|5`ATeQ@FgB**837|>W6?N0sp8f z{XIFboJ2qHnNQhGO8TsUIOE4O!#vM=_Y-wJIGQd0vWQdTtocfJ^^7UNPphT|XB?X% zs*ka6tya-(M~UF2f)1kII(t8OrX9Pe0aw)Wslj(FHo-Rq8ups+DK&4j!tcy|FJWdx zz2G68g{f)Ke`{5NHxH$RyzL<{Fv1?lstRrocpf&I>~_kcL|1&qy-apBemrtNNa-l( zZCuX~s>$*cB-ETcWni*HILh9o8PMjKT8AUFeNeo?W`lz@p6!dJ(g;3wI zh-+P#w(kz|4ieqtG~LBFKSJz%PC~R`S&hn5?$sv=z~N9DH#*;PtLXH8;;SEJKv!pt zKksMu=Gm24XW-o(S^k}+t?w~E`d|Nd#sGom%*$3*#+;6j^YoqMySX31ux40ZfO~wdxnXdF2{s!)YAHEky29;GG}U% zR`o7_EqO=!fYVG0S{U0`CWwYj3iz>S^QK<Gz%UwbxLHUf| zM-z7r7l|>H`iB4H(Z$9e}&BniFcq4@_2Ni3fKZy2C9P zeeAmMK`)l1NlKiNOQ!cI;iG3^MV>D&lJW&_D&3M0a zF}^PIC%&FWJzW;vmH}?D@djXIZqAXN4A^cZIwXQ*l3v`hG>XJChA8jRZ>f{c`^nhV z`9()QBtA^a(>rohYK~xm|5J?TpH=`R165S_0P7BH)CCTL^X9PKpyzunNw{fvxwJGW z1#4BFRsM;UmPaY9@P}MLk;T0}-5GW$Nuk5>6JV1U6FGr#%tAozmECUE1|m1 zhE>dLoEY~Pr}(3y{V=2w>6WdcM;h8)5yhQ?$P!-j?&sV%SytV!i z`6T(*q#L^9_CvMco9O&D%^wJkw~N4q18w)}Bgtcx!MtAu{FUy%h~^C|8G=GOl~7vf zU1;b%xx;LU76ZsCF7MmQrt_dCR}#*UOHqKzg`QY2txS1A>6?Fnz5~yZj9v_^(?EU5 z#X04OVeBT2wXT2S%I{CiX7B$0qrscI5KIc{quPBCnKteYT~%;~9_@r^>ti*s zNxC4>-k-X(_A7uU6s`5+(Z!&@YY)}$K0%|4^T!} ztAEB$IQ_X%xA&+N@QNqG#OOd|DaIh634vYo07;6sM9tI@?{i;ilqGg!Qn$1lJi{0+ zhs2ovYZo%reC}%6xVPdOO_hkdA5mwxI(F+o<^*Ki50u8{?d{S)MQij9^pm{y7`OO5 za+45e%DM~)&MQ;gy@2Q6iE!EW7|91jv1^i`$SMJuQ;6RB- zs8$lrJ#-F(3eCeP;rBn?Isne^OQa0MEDJ_{qUE!MnAVUV$>_Auv zPMeyU$^DzUR*wHNLnM_Et(zh$ANefw8S*y9(eMjBMShOYtQS`3{b3++Hwp?;ayZA2 zKY5Kl%y5DGX{E@L$+yD@+jN)#j3@CRu7ugnIMH5 z&$a_i>cmn29kmsEyRL}c9~mea%P&s09*@p`E$W=U)UY1MM#aV|V^LbjGz1XR!kn1^ zz_F38i9|RwKb-XEl>}%Vb7SDXO(U_h-Xo_8nuL!4!S0*n4zAR?dYS_F*nsB*A253; zxw0o0{tF8**^vYL6?5>!{7t78-*9mxq8uPAL@#Yswgco&N{YE1WspZr&1422?0|X5h00)^cE!J!Pt}o3DWDVKM`PbS5LXRi!5CG56+xl1%TMPQMicO8H!^77l zC_v~0)|#Q)?aBZa!FnB9T2tS{$qHZ`_ru$2u=4e7v)dTRhhn5@CuB29Um*oRBJRi} z<0?ElPeN5TzI^oJVQE{|JGJovpstiCkfZ|7`~Pm)TT- zR8hj}RMqcf)kSNK;sc0EYg3Q!#(7P2Jpz72r@Q!isxzR;1{He1PB)jqPu14BW<5dz z8JBascs)jAX?D(LQ8&Z*c(XD8@WG+rxYK@pjYIFXh)B_im+T*gcI=8Zewmz8o{$3- z2TDSWpagoo%kMat(X3`K08%hWqyVEOgK~9qUTMrZ|9ZR+@c)94S(^#JvB2JKAdVfT z?_^EPr+(G_waXYM<)zI2x~|T4Sy|0v99mCe?YCwSF^V{W0KO^x0HwW0ppiD#s=0daGFxu zvO&REnWJDCT>i#4j{7cuXuI+mEaE;u)JApxVD&-TUX4;2i=*xfl)9+HXe4M%?I&B? z;W70Od7PjO4cuG~stH|DoY|7>+V;KbAfRJ^H%2DA3Kyco*E z-$p;B`%Y7xf|pUS0fesJbd+f-gOSqZTm8mXlM;xJ9PW#R*Up5zX_ux*f{`sq40MAu z++WHz6$Q&+;Xj>lK8h{)VB_m{te{4SgoUvHe}I&Sq{k>&vd#;&VqoHeC==&Adm}av z@z)>eSCpB9sSfV7Ep96NhG+p1wqyodV~egtlt!@EEU&#}@Qw7}CikyE0paSC_R}o) z!TLD@^p^pL#0fe&dXL>PUD@Dwd}YLmiPNf4dmr{n!d_~%1gib9BshAunu7wB_u$4l zImN$h1RUOhoy1DnNo6Ki3;~*z+0K2P#&a9t8^~`{7tZq@S~e8frT+E#xsZTIy{?!k zp8AR)MGt?=Qbo4otPh{9h+M3PZT<#}KZSyfD@;R@0qp67Z={T|VEKcl*IdgCl#-To z{=jx_b_i*)G_gC@y2G15sC?iG>N0lt(Dc*!j9&3k28(T=xI>*H3rU6MQ7(V|+a(oy zb(MQ!Xav~Tf>=y+rER;0n&|<9?8i6iL?h32(f`g54cz#U6RxvF`Sjo;LZRGv?`41=ETAcR z)6N5y5scBkt&e*9z_T`d-t?@|=T%bN26(J1o6h>vz2|+nurQjk$<068*X)8m22wT( zQ>C1={qf_hhT`k5m!SzXCR#H5v)w49c#CM@SlMqjt9uGy3GG}j2HnISHQXsT-UmQ# zs@)WAmdF3T3;xYdUEm#*3Jaa>UJG^j0lpa63ax&;kdTi169-nFCS~QtB@bL>Gt;a3 zkv^x_Xf_iAeYb4<1#d>mt>llxdo&LqMrVv4F65c9r0F~TIYz3WEG5NY1%TJ0=-ILh zX&=0^z%xPGVD5x86I0PIcJ)^PFY47D4)@_!gG3KXdbq31Wl?>9`Qf_LO!^;Cq^$)a2>f;?~d{%MoAAn+;N z`&~Na22o9t!{ueHEAgOG;)yZ!IGy^5;bVKJw%((c<%isyGR`8SAlmE)SGFlP-y9mn zAvOVX<5tu|K@gx9BHiG6fI3uTSb+Y@#CP>q@Q7NcaWyS#&-gq zZT(n#B1HalDjOBzHme4&e-K!lEpzN^g6lQLeL}Bwq61V(^mSB=a@JxnH3ns_gTqat zx;+9_#~78wV$e0el}!13v)E7+UK$#plf5N>j~S z587SN^LoVKcJ_F&4;ASIOsx&?j{WH+LSncq*`a}1zyxCk;N`XGjOb_wNy5S1Y;hzn zMjCSu6AUlUK+7z5KG(yGTvxaWb&s~QGmD-zH#d)`(huIrI%mo}nw)I$lKts&0a0@L z#T9()IU;ld_9`xK_T{m?Ez4`lOK$;3g}hd^ps9NwX2y%pn4(1WEA ziSA;nE>wHT-Iu*G(G%=_;vB&N8hEUmFL^Gn&*~auwTv%0Pp<0>L6tCtQ3^!`KE|7< zl@u?GU@WA@h4GxwFR5G!MgdQhe-uQUUEl|^ZqW!XM=ECmtR>2R6Xh>kPP6Vk?cSJz z=+Ta296b@%LKMEiT|jgK(3W0dgKJMYnW)Y5h5kf7u~tA8(Tf%kP0MtA#OmYcdv`_c}mKjV{1^tJ2y1p_gYdfqJjh z3o-JxAuzu9KNVI#y-cgsbdL`^{3u<#CTyEv$(I)N`ILL~hy;xP7ri&_)Li`P<3=I3 zlLP9VSq7vF;btaV3odaIU>jxL?PibJr z7}#>#60V=fdpi7b_j_dl7dqVVjM^C)HGbibUE69*UF#x+M#onfh59bE!kf09Twe62R}O%e-L5!JXzPul0Oj$f*hf12?LiMSNZ4qR~r&z*$h zv8^@Pw%d`$%y`p|i+087Ow=$>#|Pcz^Jf#loR-|!N(ldbnSc8CK;`?>tey+~0UY^>HPotb0hpe!!KKSus%MW6_=%Dj z{6f&LXTdd%w5bH5S<^Q$f{OeL&I>5}P-kQkvCb^oz7EuFxcnl@q~O#-6MoHnzqen~ zv3ME~#t*uS(XcS!-rx zQB&39xz^{3s|m(zWBj(yJ`yKzjvL2zJQ11eySryE`SjeoGT1V&K-zgsUq9k@#oF27 zkMok^gYS>|N^NO8J?&GOMb+5Y#r@-~h*BC>iguJJ9g1xbH(saQK#M`@b z9au%0P8y;#Enc|R5$8mI(wa?50a6lvp$17~3tn!-Pn1N8wzfpyDf&KB@$$poz{BH+ zTKtQeI_!({cRSxzn3?C@d3>ixZl=tBZNxP#c=igzRx-VZ^3k!4_uX)1nJA7Z`G*`AH&_?MH zr^iJ#$s=O{{F4XpcRj4%HfDEpdiQ%M0uITK%AOfKaT3bv`Pt-2LU9T8+6b>=G5*Cv z7we1K32`_K?0J^!$a|$PespDh6U4WVZ$Z-rN;O%v_DFUb%xz!H2nfcHU8_Xm!DHcl zKt{(cM5RRwSTNhM(n1lg8ubjb;9jeWUHOH*QOijhXHHm(pbd11Sj-N8OFMjFArx?C z@-Wv-65oKUn_XdnZ@RkzO&i`lcYHpjk)abvJzO$e_4;>o(88Z7jT^DE;XkWKvJLMY zQ$LYl1axal&_nd?s2Z>~f|VQy)84F|N`HC%@$_s38$d_^xt023!69@zxx+M*+%HKI zWY`nq@}?mW$q;h$ODSXV^}~Zx9?3~oEZ|Zs^k|5~`TLCD&o^?69{ax4hk0yUljI6k zdDiMlF)M%dxC5TA#$)5>fWrQc@eLEAbI4ldzutV6^yZd{eG)}bo_5P<%;i?r zor@dSW2}jS6zRIEC9)4sr1CVP-_4#Uu*3M0`P*Z& zLCWRWrWIAHJ-m-`zoEX@Vp`(Y<;w)XnOc^e9ijEA8!>H`r*6h>KF0<_o#ilXHl_;Z zA?q4dK0|9gfWw$jW`G?d&9iMwpRw_l)gtkl_+IqbJwE^ZCX1_1LcW|&M5SRdqa60{ z-Q(^ayR?mFtUs0@pGtbOmj+j;9$T7@?2H&ZF6Iuw>xm?DCZ zgE0sYe1`j~eQesNYIp?h``t~+Q)lj2L}7d|8zswI5ZjOjhSBFlO^qpUaVjzmxV_Ql zvQnHC6Ut?rA*g=G?62CtaK8!x0ApT4;rg~}eR?xay+T+`Hsi(&xQ8;f(>1ol)yLFp zVeJ9KbXU1yO6mEtQ92p7ii^a$l5kUD(x;WGcCYwIXaoKZGwkBc%LxfIp%RW69SBZpx=V51f4a9~Ais%^%I}bY#6}o}ZyGgt z1iYkz3Pl{0G-CzDXeWV`?R_K*bSQ)&I`xBKuRU()t})J`Y%x{{I8P^^7yT8>vGBN2 znDq?pvLU99wjq!3md~_U|IZ1o%YK$Ghf-y|()!DBRXHUFaR(9*)Wlk7z>eb=UdHU_qa-M*M#(?aSk#Y~Q|_ktIYVB$OpZ*@kSPM0TGPOoU`mb}@{7AG?uhc+YYFp5O0z|9Ice=lML>UzVBcI_xSbiCJj9M@jg1gA;ABaK8vp3vHKaYvE7x&ZpS_u)qP_o3-c z_Urokoign2=#0G`bgSQR+s0jd`tk;%NjKsKr*bqpNG-+kS3;RQ2g=(*61pbhXLpka z^hzEL^KR26|x%KlijgXv?kLUDG#;5DVScHTI z0#&f=WzSpz-MYev)=xp3SYL2sKOb7PQEZCO)JblKqLO?Ob(P%@}eMs6I zi-qj)z_XB=G)h0d$*R!trTJSkf~qx}#YZ_^$ zp;2?qOaaR|mb@CJk((l=QIyWnZzpi`t}C0365Qbm4i~>X3o~P80zKvlLiY0OH0uHc zbE=7a#phCi&QOeQy{)p>^`8_?O%X9i{cU|jM>_tg^yHWB3t;%A-cGz4d!mOnT2)ey zT|C@{2g9pDhYm z&HQD3qHi<<81yHt>N3E<6jqua--3*`iFQtbC0_M$i0{)#P}~07qOOncuGb@GMAx%* zczRSGs}l?fBpTvDW*VNgzPjxp=VI&wLc@EH0(Kzg=)9~4YTHadfF#mm%iGbAEtz}2 zO>fbTb_Kf9pvN6gt(y>%1y0+zh)9K#TsYWZsU!4QUu+k`Jn^sJ*u66;hWRQ9$odKT z7emD$xR=1@-uLb@Bs)r93?Y}i({bWE^T!2Y*a-|X0Ib}yg{)n*XM^#b6>C-cOIrG1 zwTRM2%j{x(HJ+&BCr{1s3Td?xg_x%|y#j+AO>-{*9P1>a@9P;ZlMm;>^994U!h>)t zY6LoaQ7>SDQH>fX9RRnyF(3+-85;zaz-H7o)Q6fykQNK7P&2PyZ~~P5_|Yd^t>T)Xp!z@o zzRLt#{=Tjx6r)MS;%z5CAgERq)%rZb>j`lcSr91h_NTpA95RUjZjzCfHwcl8zJso%+cX` z4-PWTKrOJeJ71hwkn4%A%aDr-tn>%Q26*$bF^Y8a@S8}81v~xg!wb@VI9nOC1a9Rv ztk3dW??s@@qIAl5l~V6SSA%KNv^m=4M4|$QtV?XX^hv_OZ7n6d2NFsTGHHhJ-D9vm zmgEFy5QhQvX0Ofwyx+-LN5wCfi3d^yJ1nT$xRfjZ=Qijh<^(92{gy2>;uHF*ApO9u z_g@;t4K`UXu6yv*veqY#QM3pg1P&Mq+cqn0RsaQO^bd-0|iWcJiFQyZQ*X{;x-;wew%CEn=F_D=UoP-&VzoKYRN z5E~a?_h7GO1W^XnzmE-PXhs$YodvPMfaH~l26{`YvcEv=dO{8!WmV5-A_?&%FhnF1 zox?gA6PMq!Rm**NfFivG`lY_0pupof2!b^_zp6`@%de*!k30!?_=U%F4`QT+RPz}m zfFvwFDtt{0C)I$}_XTW%l9K!3`TCo(v7|t(!7+TVHi&(ljJK_{oiDvWlRlA8OWmKW zuS)#RYktslI(q9f%Itz~A5Zfcfqjw#5tK!L1Vpy*tIfC*3TV5ukv@184wsxd;sp0i zPKyzbC;7vIzTr-1jA+2f#c8W1bHPDvl+$g&Y-uBihnsFLaEtVj&hlUY%{dF>8^kXs z*WE@@*I`|JdPBwJj1cHbB@u=S$8@bkD4IR2iT61tro5Ku*vQWza2XqX&Rh-Ve$EiGxhq}Ge~j9TObWI%v>9qyNtEk1Dv z`vTiaRFj|MrL$%TKD$Tn<*QJ7--X)FH)>nikZ;0&X<$l~+yA^%K%-9JleEz+&N?z6 zlroiFh+W(YlWMQlP91sub*^t}zh2`9|JIl>&#u?y<=9IhLg&|AE`hvgPce3AdbBT* z7qy)|T!5Gl*QI5YH8vK`v5J>&E ztpVto?&Ea`k|_4b?LULXwXwH}NTo}~HwFlOoS}L`e?V+gNT|UGZE;oLDJd`|eE0)J zf&lZrCVJc79^q!Kvd%}KD|5^Ry!hBI0PM8z3%&eK5NfTTI_z8~6ktbpmG&xvl+v}r zkJU$P5r(x@vgZGr@6NL`0|4>D!adPgsc^eGGIyPqp)uEp+~esOg}GjRsVp-h&mHMY zrLKrl>)(@3&}#q3MXU^pft>?VM%fFVeR0cqj04&X16s}>;=0WR`OUer4AZx+`fiv# zdqMMxXQsHRX?dw|+2+0ShY`xZz45ak64hHD@OUFzkLQ-Bz@$TSIk7Pu<9YqjjRVKA z-N(vSg+VynIIHzd#@(j7jCERpj=$4m4=q~g%ir}kg2MqX5BF+cE-2=yu?j^zk&?=L z5KL=%d}Wo`BdSnC79u=>Vfg)ph(RXC#*g3`>}^A~f;B(zp$WepBCO*sB2t^(GM>jv zoEEE!Ifu!(p=@l?os?Ag-f;qpTPXq!6A;4=k$3*Eel!K1oiVMvlEt_|LsR9tKBGm~ znY|)(p<&w3oMmCuQr@$rx3B?i@a`u*pt`BP_Zj(AS}f+~OT@2d&vspby`5Bdy2QvO zAoOg=-ehaw={HF!r`N88sr23OGad7F9;?=#vK*~GxetmPGvmugnGsn^X>n;WBHqse zghQ0D_zC)P@g%AEgJ6rEJ0fv2DM!a>8Q;~{^4EiebSd>uCBZozY_G+=dtcX|P%%2y zza9!5XC9*oZq&)yC=8#)?hPwvSD9I>XX}Mtu2c;meu?0fPN7BDB^2UnMVx_C%|MgK zp?l`&z|cBNS{={?d>)yd`UHxzy&dd+)9{J%q(D1D8!=nN2r~`|rm5lD%f~o(zg;A* zVr@27#bkYz#7jN(3aZ~#iSZlo=&i?oVk*3wI93;M^v*Z^6jYUMiEi1D?L~Km)Vy@t^n4p*?%DeL!-yS>rcu#U|Rx zklsk>RsCkMdA0=Omq7=(uclBB9U*eV{Yf+b80EaiZB^R68$uv5%3&|I1_wf_jR;G=eiitx{zx$pY!MX5q=Y8%=3GKgz1f) zWvr;y+?-Mi-Y$-z5ir(h@aWF|+zXp$C(vjV&w*ama9L3DA&2gP4ABl{jCkAAep1gh z-aB$P>yO;c>6ExoD2C$#sg`XoguB#aNlMA)&n7t9lDY9_z+|64<*)D>9BYDl^;b3i zR+V&W>fn8B!{4Ve5;HrkMfwY^yDjWTDoY*7i@*X8mpeiw>?xkoSOTpfgR*cz4gCXR zggs>f+cQR45(2MEm%`oPiD%%}eCdIdw_>r8O^n}X>EQ;e_D}uu zeO=(|*xOqQ9qH?S4cYbVzaLL;=^si94ZxIlY>!^%y8c=;~q-L$AM^?9RAG~ty0JYd3%U;4=d3|dnuz^6kC ztdb&um`U)KJHUGV=T}zIi~s#sFnaJ|Fl|)+t0j>Qb@{V2#9J(W}< zkm>+xE@=Uinks13B`QzIPA?FNi$`T$lIF{!vAIwgW&(BT$8U!1EZt$hWb~gKbwbW5 zIaSnU%)CB&7S&$qr&_hHVZWmR-J23M3mJH1OfI$R6~bs}cyx3%ZOB$iB$ zz5#dvGtCHDF!G1dgs$Ubk|Jl92(^jqHHg)fT`QoD5dSI1wD;*pET`uPE zi44#rI&HfEm#+A0mU;_lCy)!6x9We!_-FWhsi0&vy4~<^Cp&`>#`F zN9-I;y`MLf6yA>?dtG@IwakrjlgjtBeO9rp16I=oa+4GG1&vw8{iZu>oBcXwQhoKn}k8ZkL(8MzvTo_J?y7n1U&Sb1Or8xD=6DY0#+ zvsi94d9SAYUQ*c%>HThh;qSVI%f)JEEk8N_xV_NCisxgot#u6hS^Q=7&+o0s601s= za!g^)nz;UzaY|?Uo#MNdJsAp~9<1H+mrCdR3D&h09I4eFPntf)3H@`j7pYP2eA|Y4 zb2kobab;1QA4DIMXcF!ha_W{0ugL@Qw;D+m85G9zeiFyd_1pnfwuc?ie;<$_lnie1 z&-ex}?&L;FY)wC}8UOrkS7U!m{^Aj1w0Rn2?T`QEQa^DZ{{w#@f9iGT9acph4)LT- z#H~$jEE2WjdflI#81?J)5c6w*DlqLWpSuUe~!I^t;RPD&nQ!$obZ&Y zy};#iovIOzexTa9U|NA+bwrX-M5T$LUh@A1>7u8)c;M;>Te#x^yfAHq6@GOTH!h2w zh40o=(KHQGPKW3&oc`rLy-ZhQszU+Dvp}iv>ooo$j0GU`zuJwnMGfs3q#@(thR}+( z6Lwv0ak2sX*2wKyatrQVN^KPsHM5*Zx>d0AGi5CX0^{?9bEg8YWl*4#3=lg_LS#Wl zxL?M|C?d@RZuULX={}5{m(~?G@867TbcENERVD`ZqYkz8@O({Dh*;~P$TZ}8TqRdB zT6S}{s3(@#uO%Gn@n}x((p&~shkzhNr&e8Ae@u8p#Q}SEe^cQ6cDzxxuucIj9InpZ zNCz4_o>*b927n?AnOC*$<@koMeajP-v=J?=`QQ9CtUUB*X@bAvVxN%sV4K?``%(Lw zlnpU^#I1e(#fXq6p5C=;Z`A?-7ONZk5vxeJ^!G6yXg&9y_=1pUN`E#KIr|`4xtoLhMST4|g*SewjQ*YR1vV!SmHEXU@jl7A&K&;2r@M zg?X^5aBXf}h_83CeW!e*6!w2F0WOqhdlC1p`A>^`uQwd#_-YhT6HNLXn#nIa)SY*C4o4wD<@?;^Ub2=h_Pl4hm%JF_DK~%>;x9d^LaLh=33wfT)Ify+9;EQ)r#S zdkQwUXZIIkUwnu=zWqBWkN!-7TKD-sXSU`24)p``FzRpg()AuqVlI!fJ*U8F=Q%?P zveUnBA%K4>19&imdK{^W_FDfjb6Y|DPn{hTgWTsNtGIZFenEAWmjhaUGjAn9ZwSAV zSIb z#KvY^Hl6SJKe&B=4ZCuVQc8H)5Jn%Nx8JKth=8f)v^5APetj zro})9Y0zPOc*^sBHRQp#&VnBJS7neBx4oQK8KxTaFpX%eX<^(!WMP`DhevR2kc`&q zxO}!b(7A5K$NnjdZ<^@YZm6{^6yGR1neDPXBD$lawG&@~e$F7(&R(Z9K1=lD9;r52 z%1aey?6FXtA|4v$lL~uc|8n$+@AuE)Yrv;y={re9FxZqr4j8ZLEXx&FLOgIaRRvfvPO_(9A9u3ioG>DXB-(qr?ei*X<~L$2 zL@#R%^>RsgPO0&0gA9LaDkA&E`#6prZ;7IVMVW@4P+#v#$*HOrl(E|uoR{YFu+Cw5 zjCtwTjQ6|@Li2*@6@`hg z&ne79cUS7{@vh6AJG4mhK~1FeuO1P5y4;6L_ah=_fT7W$R*R&Jhkajy?h_lzL#zdl zpJfc@O})OC5J>CrHKy3fmEU`9d_k}ApA}29#Yj6Ciw(ryk~uu26%={3Ei3JleXA(W zCv~JPf??1C+NAGJWXs`qO)6r3MCf7lk&jOpLxx(CVGHCibQp--82G8HmruwSmFR~} zq>oH6wVV|2fCDm8sJwXKozxLHHUNt!hTO?Qnfc*A#x(|p0$PN?O#D48fN#9TXC135C^;nO-Wuor|Mb9 zPOZg+o~%3ehkGRap76fN!n>#gCjzh5GbuO#(4o|;z1)=6=xE(o)kbBC zt?k4YNdKih_$-35iq12)IW@qT!v{J;2@x9;r1$E}iG6*orv#eE6cL%#Ow*4cZdM|8 z=PAFBqwX0paE2t;;hI+veO+$Kw^L=@6E*j5$$VU=xi{z2DpuJJ@dV!d!q$$7k?@4z zY<}5CFf^O;?k1lCvchfTscz6FXWrS(6Sd5Qu&GfPj3eDhE?EY3OXRPXcR5lZl4M)^rnaLvAAjT zj62^gI95_o9&tBy#`IA+UorsJ-Po3MkbSlRuhMPXI6jmS;!;-zo)Hrg`UYT38$&$b zn5|6I^-}n9)s71%vM8W)c}EqZmRs3F?&J&C{E}%vr!^!>)9-GL%e-ZJ^B!d$*q~kV z9x&?sJryLJWV^PnL-w|wAQ0~%Uz7WswQK7xiVYnJQsub%vF=ONd1<^38c<6=#vH(r zC@#GGB?7y8q9^rR;oUKO#pz}`R+^_Ai|#VUDqa?22hp!uPM4D2nFr>S#F?I<99(S0 zwLyd0tJ!W&G%9@W_z)*cR@iQsbXfS>&e(JU?vrydUo`T>Wgi=^2|jq0u){*V7-sXZ zT)_verl%xZiV60dDN;+AY6vk1&KRkD+Z62UT_9QaT73d&C8Y;1liREr`&tDVS#%26 zF1&hFp8f+*$dW-`n`GMgSwzu33GaK-+_xxfI*Kx!P!7*DeyIO@a!b!}74z!*yIuE% z{e?~v!zTtWMQQ0gHDb&|w?(P{GHfifogD88FkCgtZxXa*uSN>RXJ^WWkTmx(?}NYZ z#m~6C-1g{iR|sQ;m6BAvS#H$m<_&7Ubt8X$(x9`n=Hb$$MjkQIwUOJOzlE2$r+;u- zxy>kxZ46?q?_cp}Hg){O9}CCBcd3n0>oI?<2vvKNgpC&a9-(>V1om%b(E*1#?UwoK zAN*|Iyw7Wvcc$V|QB!LAjFkQZy}g#&Kum_b0@9LN=4~XS7j)=_8OtJ z3gSQo1bd2n54baBW#x1)rS)?sZ1>P*tV(vATY&>&Q21@QFGA|tbELqzYmsJq^#{WC zJEf7ter<#Mr`K{PS}AsKr`LX*)aw2zy>qfNDB$ua8|IT|&YzX{`I2WSPxFXLC8D9s zxue+M8!g0#&0o1uOrdg8aQx|%pIEu(2zseDw(p{dLuQ>yod=no#streIXlQ7=$=8t za;`xd^Wg>xyiU_Jld#g|=pmAVecS;sW_};gj6^$e;Ad2ZqnO3K+zZU>R*_U5zRI9-SREZj#-Bdn*5t+dLmD~MBR}hkBo*nXGo+;d0 zCHLW`tbK->so>2^utnor*=nSJP0EW_4XULar6UD^0RL|*nrf)Wp8-xT^&_VLG_j}J zqd9&6S$gP>*#Am(+0bM{Les)f95-s4#T6Q+Woce32J#4kh zEfXVku_6w#);JqP4DoDWHhG1~VVXoSebUZC3HO#2frL~3@^RXycTu~xSUrLeHcT}U z!0KtFm3+BU{|$vM`(coO(060;^=Zi!c+!u9xyaF&JFZj z@qmZI(3D;=8FXkn@zmOP@xRkz6wpcV-HJ3;1NRI!I0$P=z^j^ZwsPpsF1Nl?n}c7| zscHPK@K6P`0@b~zwBx#E(UZL73BJzyqBQ=;aJKXjQ`mibI7q1aol@!nT{54ib-~cS zu%Kot&%uoi{~nPZ+CQ?5stN;zzs-2t1yU4uD~8$jVM+Zrl{!kL;DZm~O>u`+t5h$@ zu;UxLO0X`?P!4UEF;Wb#`icX|5IiS2eNGLv1@UTHp63B0M6R z{73`Qvf0ORbZRHAF?^+Mtkk}%JDy<%bj=RB$GEU{Qi!90IxOiRCN+dXS|(oY zRE?~Mid544cxvOtfR7-!7+$klW1d~?xX+6HVct;BU#;4gBr8_6CRnX9iE4TMwJOhX zAI&w!JoNQi5Z6eE<5X~87;Ut>^Ve;R-kS|^``eDA0Wy?JpskFS`5bmf-H+-esIQLk+8LAr7gCH^Vi6Ka#kQ9hhINOEZ9O2I^ z9`10A$X4ozh`k@-aExLXZ8&l6PxJ3%exV{h*>>z!C=$RCKD65^(vj>drMmex278W`k!cTEz1J^H{<0A5m3*~KYMWNI7$y*nA=NZ_VObyU z`JXHjplXDqjzH`aDf?thPu!aG1yVHaMjIAFP+x?mk6ee5-=}49lKJf(!YzKDeD#j} zlzZ9ZiGhoX%zLu*dCSHux96_=*W*`@Vc6>)k7d*hf~3-=+#K?Y2qM?x>WBGVFPCG? z=6NC42*jtb%|E#YN}ay}?(=7Bg?Woj5luSJwz~0Nfj#BbHMUyveNYR<^hNo>&_jp( zESD6pcr;s>UPhVEscBfmWlcSc$OGLIn~YYr=yFvw&nrrOj+$5|W?xH9bEh9O;9;mw z{aHjBI=TN`&>ik9Vr3c^vpjKOH;d*~RGCFmz^+G&DPQ=z8nth@`u^Ar%f-e4DfmkD z#nQ+Ny~o3y?*3rS?KCickd$Y6??bN2d}ro+CQFuAzN7%HDlV1ms2LCuIT?SvhI}8s ztGFJbQ5{>3=xc~Z4yKMku``MlIz=0pP(#pkiSduRM)C4n|5sA9>S8R$sh3+IFw8N< zh#%?5!n9QuH|W?Ju|uYfxyemZXgfu6cH&_bcdUHIW@7neoX-8k_`7VClG=XV7UIUW zQmR4;X4EK-xWY4b|23^!1pY2MHHe#W`~kjPYO66~uq)3D8Fn6nx%H(o0!y|e7%5v} z%5+yrXC`wocZeau(bGO!xwE@P;%AHBXt)wpK-4c;QYgWd8m>02eW1S95N?4-0>VHI z^)=zJkKv*b2R*vWC#}%)1<#0k=cXq`zpry^NbH`3Uxg^9uS-w)bYwZ&O$CMRbgkTc zSXT0xVOmMu4er#rItD!y3BETBe1VSP13RrvE`en8yo9Kk1ghA+b3xWr!}u2&D-s1n zSSCrcdk5j$P~V7TycYIEQM3vD$+kz?<|Q=5aiaz03W0TDji!bBc*@Qze2 zuCAvX`X_u>2_`Y3pqRb&mwz`O&JFd-$vs`(!BBMS=JO^fJycycxfAF6HqWTfHg?%P z@JYx~sRcNHG>8Ys*I6dNe7{jL+C}GQ$8zmfdlc95HXs*Bin#78E!~3ikVj9nJB7w> zw#;$elKSmvU5H6L)eYlUJT^>MGl~-cAkVZBLEOp>f)C-PW$cq~v1|3e9S8s;8kR=s z#(7Ai3mMteLJFAMFU>DUm?+26Wk;jc#`SneL$E{eUUpV4Rw3;nQjtUEz z8dImXPK;NljMHDcBYC}qK>|TqgXD3c(M?MtJf>0#AevBLF=9J)CF45^3mQzc<!owzUIkKtSt?qcRM?fUEGE2&l%A2goiju0j%Bm? zdcae~PwoxO=Y@_k0ZI?y^Xz~9y25y4RS0zIP9Yv(0+T@@pvu3)leYlvIJo}*5lreQ h{`a=m|9z7~!P^Rl&or|1hiJg1t7W8Fs$u`v{{azq%gF!$ literal 0 HcmV?d00001 diff --git a/docs/_static/img/telescope.png b/docs/_static/img/telescope.png new file mode 100644 index 0000000000000000000000000000000000000000..5a76da4e7939a9e21957627a9839849dccedd306 GIT binary patch literal 65807 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 literal 0 HcmV?d00001 diff --git a/docs/_static/js/copybutton.js b/docs/_static/js/copybutton.js new file mode 100644 index 0000000..01e9a68 --- /dev/null +++ b/docs/_static/js/copybutton.js @@ -0,0 +1,64 @@ +$(document).ready(function() { + /* Add a [>>>] button on the top-right corner of code samples to hide + * the >>> and ... prompts and the output and thus make the code + * copyable. */ + var div = $('.highlight-python .highlight,' + + '.highlight-python3 .highlight,' + + '.highlight-pycon .highlight,' + + '.highlight-default .highlight') + var pre = div.find('pre'); + + // get the styles from the current theme + pre.parent().parent().css('position', 'relative'); + var hide_text = 'Hide the prompts and output'; + var show_text = 'Show the prompts and output'; + var border_width = pre.css('border-top-width'); + var border_style = pre.css('border-top-style'); + //var border_color = pre.css('border-top-color'); + var border_color = 'rgba(0,0,0,0.4)'; + var button_styles = { + 'cursor':'pointer', 'position': 'absolute', 'top': '0', 'right': '0', + 'border-color': border_color, 'border-style': border_style, + 'border-width': border_width, 'color': border_color, 'text-size': '65%', + 'font-family': 'monospace', 'padding-left': '0.2em', 'padding-right': '0.2em', + 'border-radius': '0 3px 0 0' + } + + // create and add the button to all the code blocks that contain >>> + div.each(function(index) { + var jthis = $(this); + if (jthis.find('.gp').length > 0) { + var button = $('>>>'); + button.css(button_styles) + button.attr('title', hide_text); + button.data('hidden', 'false'); + jthis.prepend(button); + } + // tracebacks (.gt) contain bare text elements that need to be + // wrapped in a span to work with .nextUntil() (see later) + jthis.find('pre:has(.gt)').contents().filter(function() { + return ((this.nodeType == 3) && (this.data.trim().length > 0)); + }).wrap(''); + }); + + // define the behavior of the button when it's clicked + $('.copybutton').click(function(e){ + e.preventDefault(); + var button = $(this); + if (button.data('hidden') === 'false') { + // hide the code output + button.parent().find('.go, .gp, .gt').hide(); + button.next('pre').find('.gt').nextUntil('.gp, .go').css('visibility', 'hidden'); + button.css('text-decoration', 'line-through'); + button.attr('title', show_text); + button.data('hidden', 'true'); + } else { + // show the code output + button.parent().find('.go, .gp, .gt').show(); + button.next('pre').find('.gt').nextUntil('.gp, .go').css('visibility', 'visible'); + button.css('text-decoration', 'none'); + button.attr('title', hide_text); + button.data('hidden', 'false'); + } + }); +}); diff --git a/docs/about.rst b/docs/about.rst new file mode 100644 index 0000000..da1d2c5 --- /dev/null +++ b/docs/about.rst @@ -0,0 +1,3 @@ +***** +About +***** diff --git a/docs/api/convolvable.rst b/docs/api/convolvable.rst new file mode 100644 index 0000000..56c1d7f --- /dev/null +++ b/docs/api/convolvable.rst @@ -0,0 +1,27 @@ +.. _api-convolvable: + +lentil.convolvable +================== + +.. autosummary:: + + lentil.convolvable.Jitter + lentil.convolvable.Smear + lentil.convolvable.Pixel + lentil.convolvable.Convolvable + +.. autoclass:: lentil.convolvable.Jitter + :members: + :special-members: __call__ + +.. autoclass:: lentil.convolvable.Smear + :members: + :special-members: __call__ + +.. autoclass:: lentil.convolvable.Pixel + :members: + :special-members: __call__ + +.. autoclass:: lentil.convolvable.Convolvable + :members: + :special-members: __call__ diff --git a/docs/api/detector.rst b/docs/api/detector.rst new file mode 100644 index 0000000..7379590 --- /dev/null +++ b/docs/api/detector.rst @@ -0,0 +1,157 @@ +.. _api-detector: + +lentil.detector +=============== + +Gain +---- +.. autosummary:: + + lentil.detector.Gain + lentil.detector.PolynomialGain + +Dark Signals +------------ +.. autosummary:: + + lentil.detector.DarkSignal + lentil.detector.DarkCurrent + lentil.detector.Rule07DarkCurrent + +Random Noise +------------ +.. autosummary:: + + lentil.detector.RandomNoise + lentil.detector.ShotNoise + lentil.detector.GaussianShotNoise + lentil.detector.ReadNoise + lentil.detector.ChargeDiffusion + +Fixed Pattern Noise +------------------- +.. autosummary:: + + lentil.detector.FPN + lentil.detector.NormalFPN + lentil.detector.LognormalFPN + lentil.detector.PRNU + lentil.detector.DarkCurrentFPN + lentil.detector.PixelOffsetFPN + lentil.detector.ColumnOffsetFPN + +Defects +------- +.. autosummary:: + + lentil.detector.Defect + lentil.detector.PixelMask + lentil.detector.CosmicRay + + +.. Gain + +.. autoclass:: lentil.detector.Gain + :members: + :special-members: __call__ + +.. autoclass:: lentil.detector.PolynomialGain + :members: + :inherited-members: + :special-members: __call__ + +.. Dark Signals + +.. autoclass:: lentil.detector.DarkSignal + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.DarkCurrent + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.Rule07DarkCurrent + :members: + :inherited-members: + :special-members: __call__ + +.. Random noise + +.. autoclass:: lentil.detector.RandomNoise + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.ShotNoise + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.GaussianShotNoise + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.ReadNoise + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.ChargeDiffusion + :members: + :inherited-members: + :special-members: __call__ + +.. Fixed Pattern Noise + +.. autoclass:: lentil.detector.FPN + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.NormalFPN + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.LognormalFPN + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.PRNU + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.DarkCurrentFPN + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.PixelOffsetFPN + :members: + :inherited-members: + :special-members: __call__ + +.. autoclass:: lentil.detector.ColumnOffsetFPN + :members: + :inherited-members: + :special-members: __call__ + +.. Defects + +.. autoclass:: lentil.detector.Defect + :members: + :special-members: __call__ + +.. autoclass:: lentil.detector.PixelMask + :members: + :special-members: __call__ + +.. autoclass:: lentil.detector.CosmicRay + :members: + :inherited-members: + :special-members: __call__ diff --git a/docs/api/lentil.rst b/docs/api/lentil.rst new file mode 100644 index 0000000..f83115b --- /dev/null +++ b/docs/api/lentil.rst @@ -0,0 +1,72 @@ +.. _api-lentil: + +****** +lentil +****** + +.. currentmodule:: lentil + +Optical Planes +============== +.. autosummary:: + + lentil.Plane + lentil.Pupil + lentil.Image + lentil.Detector + +Focal Planes +============ +.. autosummary:: + + lentil.FPA + lentil.BayerFPA + +Special Planes +============== +.. autosummary:: + + lentil.Grism + +Diffraction Modeling +==================== +.. autosummary:: + + lentil.propagate + +Coordinate Transformations +========================== +.. autosummary:: + + lentil.Rotate + lentil.Flip + + +.. autoclass:: lentil.Plane + :members: + +.. autoclass:: lentil.Pupil + :members: + +.. autoclass:: lentil.Image + :members: + +.. autoclass:: lentil.Detector + :members: + +.. autoclass:: lentil.FPA + :members: + +.. autoclass:: lentil.BayerFPA + :members: + +.. autoclass:: lentil.Grism + :members: + +.. autofunction:: lentil.propagate + +.. autoclass:: lentil.Rotate + :members: + +.. autoclass:: lentil.Flip + :members: diff --git a/docs/api/modeltools.rst b/docs/api/modeltools.rst new file mode 100644 index 0000000..afa2676 --- /dev/null +++ b/docs/api/modeltools.rst @@ -0,0 +1,25 @@ +.. _api-modeltools: + +lentil.modeltools +================= + +.. autosummary:: + + lentil.modeltools.cached_property + lentil.modeltools.normalize_power + lentil.modeltools.iterable_amplitude + lentil.modeltools.iterable_mask + lentil.modeltools.iterable_phase + lentil.modeltools.iterable_segmask + +.. autoclass:: lentil.modeltools.cached_property + +.. autofunction:: lentil.modeltools.normalize_power + +.. autofunction:: lentil.modeltools.iterable_amplitude + +.. autofunction:: lentil.modeltools.iterable_mask + +.. autofunction:: lentil.modeltools.iterable_phase + +.. autofunction:: lentil.modeltools.iterable_segmask diff --git a/docs/api/private.rst b/docs/api/private.rst new file mode 100644 index 0000000..99b265d --- /dev/null +++ b/docs/api/private.rst @@ -0,0 +1,50 @@ +.. _api-private: + +Private API +=========== + +lentil.cache +------------ +.. autosummary:: + + lentil.cache.Cache + +.. autoclass:: lentil.cache.Cache + :members: + +lentil.fourier +-------------- +.. autosummary:: + + lentil.fourier.dft2 + lentil.fourier.idft2 + +.. autofunction:: lentil.fourier.dft2 +.. autofunction:: lentil.fourier.idft2 + +lentil.prop +----------- +.. autosummary:: + + lentil.prop.Propagate + +.. autoclass:: lentil.prop.Propagate + :members: + + +lentil.wavefront +---------------- +.. autosummary:: + + lentil.wavefront.Wavefront + lentil.wavefront.Angle + lentil.wavefront.Shift + +.. autoclass:: lentil.wavefront.Wavefront + :members: + +.. autoclass:: lentil.wavefront.Angle + :members: + +.. autoclass:: lentil.wavefront.Shift + :members: diff --git a/docs/api/radiometry.rst b/docs/api/radiometry.rst new file mode 100644 index 0000000..1417d85 --- /dev/null +++ b/docs/api/radiometry.rst @@ -0,0 +1,49 @@ +.. _api-radiometry: + +lentil.radiometry +================= + +Spectrum +-------- +.. autosummary:: + + lentil.radiometry.Spectrum + +Blackbody +--------- +.. autosummary:: + + lentil.radiometry.Blackbody + lentil.radiometry.planck_radiance + lentil.radiometry.planck_exitance + lentil.radiometry.vegaflux + +Materials +--------- +.. autosummary:: + + lentil.radiometry.Material + lentil.radiometry.path_transmission + lentil.radiometry.path_emission + +.. autoclass:: lentil.radiometry.Spectrum + :members: + +.. autoclass:: lentil.radiometry.Blackbody + :members: + :inherited-members: + :noindex: + +.. automethod:: lentil.radiometry.planck_radiance + +.. automethod:: lentil.radiometry.planck_exitance + +.. automethod:: lentil.radiometry.vegaflux + +.. autoclass:: lentil.radiometry.Material + :members: + +.. autofunction:: lentil.radiometry.path_transmission + +.. autofunction:: lentil.radiometry.path_emission + diff --git a/docs/api/util.rst b/docs/api/util.rst new file mode 100644 index 0000000..04cb255 --- /dev/null +++ b/docs/api/util.rst @@ -0,0 +1,67 @@ +.. _api-util: + +lentil.util +=========== + +Image Manipulation +------------------ +.. autosummary:: + + lentil.util.boundary + lentil.util.centroid + lentil.util.pad + lentil.util.rebin + lentil.util.rescale + lentil.util.coordinates + +Shapes +------ +.. autosummary:: + + lentil.util.circle + lentil.util.circlemask + lentil.util.hexagon + lentil.util.slit + lentil.util.mesh + +Kernels +------- +.. autosummary:: + + lentil.util.gaussian2d + +Sparse Matrix Utilities +----------------------- +.. autosummary:: + + lentil.util.v2m + lentil.util.m2v + lentil.util.col_major_to_row_major + lentil.util.make_mask + lentil.util.make_index + +Miscellaneous +------------- +.. autosummary:: + + lentil.util.pixelscale_nyquist + + +.. autofunction:: lentil.util.boundary +.. autofunction:: lentil.util.centroid +.. autofunction:: lentil.util.pad +.. autofunction:: lentil.util.rebin +.. autofunction:: lentil.util.rescale +.. autofunction:: lentil.util.coordinates +.. autofunction:: lentil.util.circle +.. autofunction:: lentil.util.circlemask +.. autofunction:: lentil.util.hexagon +.. autofunction:: lentil.util.slit +.. autofunction:: lentil.util.mesh +.. autofunction:: lentil.util.gaussian2d +.. autofunction:: lentil.util.v2m +.. autofunction:: lentil.util.m2v +.. autofunction:: lentil.util.col_major_to_row_major +.. autofunction:: lentil.util.make_mask +.. autofunction:: lentil.util.make_index +.. autofunction:: lentil.util.pixelscale_nyquist diff --git a/docs/api/wfe.rst b/docs/api/wfe.rst new file mode 100644 index 0000000..be0a8b9 --- /dev/null +++ b/docs/api/wfe.rst @@ -0,0 +1,12 @@ +.. _api-wfe: + +lentil.wfe +========== + +.. autosummary:: + + lentil.wfe.power_spectrum + lentil.wfe.translation_defocus + +.. autofunction:: lentil.wfe.power_spectrum +.. autofunction:: lentil.wfe.translation_defocus diff --git a/docs/api/zernike.rst b/docs/api/zernike.rst new file mode 100644 index 0000000..7ffa8e1 --- /dev/null +++ b/docs/api/zernike.rst @@ -0,0 +1,20 @@ +.. _api-zernike: + +lentil.zernike +============== + +.. autosummary:: + + lentil.zernike.zernike + lentil.zernike.zernike_basis + lentil.zernike.zernike_compose + lentil.zernike.zernike_coordinates + lentil.zernike.zernike_fit + lentil.zernike.zernike_remove + +.. autofunction:: lentil.zernike.zernike +.. autofunction:: lentil.zernike.zernike_basis +.. autofunction:: lentil.zernike.zernike_compose +.. autofunction:: lentil.zernike.zernike_coordinates +.. autofunction:: lentil.zernike.zernike_fit +.. autofunction:: lentil.zernike.zernike_remove diff --git a/docs/basics.rst b/docs/basics.rst new file mode 100644 index 0000000..5870c53 --- /dev/null +++ b/docs/basics.rst @@ -0,0 +1,51 @@ +****** +Basics +****** +Lentil provides a framework for defining optical planes and combining them to model +diffraction and other imaging effects. It can be used to create models with varying +levels of complexity; from simple prototypes to extremely high-fidelity models of ground +or space telescopes. Lentil was developed to be: + +* *User friendly* - a simple, consistent interface optimized for common use cases. + +* *Modular* - models are made by combining configurable building blocks. It is easy to + replace or update individual elements without impacting the rest of the model. + +* *Easy to extend* - core objects are designed to be subclassed, modified, extended, + ripped apart, and put back together in different ways. + + +Importing Lentil +================ +The recommended syntax for importing Lentil is + +.. code-block:: python3 + + >>> import lentil + +If you'd prefer to use Lentil *en français*, you can try + +.. code-block:: python3 + + >>> import lentil as le + +The functions and classes imported to the root namespace make up Lentil's core +functionality. Several additional submodules provide additional functionality. The +list below summarizes the general organization of Lentil's public namespace: + +* :ref:`lentil` - core classes and propagation functionality +* :ref:`lentil.convolvable` - classes for representing common imaging + artifacts via convolution +* :ref:`lentil.detector` - classes for representing focal plane noise + sources +* :ref:`lentil.modeltools` - classes, decorators, and functions to + simplify the creation of rich models +* :ref:`lentil.radiometry` - classes for performing computational + radiometry +* :ref:`lentil.util` - utility functions +* :ref:`lentil.wfe` - classes for representing sources of wavefront error +* :ref:`lentil.zernike` - classes for creating and working with Zernike + polynomials + +A Simple Example +================ diff --git a/docs/changes.rst b/docs/changes.rst new file mode 100644 index 0000000..825b50a --- /dev/null +++ b/docs/changes.rst @@ -0,0 +1,5 @@ +.. _changes: + +.. currentmodule:: lentil + +.. include:: ../CHANGES.rst diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..05e580b --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,73 @@ +# Configuration file for the Sphinx documentation builder. + +import os +import sys +import re + +from datetime import datetime + +# -- Path setup -------------------------------------------------------------- + +sys.path.insert(0, os.path.abspath('../')) +path = os.path.abspath(os.path.dirname(__file__)) + + +# -- Project information ----------------------------------------------------- + +project = 'Lentil' +author = 'Andy Kee' +copyright = f'{datetime.now().year} California Institute of Technology' + +with open(os.path.normpath(os.path.join(path, '..', 'lentil', '__init__.py'))) as f: + version = release = re.search("__version__ = '(.*?)'", f.read()).group(1) + + +# -- General configuration --------------------------------------------------- + +extensions = ['sphinx.ext.autodoc', + 'sphinx.ext.autosummary', + 'sphinx.ext.mathjax', + 'sphinx.ext.napoleon', + 'sphinx.ext.viewcode'] +templates_path = ['_templates'] +source_suffix = '.rst' +master_doc = 'index' +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] + + +# -- Options for HTML output ------------------------------------------------- + +html_theme = 'candle' +html_theme_options = { + 'prev_next_buttons_location': None, + 'collapse_navigation': False, + 'display_version': True, + 'logo_only': True, + 'navbar_links': [ + ('Get Started', 'https://lentil.readthedocs.io/en/latest/index.html#get-started'), + ('User Guide', 'https://lentil.readthedocs.io/en/latest/index.html#user-guide'), + ('API', 'https://lentil.readthedocs.io/en/latest/index.html#api'), + ('Resources', 'https://lentil.readthedocs.io/en/latest/index.html#resources'), + ('Github', 'https://github.com/andykee/lentil') + ] +} +html_logo = '_static/img/lentil.png' + +html_static_path = ['_static'] +html_show_sphinx = False +html_show_sourcelink = False +html_scaled_image_link = False + +html_js_files = ['js/copybutton.js'] + +pygments_style = 'default' + +# if true, the current module name will be prepended to all description +# unit titles (such as .. function::). +add_module_names = True + +autodoc_default_options = { + 'member-order': 'alphabetical', + 'exclude-members': '__init__, __weakref__, __dict__, __module__' +} + diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..7d051d3 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,65 @@ +.. title:: Lentil + +******************** +Lentil Documentation +******************** + +Lentil is a Python library for modeling the imaging chain of an optical system. +It was originally developed at NASA's Jet Propulsion Lab by the Wavefront Sensing and +Control group (383E) to provide an easy to use framework for simulating point spread +functions of segmented aperture telescopes. + +.. note:: + + Lentil is still under active development and new features continue to be added. + Until Lentil reaches version 1.0, the API is not guaranteed to be stable, but + changes breaking backwards compatibility will be noted. + +.. toctree:: + :caption: Get Started + :name: get_started + :maxdepth: 1 + + installation + basics + +.. toctree:: + :caption: User Guide + :name: user-guide + :maxdepth: 1 + + user_guide/overview + user_guide/plane + user_guide/diffraction + user_guide/wavefront_error + user_guide/radiometry + user_guide/focal_planes + user_guide/imaging_artifacts + patterns/index + user_guide/performance + user_guide/matlab + +.. toctree:: + :caption: API + :name: api + :maxdepth: 1 + + api/lentil + api/convolvable + api/detector + api/modeltools + api/radiometry + api/util + api/wfe + api/zernike + api/private + +.. toctree:: + :caption: Resources + :name: resources + :maxdepth: 1 + + changes + Issues + about + License diff --git a/docs/installation.rst b/docs/installation.rst new file mode 100644 index 0000000..230bcd8 --- /dev/null +++ b/docs/installation.rst @@ -0,0 +1,22 @@ +.. _installation: + +############ +Installation +############ + +Install Lentil with: + +.. code-block:: bash + + pip install lentil + +The latest development version of Lentil can be installed from GitHub: + +.. code-block:: bash + + git clone https://github.com/andykee/lentil.git + cd lentil + pip install -e . + +Lentil requires `Python `_ 3.7 or newer, +`numpy `_, and `scipy `_. diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..922152e --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=. +set BUILDDIR=_build + +if "%1" == "" goto help + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% + +:end +popd diff --git a/docs/patterns/general/attributes.rst b/docs/patterns/general/attributes.rst new file mode 100644 index 0000000..01b3f05 --- /dev/null +++ b/docs/patterns/general/attributes.rst @@ -0,0 +1,106 @@ +System Attributes and Common Data +================================= + +Defining system attributes +-------------------------- +System attributes should be defined as constants in whichever module makes the most +sense. When other modules require access to an attribute, it should be imported from the +module in which it is defined. In this way, attributes can be used throughout the model +but only need to be changed/updated in one place. For example: + +.. code:: python3 + + import lentil + + FOCAL_LENGTH = 3 + PM_DIAMETER = 0.3 + + class TinyPupil(lentil.Pupil): + def __init__(self): + super().__init__(focal_length=FOCAL_LENGTH, diameter=PM_DIAMETER) + + +Loading Numpy ``.npy`` and ``.npz`` files +----------------------------------------- +Numpy data stored in ``.npy`` and ``.npz`` files should be loaded with the +`numpy.load `_ +command. + +* ``.npy`` files store single arrays +* ``.npz`` files store multiple arrays in a dictionary-like mapping + +We'll update the example above to load in some additional Numpy data: + + +.. code:: python3 + + import numpy as np + import lentil + + FOCAL_LENGTH = 3 + PM_DIAMETER = 0.3 + + AMPLITUDE = np.load('amp.npy') + with np.load('mask.npz') as data: + MASK = data['mask'] + + pupil = lentil.Pupil(focal_length=FOCAL_LENGTH, + diameter=DIAMETER, + mask=MASK, + amplitude=AMPLITUDE) + + +Loading ``FITS`` files +---------------------- +FITS files are most easily loaded using Astropy. You'll have to figure out which Header +Data Unit (HDU) stores the data you need, but the interface is otherwise fairly +straightforward: + +.. code:: python3 + + from astropy.io import fits + + hdul = fits.open('opd.fits') + OPD = hdul[0].data + + +More details are available in the `astropy.io.fits `_ +documentation. + +Loading MATLAB ``.MAT`` files +----------------------------- +For v6 and v7 to v7.2 MAT files, scipy.io.loadmat does the trick. MATLAB 7.3 format MAT +files are HDF5 and not supported by scipy.io.loadmat but can probably be loaded by some +other HDF5 Python library. + +.. code:: python3 + + from scipy.io import loadmat + + mat_contents = loadmat('opd.mat') + OPD = mat_contents('opd') + + +More details are available in the `scipy.io.loadmat `_ +documentation. + +.. note:: + + The easiest way to deal with MAT files is to convert them to Numpy arrays with + `mat2ndarray `_, + get them in to Python, and save them using numpy.save. + + +Loading ``CSV`` files +--------------------- + +.. code:: python3 + + import numpy as np + + OPD = np.genfromtxt('opd.csv', delimiter=',', ship_header=1) + +More details are available in the `numpy.genfromtxt `_ +documenation. + + diff --git a/docs/patterns/general/large.rst b/docs/patterns/general/large.rst new file mode 100644 index 0000000..6be9df4 --- /dev/null +++ b/docs/patterns/general/large.rst @@ -0,0 +1,86 @@ +Larger Models +============= +A simple Lentil model can be written in a single file but as the model grows, +maintaining all the code in a single file becomes more difficult. It usually makes more +sense to divide the code into several smaller *modules* and interact with the modules +via a single *package*. The model package should be divided into modules in some logical +way. One way to separate the code is: + +* A top-level module containing the main model and providing linkage between the + individual components (primarily the optical model, radiometric model, and detector + model +* An module that defines the model's optical planes +* A module defining the model's radiometric properties (if this is very simple, it can + be included in the top-level or planes module) +* A module for the detector. If a model needs to represent multiple detectors, they + can be grouped in a single ``detector.py`` module, or be broken out into individual + modules. +* A ``data`` subdirectory for holding static data. This subdirectory can be further + subdivided as needed for easier organization. +* Top-level subdirectories for documentation and tests +* A top-level ``scripts`` subdirectory can be useful for holding commonly used scripts + for interacting with the model + +A fairly standard directory structure might look something like this: + +.. code-block:: none + + ~/dev/tiny-lentil + ├── tiny_telescope/ + │ ├── __init__.py + │ ├── detector.py + │ ├── tiny.py + │ ├── planes.py + │ ├── radiometry.py + │ └── data/ + │ ├── detector_qe.csv + │ ├── pupil_mask.npy + │ └── sensitivities.npz + ├── docs/ + ├── scripts/ + ├── tests/ + ├── .gitignore + ├── README.md + └── setup.py + +If the ``tiny.py`` module contains the top level object called ``TinyTelescope``, the +``__init__.py`` should look like this: + +.. code-block:: python3 + + from tiny_telescope.tiny import TinyTelescope + +With a model defined in this way, users can interact with it in a standard way: + +.. code-block:: python3 + + >>> from tiny_telescope import TinyTelescope + >>> t = TinyTelescope() + +**setyp.py** + +.. code-block:: python3 + + import os + from setuptools import setup + + setup( + name='tiny-monocle', + version='1.0.0', + author='Steve Jobs', + author_email='steve@apple.com', + packages=['tiny_telescope'], + package_data={'tiny_telescope': ['data/*']}, + install_requires=['lentil>=0.1'], + python_requires='>=3.7', + ) + +**.gitignore** + +.. code-block:: none + + __pycache__/ + *.pyc + *.m~ + .DS_Store + *.swp diff --git a/docs/patterns/general/simple.rst b/docs/patterns/general/simple.rst new file mode 100644 index 0000000..98c801f --- /dev/null +++ b/docs/patterns/general/simple.rst @@ -0,0 +1,66 @@ +Simple Models +============= +All but the simplest models will benefit from being developed in Python modules. Simple +models not requiring extensive custom code development can often be written in a single +module. + +A simple model may have a directory structure that looks something like this: + +.. code-block:: none + + ~/dev/tiny-lentil + ├── tiny_telescope/ + │ ├── __init__.py + │ ├── tiny.py + │ ├── detector_qe.csv + │ ├── pupil_mask.npy + │ └── sensitivities.npz + ├── .gitignore + ├── README.md + └── setup.py + +* The ``tiny.py`` module should contain all of the code needed to represent model + behaviors +* Additional static files are included as needed + +If the ``tiny.py`` module contains the top level object called ``TinyTelescope``, the +``__init__.py`` should look like this: + +.. code-block:: python3 + + from tiny_telescope.tiny import TinyTelescope + +With a model defined in this way, users can interact with it in a standard way: + +.. code-block:: python3 + + >>> from tiny_telescope import TinyTelescope + >>> t = TinyTelescope() + +**setyp.py** + +.. code-block:: python3 + + import os + from setuptools import setup + + setup( + name='tiny-lentil', + version='1.0.0', + author='Steve Jobs', + author_email='steve@apple.com', + packages=['tiny_telescope'], + package_data={'tiny_telescope': ['data/*']}, + install_requires=['lentil>=0.1'], + python_requires='>=3.7', + ) + +**.gitignore** + +.. code-block:: none + + __pycache__/ + *.pyc + *.m~ + .DS_Store + *.swp diff --git a/docs/patterns/index.rst b/docs/patterns/index.rst new file mode 100644 index 0000000..670bd9e --- /dev/null +++ b/docs/patterns/index.rst @@ -0,0 +1,43 @@ +.. _patterns: + +************** +Model Patterns +************** + +General +======= +.. toctree:: + :maxdepth: 1 + + general/simple + general/large + general/attributes + +Integration +=========== + +Optics +====== +.. toctree:: + :maxdepth: 1 + + optics/filter_wheel + optics/rb_element + +Radiometry +========== +.. toctree:: + :maxdepth: 1 + + radiometry/propagation + radiometry/source_coupling + radiometry/self_emission + radiometry/complex_sources + radiometry/source_defocus + +MATLAB +====== +.. toctree:: + :maxdepth: 1 + + matlab/matlab_interface diff --git a/docs/patterns/matlab/matlab_interface.rst b/docs/patterns/matlab/matlab_interface.rst new file mode 100644 index 0000000..fe7401c --- /dev/null +++ b/docs/patterns/matlab/matlab_interface.rst @@ -0,0 +1,80 @@ +.. _cookbook-matlab: + +Simple MATLAB Interface Class +============================= + +Consider the following simple Lentil model which consists of an instrument, optical +system, and detector: + +.. code-block:: python3 + + import lentil + + class TinyInstrument(mo.Instrument): + optical_system = TinyOpticalSystem() + detector = TinyDetector() + + class TinyOpticalSystem(mo.SimpleOpticalSystem): + diameter = 1 + focal_length = 8 + pixelscale = self.diameter/512 + detector_pixelscale = 5e-6 + + def amplitude(self): + return le.util.circle((512,512), 256) + + class TinyDetector(mo.FPA): + pixelscale = 5e-6 + shape = (512,512) + qe = le.radiometry.Spectrum(wave=[400, 600, 1000], value=[0.4, 0.8, 0.05],\ + waveunits='nm', valueunits=None) + gain = le.detector.Gain(gain=2.44, saturation_capacity=10000) + +A corresponding MATLAB class that provides an interface to the instrument looks like +this: + +.. code-block:: matlab + + classdef TinyInstrument < handle + + properties(Hidden): + cls + end + + methods + function self = TinyInstrument + self.cls = py.tiny.TinyInstrument() + end + end + + end + +The MATLAB interface can be easily packaged up for delivery with the Python model by +including it in a to-level subdirectory: + +.. code-block:: none + :emphasize-lines: 12,13,14,15 + + ~/dev/tiny-lentil + ├── tiny_telescope/ + │ ├── __init__.py + │ ├── detector.py + │ ├── tiny.py + │ ├── pupil.py + │ ├── radiometry.py + │ └── data/ + │ ├── detector_qe.csv + │ ├── pupil_mask.npy + │ └── sensitivities.npz + ├── matlab/ + │ ├── mat2ndarray.m + │ ├── ndarray2mat.m + │ └── tiny.m + ├── docs/ + ├── scripts/ + ├── tests/ + ├── .gitignore + ├── README.md + └── setup.py + +Note the inclusion of ``mat2ndarray.m`` and ``ndarray2mat``. diff --git a/docs/patterns/optics/filter_wheel.rst b/docs/patterns/optics/filter_wheel.rst new file mode 100644 index 0000000..2b3b8aa --- /dev/null +++ b/docs/patterns/optics/filter_wheel.rst @@ -0,0 +1,127 @@ +Implementing a Filter Wheel +=========================== + +Implementing a filter wheel requires managing state (we need some way to keep track of +which filter has been selected and is "active"). In most simple cases, changing filters +only impacts the radiometric properties of a model. More complicated cases like when +optical aberrations are filter dependent or when the filter wheel includes a grism +require changing both the radiometric and optical models. + +Filter wheel function for managing radiometric model +---------------------------------------------------- +When selecting different filters only changes the radiometric properties of a model, +a filter wheel can be represented by a simple ``bandpass`` function. The function +accepts a filter name as its only argument, and returns the model's optical bandpass: + +.. code-block:: python3 + + import numpy as np + import lentil + + telescope = lentil.radiometry.Spectrum(wave=np.arange(400,751), + value=0.8*np.ones(351), + waveunit='nm', + valueunit=None) + + open = lentil.radiometry.Spectrum(wave=np.arange(400,751), + value=np.ones(351), + waveunit='nm', + valueunit=None) + + f420n = lentil.radiometry.Spectrum(wave=np.arange(410,431), + value=np.ones(21), + waveunit='nm', + valueunit=None) + + def bandpass(filter_name): + if filter.upper() == 'OPEN': + return telescope * open + elif filter.upper() == 'F420N': + return telescope * f420n + else: + raise ValueError('Unknown filter') + + +Filter wheel function and custom code for managing radiometric and optical models +--------------------------------------------------------------------------------- +The following approach is useful when a filter wheel selection also has an impact on the +optical model. In addition to updating the radiometric model, the reference to a filter +plane is adjusted in the model's ``planes`` list used for propagation. In this case, +we'll add a grism. First, we'll include the grism in the radiometric model: + +.. code-block:: python3 + + import numpy as np + import lentil + + telescope = lentil.radiometry.Spectrum(wave=np.arange(400,751), + value=0.8*np.ones(351), + waveunit='nm', + valueunit=None) + + open = lentil.radiometry.Spectrum(wave=np.arange(400,751), + value=np.ones(351), + waveunit='nm', + valueunit=None) + + f420n = lentil.radiometry.Spectrum(wave=np.arange(410,431), + value=np.ones(21), + waveunit='nm', + valueunit=None) + + grism = lentil.radiometry.Spectrum(wave=np.arange(450,651), + value=np.ones(201), + waveunit='nm', + valueunit=None) + + + def bandpass(filter_name): + if filter.upper() == 'OPEN': + return telescope * open + elif filter.upper() == 'F420N': + return telescope * f420n + elif filter.upper() == 'GRISM': + return telescope * grism + else: + raise ValueError('Unknown filter') + + +Next, we'll import the radiometric model and update our optical model to slot in the +``Grism`` plane when it is selected. Notice that because the other filters don't have +any optical effect, they are represented by clean ``Plane()`` objects. + +.. code-block:: python3 + + from examplemodel.planes import Pupil, Grism + from examplemodel.detector import Detector + from examplemodel import radiometry + + class ExampleModel: + def __init__(self): + self._pupil = Pupil() + self._detector = Detector() + self._filters = {'OPEN': mo.Plane(), + 'F420N': mo.Plane(), + 'GRISM': Grism()} + + self.filter = 'OPEN' + + @property + def _planes(self): + return [self._pupil, self._filter, self._detector] + + @property + def filter(self): + return self._filter_name + + @filter.setter + def filter(self, name): + try: + self._filter = self._filters[name.upper()] + self._filter_name = name.upper() + except KeyError: + raise ValueError('Unknown filter', name) + + @property + def bandpass(self): + return radiometry.bandpass(self.filter) diff --git a/docs/patterns/optics/rb_element.rst b/docs/patterns/optics/rb_element.rst new file mode 100644 index 0000000..3c8d993 --- /dev/null +++ b/docs/patterns/optics/rb_element.rst @@ -0,0 +1,109 @@ +Developing an Element with 6DOF Rigid Body Control +================================================== +The example below assumes a ``dwdx`` influence function matrix is available. + +.. code-block:: python3 + + import lentil + + class RBElement(lentil.Plane): + + def __init__(self): + # Establish the initial pose state as zeros + self._x = np.zeros(6) + + # Define a WFE object which will return an OPD when called with a state. + # dwdx is an influence function matrix mapping pose change (dx) to + # wavefront (dw). + self.rb_wfe = lentil.wfe.ParameterizedWFE(basis = dwdx) + + @property + def opd(self): + return self.rb_wfe(self.x, reshape=True) + + @property + def x(self): + return self._x + + def translate(self, x=0, y=0, z=0): + self.perturb([0, 0, 0, x, y, z]) + + def rotate(self, x=0, y=0, z=0): + self.perturb([x, y, z, 0, 0, 0]) + + def perturb(self, dx): + self._x = self._x + dx + + +A slightly more involved model also bookkeeps rigid body actuator stroke, includes +actuator length limits, and introduces a small RBA stepping error every time the +element is perturbed. In addition to ``dwdx``, this example requires a ``dxdu`` +influence function matrix. + + +.. code-block:: python3 + + import numpy as np + import lentil + + class RBElement(mo.Element): + + def __init__(self): + # Establish the initial pose state as zeros + self._x = np.zeros(6) + + # Define a WFE object which will return an OPD when called with a state. + # dwdx is an influence function matrix mapping pose change (dx) to + # wavefront (dw). + self.rb_wfe = le.wfe.ParameterizedWFE(basis = dwdx) + + # Establish the initial rigid body actuator stroke as zeros + self._u = np.zeros(6) + + # Define RBA stroke limits and stepping error + self._umin = -0.5e-3 + self._umax = 0.5e-3 + self._uerror = 1e-6 + + + # dxdu is an influence function matrix which maps RBA stroke (du) to + # pose change (dx) + self._dxdu = dxdu + + @property + def opd(self): + return self.rb_wfe(self.x, reshape=True) + + @property + def x(self): + return self._x + + def translate(self, x=0, y=0, z=0): + self.perturb([0, 0, 0, x, y, z]) + + def rotate(self, x=0, y=0, z=0): + self.perturb([x, y, z, 0, 0, 0]) + + def perturb(self, dx): + # Compute desired command in actuator space + du = np.dot(np.linang.pinv(self._dxdu), dx) + + # Compute random stepping error + uerror = np.random.uniform(low=-0.5*self._uerror, high=0.5*self._uerror, size=6) + + # The stepping error only applies to actuators involved in this move + umove = np.zeros(6) + umove[np.nonzero(du)] = 1 + + # Include the stepping error on the moving actuators + du = du + (uerror * umove) + + # Enforce stroke limits + du[du > self._umax] = self._umax + du[du < self._umin] = self._umin + + # Update u + self._u = self._u + du + + # Update x + self._x = self._x + np.dot(self._dxdu, du) diff --git a/docs/patterns/radiometry/complex_sources.rst b/docs/patterns/radiometry/complex_sources.rst new file mode 100644 index 0000000..f959355 --- /dev/null +++ b/docs/patterns/radiometry/complex_sources.rst @@ -0,0 +1,5 @@ +Developing Complex Sources +========================== + + +Document update() meature here diff --git a/docs/patterns/radiometry/propagation.rst b/docs/patterns/radiometry/propagation.rst new file mode 100644 index 0000000..ad75242 --- /dev/null +++ b/docs/patterns/radiometry/propagation.rst @@ -0,0 +1,159 @@ +Performing Radiometrically Correct Propagations +=============================================== + +We'll define a simple pupil, detector, and source object that returns at-aperture +irradiance in terms of photons/s/m^2. Note we must normalize the amplitude array +using :func:`~lentil.util.normalize_power` to ensure the source flux is preserved +through the diffraction propagation. + +.. code:: pycon + + >>> import numpy as np + >>> import matplotlib.pyplot as plt + >>> import lentil + >>> amp = lentil.util.circle((256, 256), 128) + >>> amp = lentil.util.normalize_power(amp) + >>> pupil = lentil.Pupil(diameter=1, focal_length=10, pixelscale=1/256, amplitude=amp) + >>> detector = lentil.Detector(pixelscale=5e-6, shape=(1024,1024)) + >>> source = lentil.radiometry.Spectrum(wave=np.arange(350,701), + ... value=1e4*np.ones(351), + ... waveunit='nm', valueunit='photlam') + +Now we can call propagate. Note we must provide wavelength in terms of meters and +multiply the source irradiance by the collecting area to get photons/second. + +.. code:: pycon + + >>> psf = lentil.propagate([pupil, detector], + ... wave=source.wave*1e-9, + ... trans=source.value*(np.pi*(pupil.diameter/2)**2), + ... npix=32) + >>> print('Source flux: ', np.floor(np.sum(psf)), 'photons/second') + Source flux: 2730045.0 photons/second + + >>> plt.imshow(psf) + +.. image:: ../../_static/img/psf_32.png + :width: 300px + +We can increase the performance of the propagation by pre-binning the source flux. This +preserves the integrated power of the source, but will wash out any fine features +present in the source's spectral response. + +.. code:: pycon + + >>> binned_wave = np.arange(350, 701, 50) + >>> binned_flux = source.bin(binned_wave, valueunit=source.valueunit) + >>> psf = lentil.propagate([pupil, detector], + ... wave=binned_wave*1e-9, + ... trans=binned_flux*(np.pi*(pupil.diameter/2)**2), + ... npix=32) + >>> print('Source flux: ', np.floor(np.sum(psf)), 'photons/second') + Source flux: 2722236.0 photons/second + + >>> plt.imshow(psf) + +.. image:: ../../_static/img/psf_32.png + :width: 300px + +The resulting images and total flux are very nearly the same, but the binned propagation +runs 50 times faster. + +.. code:: python3 + + import numpy as np + import lentil + + class Model: + + # We assume we have already defined a pupil, detector, and source object and + # that the source object returns at-aperture irradiance + pupil = Pupil() + detector = Detector() + source = Source() + + planes = [pupil, detector] + + def propagate(self, npix=None, oversample=2, rebin=True, tilt='phase', + npix_chip=None, wave_sampling=25e-9, flux_trim_tol=1e-2): + + bandpass = self.pupil.transmission + bandpass.trim(flux_trim_tol) + + if wave_sampling: + start = bandpass.wave[0] + stop = bandpass.wave[-1] + num = int(np.round((stop-start)/wave_sampling*1e9))) + wave = np.linspace(start, stop, num) + trans = bandpass.sample(wave) + else: + wave = bandpass.wave + trans = bandpass.value + + return lentil.propagate(self.planes, wave*1e-9, trans, npix, npix_chip, + oversample, rebin, tilt, flatten=True) + +If we would like to render an image as read out by the detector, we add light_flux and +image methods to the Model class: + + +.. code:: python3 + + import numpy as np + import lentil + + class Model: + + ... + + def light_flux, self, qe=1): + flux.to('photlam') + flux *= self.pupil.transmission + flux *= qe # flux is now in e-/s + return flux + + def image(self, ts, npix=None, window=None, nframes=1, oversample=2, + tilt='phase', npix_chip=None, pixelate=True, warn_saturate=False, + wave_sampling=25e-9, flux_trim_tol=1e-2): + + flux = self.light_flux(self.source, qe=self.detector.qe) + flux.trim(flux_trim_tol) + + if wave_sampling: + start = flux.wave[0] + stop = flux.wave[-1] + num = int(np.round((stop-start)/(wave_sampling*1e9))) + wave = np.linspace(start, stop, num) + else: + wave = flux.wave + + binned_flux = flux.bin(wave, waveunit=flux.waveunit) + + # do the propagation + img = lentil.propagate(self.planes, + wave=wave * 1e-9, + weight=binned_flux, + npix=npix, + oversample=oversample, + rebin=False, + tilt=tilt, + npix_chip=npix_chip, + flatten=True) + + frame = np.empty((nframes, img.shape[0]//oversample, img.shape[1]//oversample)) + + for f in np.arange(nframes): + frame[f] = self.detector.frame(flux=img, + ts=ts, + wave=None, + waveunit=None, + oversample=oversample, + pixelate=pixelate, + collect_charge=False, + window=window, + warn_saturate=warn_saturate) + + if nframes == 1: + frame = frame[0, :, :] + + return frame diff --git a/docs/patterns/radiometry/self_emission.rst b/docs/patterns/radiometry/self_emission.rst new file mode 100644 index 0000000..49ad46b --- /dev/null +++ b/docs/patterns/radiometry/self_emission.rst @@ -0,0 +1,32 @@ +Including Self-Emission Flux in IR Models +========================================= + +.. code:: python3 + + class Model: + + ... + + def background_flux(self, qe=1): + + pixel_area = self.detector.pixelscale**2 + optics = pixel_area * self.pupil.omega * self.pupil.emission + + return optics * qe + + def image(...): + + ... + + + # do the propagation + img = lentil.propagate(...) + + # include the background + background = self.background_flux(qe=self.detector.qe) + background = background.integrate() * np.ones_like(img) + background = background / oversample**2 # We have to account for the fact that our pixels are oversampled at this point + img += background + + # simulate a frame + frame = self.detector.frame(flux=img, ...) diff --git a/docs/patterns/radiometry/source_coupling.rst b/docs/patterns/radiometry/source_coupling.rst new file mode 100644 index 0000000..a8eefe5 --- /dev/null +++ b/docs/patterns/radiometry/source_coupling.rst @@ -0,0 +1,9 @@ +Coupling a source into an optical system +======================================== + +Show common scenarios: + +* Star +* Fiber in free space (to lens) +* Fiber to OAP (collimated to instrument) +* Fiber inside instrument (double pass) diff --git a/docs/patterns/radiometry/source_defocus.rst b/docs/patterns/radiometry/source_defocus.rst new file mode 100644 index 0000000..577844e --- /dev/null +++ b/docs/patterns/radiometry/source_defocus.rst @@ -0,0 +1,7 @@ +Representing Source Defocus +=========================== + + +Show combination of defocus plane with spectrum object + +How to monkey patch this in to OpticalSystem planes diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..71cb249 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,2 @@ +sphinx>=3.0 +git+git://github.com/andykee/candle-sphinx-theme#egg=candle-sphinx-theme diff --git a/docs/user_guide/diffraction.rst b/docs/user_guide/diffraction.rst new file mode 100644 index 0000000..23dc05f --- /dev/null +++ b/docs/user_guide/diffraction.rst @@ -0,0 +1,124 @@ +******************** +Modeling Diffraction +******************** + +.. _diffraction-sampling: + +Sampling +======== +.. image:: ../_static/img/propagate_sampling.png + :width: 450px + :align: center + +.. image:: ../_static/img/propagate_fourier_period.png + :width: 550px + :align: center + +Specifying npix and npix_chip +============================= +.. image:: ../_static/img/propagate_npix.png + :width: 450px + :align: center + + +.. image:: ../_static/img/propagate_npix_small.png + :width: 450px + :align: center + + +.. image:: ../_static/img/propagate_npix_chip.png + :width: 450px + :align: center + + +.. _diffraction-tilt: + +Working with large tilts +======================== +.. image:: ../_static/img/propagate_tilt_phase.png + :width: 450px + :align: center + + +.. image:: ../_static/img/propagate_tilt_phase_wrap.png + :width: 650px + :align: center + + +.. image:: ../_static/img/propagate_tilt_angle.png + :width: 575px + :align: center + + +.. image:: ../_static/img/propagate_tilt_angle_steps.png + :width: 800px + :align: center + + +.. _diffraction-fraunhofer: + +Fraunhofer Diffraction +====================== + +.. The vast majority of real world optical systems can be adequately modeled using the +.. far-field diffraction approximation. With this approximation, the relationship +.. between pupil and image planes is given by a two-dimensional Fourier transform. + +.. Monocle uses the standard FFT approach for transforming between pupil and image +.. planes. For propagations from a pupil to discretely sampled :class:`~monocle.Detector` +.. plane, Monocle uses the more general form of the Discrete Fourier Transform (DFT). +.. While the DFT is slower than the FFT for similarly sized arrays, it provides a great +.. deal of flexibility in output plane sampling and sizing when compared with the FFT. +.. This makes the DFT ideally suited for performing propagations to discretely sampled +.. image planes where it is often desirable to compute a finely sampled image over a +.. relatively small number of pixels [2]_. + +The Plane-Wavefront interaction is governed by the Plane's multiply() method. Generally +speaking, the multiply method constructs a complex phasor from a Plane or Pupil phase +and amplitude and Wavefront wavelength and multiplies the wavefront data by it. The +type and direction of the Fourier transfer used to propagate between planes depends on +the wavefront's planetype and the planetype of the destination plane. The table below +describes the possible combinations: + ++------------------------+-----------------------------+--------------------+ +| Wavefront planetype | Destination plane planetype | Propagation method | ++========================+=============================+====================+ +| Pupil | Pupil | None | ++------------------------+-----------------------------+--------------------+ +| Pupil | Image | FFT | ++------------------------+-----------------------------+--------------------+ +| Pupil | Detector | DFT | ++------------------------+-----------------------------+--------------------+ +| Image | Pupil | IFFT | ++------------------------+-----------------------------+--------------------+ +| Image | Image | None | ++------------------------+-----------------------------+--------------------+ +| Image | Detector | Interpolation | ++------------------------+-----------------------------+--------------------+ +| Detector | Any | Not supported | ++------------------------+-----------------------------+--------------------+ + +As mentioned earlier, non Pupil/Image/Detector planes can also be included in the +propagation planes list. This is primarily done to simplify using planes with special +Plane-Wavefront multiplication behavior (the ``Grism`` plane is a perfect example). When +"vanilla" Plane objects are inserted into the propagation list, their multiply() method +is still called and the Wavefront's complex field attribute is affected accordingly, but +none of the additional Plane-Wavefront interactions occur. The diagram below helps to +clarify this behavior + +.. Draw a diagram showing both a Pupil -> Detector and Pupil -> Plane -> Detector flow. +.. Show when complex phasor is applied to WF.data and when focal length and planetype +.. is updated. Also show propagation between steps (i.e. Pupil -> DFT -> Detector vs. +.. Pupil -> None -> Plane -> DFT -> Detector) + + + +.. Using this approach, a dispersive element can be inserted between a Pupil and Image +.. or Detector plane + + +.. _diffraction-fresnel: + +Fresnel Diffraction +=================== +Lentil does not currently support modeling near-field diffraction. diff --git a/docs/user_guide/focal_planes.rst b/docs/user_guide/focal_planes.rst new file mode 100644 index 0000000..f85393c --- /dev/null +++ b/docs/user_guide/focal_planes.rst @@ -0,0 +1,106 @@ +************ +Focal Planes +************ + +Focal Plane Classes +=================== + +Quantum Efficiency and Gain +=========================== + + +Dark Current +============ + + +Random Noise Sources +==================== + + + +Fixed Pattern Noise +=================== + + + +Defects and Cosmic Rays +======================= + +Subclassing FPA +=============== + + +Lentil's `detector <../api.html#detector>`_ module provides classes for representing +both panchromatic and multispectral (Bayer) imaging sensors and many of their common +noise sources including + +* Shot noise due to randomness in the arrival and detection of photons +* The conversion of photons into electrons (quantum efficiency) +* Dark current due to thermally generated electrons inside each pixel +* Spatial nonuniformity due to variations in detector pixels and electronics +* Noise generated by the electronics which read out the pixel values +* Pixel defects like hot or dead pixels, and other imaging artifacts like cosmic ray + strikes + +The :class:`~lentil.detector.FPA` class is the base class for building models of +panchromatic imaging sensors. This class implements mathematical models of both single +pixels and the entire array of pixels. These models are used together to simulate a +digital image (including noise) produced by the imaging sensor given some photon flux. + +Signal Flow +=========== +The full signal flow through Lentil's FPA model is depicted in the figure below. + +.. image:: ../_static/img/detector_model.png + :width: 800px + :align: center + +The signal can be split into two primary groups: + +* A light signal representing the irrandiance (photons/s/px) presented to the detector. + Note that the light signal represents **all** sources of photon flux which may include + near field (self-emission) contributions in addition to the scene being observed. +* A dark signal representing all other sources of electrons present in the detector that + aren't due to the light signal. These sources include thermally generated dark current + and any voltage offsets. + +Various noise sources also contribute to the eventual digital signal read out by the +detector. These noise sources can be broadly classified into two groups: + +* Fixed-pattern noise is time-invariant and does not change from frame to frame. Fixed + pattern noise can be thought of as a characteristic of the detector +* Temporal noise varies from frame to frame and typically represents random processes in t + he detection and readout of an image + +An Ideal Imaging Sensor +======================= +In the ideal (noise-free) case, every photon that strikes a pixel will result in the +accumulation of an electron in the pixel well (QE = 1). The electrons in each pixel are +converted to a voltage (up to some saturation point), amplified, and converted to a +digital signal by an ADC. If we assume this process is linear, it can be described by a +single gain term relating electrons to DN. + +The simplest functional model requires the definition of a few basic sensor attributes: + +* Pixel size +* Quantum efficiency +* The conversion gain from e- to DN +* The saturation capacity of a single pixel in e- + +The model below provides a sample implementation of the ideal imaging sensor described +above + +.. code-block:: python3 + + import lentil + + class IdealFPA(lentil.FPA): + def __init__(self): + self.pixelscale = (5e-6, 5e-6) + self.qe = 1 + self.gain = lentil.detector.Gain(gain=25, saturation_capacity=10000) + + +Constructing a photon flux array +-------------------------------- + diff --git a/docs/user_guide/imaging_artifacts.rst b/docs/user_guide/imaging_artifacts.rst new file mode 100644 index 0000000..63658ef --- /dev/null +++ b/docs/user_guide/imaging_artifacts.rst @@ -0,0 +1,113 @@ +***************** +Imaging Artifacts +***************** + +Jitter +====== + + +Smear +===== + + +Pixel MTF +========= +A focal plane array samples a continuous light field to produce a digital image. Because +Lentil models diffraction numerically by propagating a finite set of points through an +optical system, the discretely sampled image plane intensity must be convolved with the +pixel's aperture function to accurately represent the intensity signal seen by each +pixel. Lentil's :func:`~lentil.FPA.frame` method contains a ``pixelate`` option to +perform this convolution. After convolving the image plane intensity with the pixel MTF, +the data is resampled to native detector sampling using :func:`~lentil.util.rescale`. + +.. note:: + + To ensure accuracy, the input data should be Nyquist sampled. + +Validating Lentil's pixel MTF implementation against the analytic solution +-------------------------------------------------------------------------- + +The following code snippet compares the results of a numerical simulation using Lentil +with the analytic result for the same imaging system: + +.. code-block:: python3 + + import numpy as np + import matplotlib.pyplot as plt + import lentil + + # Define some system parameters + diameter = 1 + focal_length = 5 + f_number = focal_length/diameter + du = 5e-6 + wave = 550e-9 + + cutoff_freq = 1/(f_number*wave) # cycles/m + cutoff_freq_mm = cutoff_freq/1e3 # cycles/mm + + # Define some simulation parameters + npix = 256 + oversample = 4 + psf_sampling = du/oversample + psf_sampling_mm = psf_sampling * 1e3 + + # Set up the spatial frequencies we'll evaluate the MTF at + # Note that we would like to at least cover the cutoff frequency here + mtf_axis_mm = 1/psf_sampling_mm * np.arange(0,npix//2) / npix # cycles/mm + assert mtf_axis_mm[-1] >= cutoff_freq_mm + + mtf_axis_px = mtf_axis_mm * du/1e-3 # cycles/px + + # Compute the analytical optical MTF + s = (mtf_axis_px*wave*f_number)/du + s_valid = s[s<1] + mtf_valid = 2/np.pi*(np.arccos(s_valid)-s_valid*np.sqrt(1-s_valid**2)) + mtf_optics = np.zeros_like(s) + mtf_optics[0:s_valid.shape[0]] = mtf_valid + + # Compute the analytical pixel MTF + f_px = mtf_axis_px + f_px[0] = 1e-15 # We have to cheat a little to avoid a divide + mtf_px = np.abs(np.sin(np.pi*f_px)/(np.pi*f_px)) + + # The system MTF is just the product of the optical and pixel MTFs + mtf_sys = mtf_optics * mtf_px + + # Now we'll build a simple Lentil model + npix_pup_rad = npix/2 + npix_pup_diam = npix_pup_rad * 2 + dx = diameter/npix_pup_diam + amp = lentil.util.circle((npix,npix),npix_pup_rad) + alpha = (dx*du)/(wave*focal_length*oversample) + + # Compute the optical MTF from a Lentil-generated PSF + psf = np.abs(lentil.fourier.dft2(amp, alpha, npix=npix)**2) + psf = psf/np.max(psf) + mtf_optics_lentil = np.abs(np.fft.fft2(psf)) + mtf_optics_lentil = mtf_optics_lentil/np.max(mtf_optics_lentil) + mtf_optics_lentil = mtf_optics_lentil[0,0:mtf_optics_lentil.shape[0]//2] + + # Now apply Lentil's pixellation method and compute the system MTF + pixel_mtf = lentil.convolvable.Pixel() + psf_px = pixel_mtf(psf, oversample=oversample) + mtf_sys_lentil = np.abs(np.fft.fft2(psf_px)) + mtf_sys_lentil = mtf_sys_lentil/np.max(mtf_sys_lentil) + mtf_sys_lentil = mtf_sys_lentil[0,0:mtf_sys_lentil.shape[0]//2] + + # Finally, we'll grab the Pixel kernel to make sure it matches the + # analytic pixel MTF + mtf_px_lentil = np.abs(pixel_mtf.kernel(mtf_axis_px, mtf_axis_px, 1)) + mtf_px_lentil = mtf_px_lentil[0,:] + + plt.plot(mtf_axis_px, mtf_optics, label='optics') + plt.plot(mtf_axis_px, mtf_px, label='pixel') + plt.plot(mtf_axis_px, mtf_sys, label='system') + plt.plot(mtf_axis_px, mtf_sys_lentil, 'o', label='pixelated model') + plt.xlabel('cycles/px') + plt.ylabel('MTF') + plt.legend(prop={'size': 12}) + +.. image:: ../_static/img/pixel_mtf.png + :width: 90% + :align: center diff --git a/docs/user_guide/matlab.rst b/docs/user_guide/matlab.rst new file mode 100644 index 0000000..9ea7603 --- /dev/null +++ b/docs/user_guide/matlab.rst @@ -0,0 +1,166 @@ +************************ +Using Lentil with MATLAB +************************ + +.. _configuring-matlab: + +Configuring MATLAB to use the correct version of Python +======================================================= +MATLAB automatically selects and loads a Python version when you type a Python command. +It commonly defaults to using Python 2.7, which is not at all what we want. We need to +tell MATLAB where to find the correct version of Python (>=3.7). For MATLAB r2020a or +later: + +.. code-block:: matlab + + pyenv('Version', '/path/to/python3/executable') + +For MATLAB r2019b or earlier: + +.. code-block:: matlab + + pyversion '/path/to/python3/executable' + +The Python version can be set temporarily by executing the above command when MATLAB +launches or automatically by adding the command to your ``startup.m`` file. + +.. note:: + If you're using virtual environments to manage different Lentil models, the + ``pyenv/pyversion`` configuration specified above won't work. Instead, you'll need + to call ``pyenv/pyversion`` with the correct virtual environment version before + working with a model. Don't forget to call the MKL conflict fix as well. This is + annoying. Sorry about that. It's a MATLAB "feature". + +.. warning:: + Once you've set ``pyenv/pyversion`` within a MATLAB session, the only way to change + it is to restart MATLAB. This means that if you're working with virtual + environments to manage different models, you'll have to restart MATLAB each time you + want to switch models. This is annoying. Sorry about that. It's a MATLAB "feature". + +For more help on setting MATLAB's Python version, see +`System and Configuration Requirements `_. + + +Resolving MKL Conflicts +----------------------- +MATLAB doesn't always load the correct libraries the underlying Python code relies on. +In particular, there seems to be some confusion about when to load MKL. There is no +telltale sign this has occurred. Sometimes MATLAB crashes while other times Python +method calls will error out with messages that may or may not be useful. The following +command will clear up MATLAB's confusion by handing control of which libraries Python +needs back to Python: + +.. code-block:: matlab + + py.sys.setdlopenflags(int32(10)); + +This command sets the ``RTLD_NOW`` and ``RTLD_DEEPBIND`` flags when the active Python +instance calls ``dlopen()`` `[1]`_ `[2]`_ `[3]`_. Note that this command is Unix only +and must be called before the Python interpreter is loaded within MATLAB but after +``pyenv/pyversion`` is set, making it a prime candidate for inclusion in ``startup.m``. + +.. _[1]: https://www.mathworks.com/matlabcentral/answers/327193-calling-python-module-from-matlab-causes-segmentation-fault-in-h5py#answer_296569 +.. _[2]: http://man7.org/linux/man-pages/man3/dlopen.3.html +.. _[3]: https://docs.python.org/3.6/library/sys.html#sys.setdlopenflags + + + +MATLAB Lentil Interface +======================= + +Calling Python libraries from MATLAB is as simple as configuring MATLAB to use the +appropriate Python implementation and prepending the Python command with ``py.``. Before +using Lentil in MATLAB, be sure that you you have +:ref:`configured MATLAB to use the correct version of Python installed on your system +` + + +Working with NumPy Arrays in MATLAB +----------------------------------- +Many Lentil methods return numpy arrays. Unfortunately, MATLAB does not fully +understand numpy arrays. Two scripts are included in the ``matlab`` directory to convert +back and forth between NumPy arrays and MATLAB matrices: + +* `mat2ndarray `_ +* `ndarray2mat `_ + + +Interacting directly with Lentil from MATLAB +-------------------------------------------- +It is possible to interact directly with Lentil within MATLAB. For example, we can +create a simple :func:`~util.circle` mask with: + +.. code-block:: matlab + + >> mask = py.lentil.util.circle([int16(256),int16(256)],int16(128)); + +Note that MATLAB `automatically does type conversion `_ when MATLAB data is passed to Python but because MATLAB's default numeric type is double-precision floating point, we need to explicitly convert the ``shape`` and ``radius`` parameters to ints before passing them to Python. + +This approach is fine for debugging and some light usage, but more robust and +user-friendly solutions require developing a MATLAB interface. + +Developing a MATLAB interface to a Lentil model +----------------------------------------------- +The easiest way to provide a MATLAB interface to an underlying Lentil model is to +develop a separate MATLAB class that mimics the interface of a Lentil class and handles +any data formatting issues that arise between MATLAB and Python. In this way, the model +logic all resides within the Python code, and the MATLAB code is only responsible for +managing the interface between languages. An example following this approach is +available here. + +When deploying a MATLAB interface to a Lentil model, it may be convenient to duplicate +the ``mat2ndarray.m`` and ``ndarray2mat.m`` scripts in the project's local ``matlab`` +directory alongside the ``.m`` interfaces. This simplifies the end user experience +because it does not require any additional path modification or management to use the +model. + +For an example, see: :ref:`cookbook-matlab`. + +Finally, a few links that may be helpful when developing a MATLAB interface: + +* `Calling Python functions from MATLAB `_ +* `Passing a Python function kwargs from MATLAB `_ + +.. warning:: + + It is not fully understood what happens when you wrap a call to a Python object in a + ``parfor`` loop in MATLAB. Buyer beware. + + +Troubleshooting +=============== + +Debugging MATLAB's Undefined variable "py" or function "py.command" error +------------------------------------------------------------------------- +1. Make sure Python is loaded and working: + +.. code-block:: matlab + + >> py.print('test') + + test + +2. Make sure Lentil is loaded and working: + +.. code-block:: matlab + + >> mask = py.lentil.util.circle([int16(256),int16(256)],int16(128)); + +3. Verify there are no import errors in the Python code by importing Lentil and any +custom models in a Python interpreter: + +.. code-block:: pycon + + >>> import lentil + >>> import <> + +For more hints, see the MATLAB documentation on `Undefined variable "py" or function +"py.command" `_ + +Useful Links +============ + +* `MATLAB Examples <../examples>`_ +* `Handling Data Returned from Python `_ +* `Limitations to Python Support `_ +* `Reloading Modified User-Defined Python Modules `_ diff --git a/docs/user_guide/overview.rst b/docs/user_guide/overview.rst new file mode 100644 index 0000000..d0f6173 --- /dev/null +++ b/docs/user_guide/overview.rst @@ -0,0 +1,64 @@ +******** +Overview +******** + +.. |Wavefront| replace:: :class:`~lentil.wavefront.Wavefront` +.. |Plane| replace:: :class:`~lentil.Plane` + +Lentil currently provides algorithms for numerically modeling +:ref:`diffraction-fraunhofer` (far-field approximation). :ref:`diffraction-fresnel` +(near-field approximation) algorithms may be implemented in the future if a need arises. +Lentil's propagation algorithms generally work in the same way and have a standard +interface wherever possible. + +.. note:: + This section of the User Guide assumes an undergraduate-level understanding of + physical optics. In-depth mathematical background and an extensive discussion of + the validity of each diffraction approximation is available in [1]_. + +General propagation algorithm +============================= +Lentil models diffraction numerically by propagating a |Wavefront| object through a +series of |Plane| objects representing an optical system. The general algorithm is as +follows: + +.. image:: ../_static/img/propagate.png + :width: 800px + :align: center + +First, a new |Wavefront| object is created with the desired wavelength (note the input +wavefront is assumed to be a plane wave). Next, the |wavefront| is propagated from +|Plane| to |Plane| through the list of specified planes. The specifics of the plane to +plane propagation depend on the propagation type (Fraunhofer vs. Fresnel) and additional +plane attributes specific to each propagation. The results are accumulated, and any +provided weight is applied. This process is repeated for each requested wavelength. +Finally, some general post-processing may be applied depending on the supplied +propagation parameters. + +General propagation interface +============================= +The general propagation interface is provided by the :func:`~lentil.propagate` method. +The following attributes govern the propagation: + +* :attr:`planes` - a list of |Plane| objects representing an optical system +* :attr:`wave` - the wavelength used for the propagation. If a list of wavelengths is + provided, the propagation will be performed for each value and the ressult will + represent a polychromatic propagation. +* :attr:`weight` - the weight associated with each wavelength in :attr:`wave`. Note that + weights can be either relative or absolute depending on the use case. + +Additional options provide further customization of the propagation behavior: + +* :attr:`npix` +* :attr:`npix_chip` +* :attr:`oversample` +* :attr:`rebin` +* :attr:`tilt` - specifies the tilt handling strategy. See :ref:`diffraction-tilt` for + more details. +* :attr:`interp_phasor` See :ref:`diffraction-sampling` for more details. +* :attr:`flatten` - specifies whether to collapse wavelength-specific output planes to a + single array or return a 3D cube of results + + +.. [1] Goodman, *Introduction to Fourier Optics*. + diff --git a/docs/user_guide/performance.rst b/docs/user_guide/performance.rst new file mode 100644 index 0000000..28d4989 --- /dev/null +++ b/docs/user_guide/performance.rst @@ -0,0 +1,32 @@ +********************** +Optimizing Performance +********************** + +.. _caching: + +Caching +======= +While the computation that occurs when accessing the ``opd`` attribute in the +example above isn't terribly expensive, that computation (along with many other +similar computations) may be performed tens, hundreds, or even thousands of times +in the process of performing a single propagation. + +Lentil provides a caching mechanism to reduce the number of times these +computations are performed. The :class:`~lentil.modeltools.cached_property` +decorator is a drop-in replacement for Python's ``property`` decorator and ensures +that decorated functions have their values computed and cached once at the beginning +of a propagation. The cache is automatically cleared when the propagation is +complete. + +Speeding up the FFT +=================== + + +Multiprocessing +=============== + +Other Performance Tweaks +======================== + +Faster photon to electron (quantum efficiency) calculations +----------------------------------------------------------- diff --git a/docs/user_guide/plane.rst b/docs/user_guide/plane.rst new file mode 100644 index 0000000..6fc1059 --- /dev/null +++ b/docs/user_guide/plane.rst @@ -0,0 +1,178 @@ +************** +Optical Planes +************** + +Planes +====== +Lentil's :class:`~lentil.Plane` object represents a discretely sampled plane in an +optical model. Planes typically have some influence on the propagation of a +wavefront through a model. Planes have the following attributes that interact with a +wavefront: + +* :attr:`~lentil.Plane.amplitude` - Defines the relative Wavefront transmission + (spatially) through the Plane +* :attr:`~lentil.Plane.phase` - Defines the phase shift that a wavefront experiences + when propagating through the Plane +* :attr:`~lentil.Plane.mask` - Defines the binary mask over which the Plane data is + valid +* :attr:`~lentil.Plane.segmask` - Defines the set of masks over which any segments in + the Plane are valid. If None, no segments are defined. +* :attr:`~lentil.Plane.pixelscale` - Defines the physical sampling of each pixel in + the above attributes + +.. note:: + + All Plane attributes have sensible default values that have no effect on + propagations when not defined. + +.. _creating-planes: + +Creating Planes +--------------- + +Command line +^^^^^^^^^^^^ + +Simple Planes are easy to define from the command line: + +.. code-block:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> aperture = lentil.Plane(amplitude=lentil.util.circle((256,256), 128)) + >>> plt.imshow(aperture.amplitude) + +.. image:: ../_static/img/circle_amplitude.png + :width: 300px + +Once a Plane is defined, its attributes can be modified at any time: + +.. code-block:: pycon + + >>> aperture.phase = 2e-6 * lentil.zernike.zernike(aperture.mask, 4) + >>> plt.imshow(aperture.phase) + +.. image:: ../_static/img/circle_focus.png + :width: 300px + +In a module +^^^^^^^^^^^ +Depending on their use, sometimes it will be more convenient to define Planes in a +module. In this case, you should subclass ``Plane``: + +.. code-block:: python3 + + import lentil + + class CustomPlane(le.Plane): + def __init__(self): + self.amplitude = lentil.util.circle((256,256), 128) + self.opd = 2e-6 * lentil.zernike.zernike(lentil.util.circlemask((256,256),128), 4) + +Any of Plane's attributes can also be redefined as properties if further customization +is needed. This is typically necessary if an attribute is stateful or has some sort of +randomness: + +.. code-block:: python3 + + import lentil + + class CustomPlane(lentil.Plane): + def __init__(self, focus = 0): + self.mask = lentil.util.circlemask((256,256), 128) + self.amplitude = lentil.util.circle((256,256), 128) + self.focus = focus + + @property + def phase(self): + focus_opd = self.focus * lentil.zernike.zernike(self.mask) + random_opd = lentil.zernike.zernike_compose(self.mask, 1e-6*np.random.random(10)) + return focus_opd + random_opd + +.. note:: + + While the computation that occurs when accessing the ``phase`` attribute in the + example above isn't particularly expensive, it will be unnecessarily repeated many + times during a single propagation (once for each wavelength). + + Using Lentil's :class:`~lentil.modeltools.cached_property` decorator instead of + Python's ``property`` decorator enables these attributes' return values to be + cached, offering a substantial increase in propagation performance. + + When a function decorated with ``cached_property`` is called, if a cached value for + that attribute exists it is returned, otherwise the function is executed and the + resulting computed value is returned. + + For more details, see :ref:`caching`. + + +Pupils +====== + +.. |Pupil| replace:: :class:`~lentil.Pupil` +.. |Image| replace:: :class:`~lentil.Image` +.. |Plane| replace:: :class:`~lentil.Plane` + +Lentil's |Pupil| plane provides a convenient way to represent a generalized pupil +function. |Pupil| planes, along with |Image| planes provide the foundation for modeling +diffraction using the far-field approximation. |Pupil| planes behave exactly like +|Plane| objects but introduce an implied spherical phase term defined by the +:attr:`~lentil.Pupil.focal_length` attribute where :math:`r = 2f`. Detailed discussion +of pupil planes is available in [1]_. + + +Creating Pupils +--------------- +Like |Plane| objects, |Pupil| objects can be created from the command line or by +subclassing |Pupil|. See :ref:`creating-planes` for details. + +.. [1] Goodman, *Introduction to Fourier Optics*. + + +Image and Detector Planes +========================= + +Tilt +==== +The :class:`~lentil.Tilt` plane provides a mechanism for directly specifying wavefront +tilt outside of the context of a discretely sampled :class:`~lentil.Plane` object. +:class:`~lentil.Tilt` is most useful for representing global tilt of an optical system +during a propagation. + +For example, given the following :class:`~lentil.Pupil` and :class:`~lentil.Detector` +planes: + +.. code-block:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> pupil = lentil.Pupil(amplitude=lentil.util.circle((256, 256), 128), diameter=1, + focal_length=10, pixelscale=1/256) + >>> detector = lentil.Detector(pixelscale=5e-6, shape=(1024, 1024)) + >>> psf = lentil.propagate([pupil, detector], wave=650e-9, npix=(128, 128)) + >>> plt.imshow(psf) + +it is simple to see the effect of introducing a tilted wavefront into the system: + +.. code-block:: pycon + + >>> tilt = lentil.Tilt(x=-5e-6, y=2e-6) + >>> psf = lentil.propagate([tilt, pupil, detector], wave=650e-9, npix=(128, 128)) + >>> plt.imshow(psf) + +Plane Transformations +===================== + + +Active Optics and Deformable Mirrors +==================================== + + +Dispersion and Chromatic Aberration +=================================== + + +Lenslet Arrays +============== + + diff --git a/docs/user_guide/radiometry.rst b/docs/user_guide/radiometry.rst new file mode 100644 index 0000000..55e57d2 --- /dev/null +++ b/docs/user_guide/radiometry.rst @@ -0,0 +1,56 @@ +********** +Radiometry +********** +Computational radiometry is used to model the propagation of radiant energy through an +optical system. It uses geometry and known optical and imaging properties to compute the +irradiance from an observed scene at a detector. Lentil's +:ref:`radiometry` module provides a +:class:`~lentil.radiometry.Spectrum` object for representing and working with +radiometric quantities but because radiometric models tend to be very application= +specific, not much additional help is provided. + +The Spectrum Object +=================== +:class:`~lentil.radiometry.Spectrum` is a data structure for holding spectral data. + +========= ============== ========= ======= ============== =================== +Operand 1 Operation Operand 2 Output Units Overlap +========= ============== ========= ======= ============== =================== +Source :math:`+` Source Source Source 1 units Full, partial, none +Source :math:`=` Source Source Source 1 units Full, partial, none +Source :math:`\times` Scalar Source Source units N/A +Source :math:`\times` Vector Source Source units Full +========= ============== ========= ======= ============== =================== + +Blackbody Emitters +================== + +Radiometric Units +================= + +Defining Sources +================ +Two things to consider: + +1. Need to compute the correct number of photons entering the system + * Irradiance (/m^2) * collecting area + * collecting area is usually pi*(pm_diameter/2)^2 * fill_factor +2. Need to appropriately normalize the amplitude function and ensure the DFT is unitary + +Optical Transmission +==================== + +The transmission of an optical element is a measure of the element's ability to transmit +light. Transmission models are primarily used in combination with a flux model to +estimate the irradiance of a source at a focal plane as observed through an optical +system. + +In the simplest case, a transmission model can be represented by a single +:class:`~lentil.radiometry.Spectrum` defined analytically or loaded from a CSV file. +More complicated models can be built as the product of a number of independent +transmissions. A slight variation of this approach is used to represent transmission +models with selectable elements (like with a filter wheel). + +Thermal Emission for IR Systems +=============================== + diff --git a/docs/user_guide/wavefront_error.rst b/docs/user_guide/wavefront_error.rst new file mode 100644 index 0000000..6961014 --- /dev/null +++ b/docs/user_guide/wavefront_error.rst @@ -0,0 +1,19 @@ +**************** +Wavefront Errors +**************** + +Zernike Polynomials +=================== + +Linear Wavefront Sensitivities +============================== + +Static Errors +============= + +Surface Figure Errors +===================== + +Atmospheric Turbulence +====================== + diff --git a/lentil/__init__.py b/lentil/__init__.py new file mode 100644 index 0000000..7dd09de --- /dev/null +++ b/lentil/__init__.py @@ -0,0 +1,18 @@ +from lentil import convolvable +from lentil import detector +from lentil.fpa import * +from lentil import modeltools +from lentil.plane import * +from lentil.prop import propagate +from lentil import radiometry +from lentil import util +from lentil import wfe +from lentil import zernike + +# Enforce Python version during import +# https://docs.python.org/3/library/sys.html#sys.hexversion +import sys +if sys.hexversion < 0x030700F0: + raise ImportError('Lentil requires Python >= 3.7') + +__version__ = '0.1.0' diff --git a/lentil/cache.py b/lentil/cache.py new file mode 100644 index 0000000..7b99ec2 --- /dev/null +++ b/lentil/cache.py @@ -0,0 +1,105 @@ + +class Cache: + """A dict-like object for caching data.""" + + def __init__(self): + self._cache = {} + + def __repr__(self): + return self._cache.__repr__() + + def __str__(self): + return self._cache.__str__() + + def set(self, key, value): + """Set a cache value. + + Parameters + ---------- + key : string + + value : object + + """ + self._cache[key] = value + + def get(self, key, default=None): + """Get a cache value. If the object doesn't exist in the cache, the + default value is returned. + + Parameters + ---------- + key : string + + default : object, optional + + Returns + ------- + value + Cached value + + Note + ---- + The literal value `None` should not be stored in a cache because it is + impossible to distinguish between the stored value `None` and a cache + miss signified by a returned value of `None`. + + """ + try: + return self._cache[key] + except KeyError: + return default + + def get_or_set(self, key, default): + """Set a cache value only if it doesn't already exist in the cache + and return the cached value. + + Parameters + ---------- + key : string + + default : object + + Returns + ------- + value + Cached value + + """ + + if key not in self.keys(): + self._cache[key] = default + return self._cache[key] + + def add(self, key, value): + """Set a cache value only if it doesn't already exist in the cache. + + Parameters + ---------- + key : string + + value + + """ + if key not in self.keys(): + self._cache[key] = value + + def delete(self, key): + """Delete a cache value + + Parameters + ---------- + key : string + + """ + try: + self._cache.pop(key) + except KeyError: + pass + + def clear(self): + """Delete all the cache values.""" + self._cache = {} + + def keys(self): + return self._cache.keys() diff --git a/lentil/convolvable.py b/lentil/convolvable.py new file mode 100644 index 0000000..7a74484 --- /dev/null +++ b/lentil/convolvable.py @@ -0,0 +1,307 @@ +import numpy as np + +__all__ = ['Pixel', 'Jitter', 'Smear'] + + +class Convolvable: + """Base class for representing spatial artifacts that can be applied via + multiplication with a kernel in the frequency domain [1]. + + See Also + -------- + * :class:`~lentil.convolvable.Jitter` + * :class:`~lentil.convolvable.Smear` + * :class:`~lentil.convolvable.Pixel` + + References + ---------- + [1] https://en.wikipedia.org/wiki/Convolution_theorem + + """ + + def __call__(self, *args, **kwargs): + """Perform convolution + + This method defines the callable interface. Subclasses should provide a + concrete implementation that computes an appropriate kernel and returns + the result of :func:`convolve`. + + """ + raise NotImplementedError + + @staticmethod + def convolve(f, G): + r"""Convolve an array with a frequency domain kernel. + + Given an array :math:`f` in the spatial domain and a kernel :math:`G` in + the frequency domain, the convolution is computed as + + .. math:: + + f * g = \mathcal{F}^{-1} \left\{ \mathcal{F}\left\{f\right\}\cdot G \right\} + + + Parameters + ---------- + f : ndarray + Spatial domain array + + G : ndarray + Frequency domain kernel + + Returns + ------- + out : ndarray + f * g + + """ + return np.fft.ifft2(np.fft.fft2(f)*G) + + +class Pixel(Convolvable): + """Callable object for applying the aperture effects of a square pixel on a + discretely sampled irradiance distribution. + + Example + ------- + Apply pixel MTF to a 3x oversampled PSF: + + .. code:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> psf = ... # PSF calculation details omitted + >>> pixel_mtf = lentil.convolvable.Pixel() + >>> psf_mtf = pixel_mtf(psf, oversample=3) + >>> psf_detector = lentil.util.rescale(psf_mtf, 1/3) + + Note that both the pixel MTF and detector resampling operations preserve + radiometry: + + .. code:: pycon + + >>> print(np.sum(psf), np.sum(psf_mtf), np.sum(psf_detector)) + 50398.80556524441 50398.80556524441 50398.80556524441 + + """ + + def __call__(self, img, oversample=1): + """Convolve ``img`` with a square pixel transfer function. + + Parameters + ---------- + img : array_like + Input image + + oversample : int, optional + Oversampling factor of img. Default is 1. + + Returns + ------- + out : ndarray + Image with pixel sampling effects applied. + + """ + img = np.asarray(img) + x = np.fft.fftfreq(img.shape[1]) + y = np.fft.fftfreq(img.shape[0]) + kernel = self.kernel(x, y, oversample) + + return np.abs(self.convolve(img, kernel)) + + def kernel(self, x, y, oversample): + mtf_x = np.sinc(x*oversample) + mtf_y = np.sinc(y*oversample) + return np.dot(mtf_x[:, np.newaxis], mtf_y[np.newaxis, :]) + + +class Jitter(Convolvable): + """Callable object for applying image jitter via convolution. + + Parameters + ---------- + pixelscale : float, optional + Pixel size. If ``pixelscale = 1`` (default), the ``scale`` parameter + provided when Jitter is called should give jitter in terms of fractional + pixels. If ``pixelscale`` is the physical dimension of one pixel, ``the + ``scale`` parameter provided when Jitter is called should give jitter in + terms of the same units. + + Examples + -------- + Apply 2 pixels jitter to a natively-sampled PSF: + + .. code:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> psf = ... # PSF calculation details omitted + >>> jitter = lentil.convolvable.Jitter() + >>> psf_jitter = jitter(psf, scale=2) + >>> plt.subplot(121), plt.imshow(psf) + >>> plt.subplot(122), plt.imshow(psf_jitter) + + .. image:: ../_static/img/api/convolvable/jitter_px.png + :width: 500px + + Apply 20 um jitter to a 3x oversampled PSF. Note that because we are + specifying jitter in terms of linear distance on the focal plane, we must + provide the detector pixelscale when creating the Jitter object. We also + provide the oversampling factor, ensuring the convolution kernel is + appropriately sized: + + .. code:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> psf = ... # PSF calculation details omitted + >>> jitter = lentil.convolvable.Jitter(pixelscale=5e-6) + >>> psf_jitter = jitter(psf, scale=20e-6, oversample=3) + >>> plt.subplot(121), plt.imshow(psf) + >>> plt.subplot(122), plt.imshow(psf_jitter) + + .. image:: ../_static/img/api/convolvable/jitter_m.png + :width: 500px + + """ + + def __init__(self, pixelscale=1): + self.pixelscale = pixelscale + + def __call__(self, img, scale, oversample=1): + """Convolve ``img`` with a Gaussian jitter transfer function. + + Parameters + ---------- + img : array_like + Input image + + scale : float + 1-sigma jitter motion + + If ``pixelscale = 1``, ``scale`` should give jitter in terms of + fractional pixels. If ``pixelscale`` is the physical dimension of + one pixel, ``scale`` should give jitter in terms of the same units. + + oversample : int, optional + Oversampling factor of img. Default is 1. + + Returns + ------- + out : ndarray + Image with jitter applied. + + """ + img = np.asarray(img) + x = np.fft.fftfreq(img.shape[1]) + y = np.fft.fftfreq(img.shape[0]) + kernel = self.kernel(x, y, scale, oversample) + + return np.abs(self.convolve(img, kernel)) + + def kernel(self, x, y, scale, oversample): + xx, yy = np.meshgrid(x, y) + rho = np.sqrt(xx**2 + yy**2) + return np.exp(-2*(np.pi*(scale/self.pixelscale)*oversample*rho)**2) + + +class Smear(Convolvable): + """Callable object for applying image smear via convolution. + + Parameters + ---------- + pixelscale : float, optional + Pixel size. If ``pixelscale = 1`` (default), the ``scale`` parameter + provided when Smear is called should give jitter in terms of fractional + pixels. If ``pixelscale`` is the physical dimension of one pixel, ``the + ``scale`` parameter provided when Smear is called should give jitter in + terms of the same units. + + Examples + -------- + Apply 100 um smear at 60 degrees to a natively-sampled PSF. Note that + because we are specifying smear in terms of linear distance on the focal + plane, we must provide the detector pixelscale when creating the Smear + object: + + .. code:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> psf = ... # PSF calculation details omitted + >>> smear = lentil.convolvable.Smear(pixelscale=5e-6) + >>> psf_smear = smear(psf, distance=100e-6, angle=60) + >>> plt.subplot(121), plt.imshow(psf) + >>> plt.subplot(122), plt.imshow(psf_smear) + + .. image:: ../_static/img/api/convolvable/smear_m.png + :width: 500px + + Apply 10 pixels smear at a random angle to a 3x oversampled PSF: + + .. code:: pycon + + >>> import lentil + >>> import matplotlib.pyplot as plt + >>> psf = ... # PSF calculation details omitted + >>> smear = lentil.convolvable.Smear() + >>> psf_smear = smear(psf, distance=10, oversample=3) + >>> plt.subplot(121), plt.imshow(psf) + >>> plt.subplot(122), plt.imshow(psf_smear) + + .. image:: ../_static/img/api/convolvable/smear_px.png + :width: 500px + + """ + + def __init__(self, pixelscale=1): + self.pixelscale = pixelscale + + def __call__(self, img, distance, angle=None, oversample=1): + """Convolve ``img`` with a rotated sinc smear transfer function. + + Parameters + ---------- + img : array_like + Input image + + distance : float + Linear smear distance + + If ``pixelscale = 1``, ``distance`` should give smear in terms of + fractional pixels. If ``pixelscale`` is the physical dimension of + one pixel, ``distance`` should give smear in terms of the same + units. + + angle : float, optional + Smear direction in degrees measured clockwise from the x-axis. If + ``None`` (default), a new direction is randomly chosen every time + :class:`Smear` is called. + + oversample : int, optional + Oversampling factor of img. Default is 1. + + Returns + ------- + out : ndarray + Image with smear applied. + + """ + img = np.asarray(img) + x = np.fft.fftfreq(img.shape[1]) + y = np.fft.fftfreq(img.shape[0]) + kernel = self.kernel(x, y, distance, angle, oversample) + + return np.abs(self.convolve(img, kernel)) + + def kernel(self, x, y, distance, angle, oversample): + xx, yy = np.meshgrid(x, y) + + if angle is None: + angle = np.random.uniform(0, 2*np.pi) + else: + angle = np.radians(angle) + + yy_rot = -np.sin(angle)*xx + np.cos(angle)*yy + + return np.sinc(yy_rot*(distance/self.pixelscale)*oversample) diff --git a/lentil/detector.py b/lentil/detector.py new file mode 100644 index 0000000..a491a55 --- /dev/null +++ b/lentil/detector.py @@ -0,0 +1,1228 @@ +import warnings + +import numpy as np +from scipy import signal + +from lentil import util + +__all__ = ['Gain', 'PolynomialGain', 'ShotNoise', 'GaussianShotNoise', + 'DarkCurrent', 'ReadNoise', 'Rule07DarkCurrent', 'FPN', 'RandomFPN', + 'NormalFPN', 'UniformFPN', 'LognormalFPN', 'PRNU', 'DarkCurrentFPN', + 'PixelOffsetFPN', 'ColumnOffsetFPN', 'ChargeDiffusion', 'Defect', + 'PixelMask', 'CosmicRay'] + + +class Windowable: + """Base class for representing data that can have a specific sub-window + extracted. + + Parameters + ---------- + data : float or array_like + Windowable data. + + """ + + def __init__(self, data): + self.data = np.asarray(data) + + def window(self, shape=None, window=None): + """Return an appropriately sized, potentially windowed :attr:`data` + array. + + Parameters + ---------- + shape : array_like or None, optional + Output shape given as (nrows, ncols). If ``None`` (default), an + uncropped array is returned. + + window : array_like or None, optional + Indices of :attr:`data` array to return given as (r_start, r_end, + c_start, c_end). This definition follows standard numpy indexing. + + Returns + ------- + data : ndarray + Trimmed and windowed :attr:`data` array + + Notes + ----- + * If ``data`` is a single value (data.size == 1), self.data is returned + regardless of what ``shape`` and ``window`` are. + * If ``shape`` is given but ``window`` is ``None``, the returned ndarray + is trimmed about the center of the array using + :func:`lentil.util.pad`. + * If ``window`` is given but ``shape`` is ``None``, the returned ndarray + is extracted from :attr:`data` according to the indices in ``window`` + * If both ``shape`` and ``window`` are given, the returned ndarray is + extracted from :attr:`data` according to the indices in ``window`` and + the following expressions must be true: + + .. code:: + + shape[0] = (window[1] - window[0]) = (r_end - r_start) + shape[1] = (window[3] - window[2]) = (c_end - c_start) + + """ + if self.data.size == 1: + return self.data + + if shape is None and window is None: + # return the entire array + return self.data + + elif window is not None: + if shape is not None: + # ensure consistency + assert (window[1] - window[0]) == shape[0] + assert (window[3] - window[2]) == shape[1] + # return the windowed array. + # Note that numpy implicitly handles a third dimension if one is + # present + return self.data[window[0]:window[1], window[2]:window[3]] + + else: # shape is None + # return the padded array + # The same comment about numpy implicitly handling a third dimension + # (see above) holds true here, although in this case the logic + # resides in pad + return util.pad(self.data, shape) + + +class Gain(Windowable): + """Linear gain model. + + Parameters + ---------- + gain : float or array_like + Conversion gain in DN/e-. If specified as a single value, it is applied + uniformly. If specified as an array, it is assumed to provide a + pixel-by-pixel gain map. + + saturation_capacity : int or None + Electron count resulting in pixel saturation. If None, pixels will not + saturate. This is obviously nonphysical, but can be useful for testing + or debugging. + + dtype : data-type or None, optional + Output data-type. If None (default), no data-type casting is performed. + + Note + ---- + The saturation capacity should not be confused with the full-well capacity. + Saturation capacity is typically smaller than the full well capacity because + the signal is clipped before the physical saturation of the pixel is + reached. + """ + + def __init__(self, gain, saturation_capacity, dtype=None): + super().__init__(gain) + self.saturation_capacity = saturation_capacity + self.dtype = dtype + + def __call__(self, img, window=None, warn_saturate=False): + """Apply gain model to an array + + Parameters + --------- + img : ndarray + Array of electron counts + + window : array_like or None, optional + Indices of gain to return given as (r_start, r_end, c_start, c_end). + This definition follows standard Numpy indexing. + + warn_saturate : bool, optional + Raise a warning when pixels saturate. Default is False. + + Returns + ------- + img : ndarray + Array of DN + + """ + # enforce the saturation limit + if self.saturation_capacity: + + if warn_saturate: + if self.check_saturate(img): + warnings.warn('Frame has saturated pixels.') + + # Apply the saturation limit + img[img > self.saturation_capacity] = self.saturation_capacity + + # convert to DN + return np.floor(img * self.gain(img.shape, window), dtype=self.dtype) + + def gain(self, shape=None, window=None): + """Return a trimmed and/or windowed representation of the gain model.""" + return self.window(shape, window) + + def check_saturate(self, img): + if np.any(img > self.saturation_capacity): + return True + else: + return False + + +class PolynomialGain(Gain): + """Gain model defined by polynomial coefficients. + + Parameters + ---------- + gain : array_like + Conversion gain in DN/e-. Can be specified in two ways: + + * As a one-dimensional array of polynomial coefficients applied + globally to each pixel + * As a three-dimensional array of pixel-by-pixel gain where the + first dimension gives polynomial coefficients of each pixel + + saturation_capacity : int or None + Electron count resulting in pixel saturation. If None, pixels will not + saturate. This is obviously nonphysical, but can be useful for testing + or debugging. + + dtype : data-type or None, optional + Output data-type. If None (default), no data-type casting is performed. + + Note + ---- + The saturation capacity should not be confused with the full-well capacity. + Saturation capacity is typically smaller than the full well capacity because + the signal is clipped before the physical saturation of the pixel is + reached. + + """ + + def __init__(self, gain, saturation_capacity, dtype=None): + + gain = np.asarray(gain) + if not np.any([gain.ndim == 1, gain.ndim == 3]): + raise ValueError + + super().__init__(gain, saturation_capacity, dtype) + + def __call__(self, img, window=None, warn_saturate=False): + """Apply gain model to an array + + Parameters + --------- + img : ndarray + Array of electron counts + + window : array_like or None, optional + Indices of gain to return given as (r_start, r_end, c_start, c_end). + This definition follows standard Numpy indexing. + + warn_saturate : bool, optional + Raise a warning when pixels saturate. Default is False. + + Returns + ------- + img : ndarray + Array of DN + + """ + # enforce the saturation limit + if self.saturation_capacity: + + if warn_saturate: + if self.check_saturate(img): + warnings.warn('Frame has saturated pixels.') + + # Apply the saturation limit + img[img > self.saturation_capacity] = self.saturation_capacity + + # Determine the polynomial order + if self.data.ndim == 1: + model_order = self.data.shape[0] + else: + model_order = self.data.shape[2] + + # Prepare a cube of electron counts to apply the polynomial gain to + img_cube = np.repeat(img[:, :, np.newaxis], model_order-1, axis=2) + for order in np.arange(model_order-1, 0, -1): + d = model_order - order - 1 + img_cube[..., d] = img_cube[..., d]**order + + # Get the appropriately sized and windowed gain model + gain_model = self.gain(img.shape, window) + + # Apply the gain model and convert to DN + if self.data.ndim == 1: + gain, offset = gain_model[0:-1], gain_model[-1] + return np.einsum('ijk,k->ij', img_cube, gain) + offset + else: + # self.data.ndim == 3 + gain, offset = gain_model[..., 0:-1], gain_model[..., -1] + return np.einsum('ijk,ijk->ij', img_cube, gain) + offset + + def gain(self, shape=None, window=None): + """Return a trimmed and/or windowed representation of the gain model.""" + if self.data.ndim == 1: + # we have a global nonlinear gain where the shape and window don't + # matter + return self.data + else: + # self.data.ndim == 3 + return self.window(shape, window) + + +class RandomNoise: + """Base class for all radiometry of random noise with an optional + user-definable seed. + + If a seed is provided, an instance of ``numpy.random.RandomState`` is + created and all random numbers are generated from this object in a + repeatable (but still random) way. If no seed is provided, random numbers + are generated using the appropriate ``numpy.random`` distribution. + + Parameters + ---------- + seed : None, int, or array_like, optional + Random seed used to initialize ``numpy.random.RandomState``. If + ``None``, no random number generator object is created. + + Attributes + ---------- + rng : numpy.random.RandomState or None + Random number generator object. If ``seed`` is ``None``, ``rng`` will + also be ``None`` + """ + + def __init__(self, seed=None): + self.seed = seed + + if seed: + self.rng = np.random.RandomState(seed) + else: + self.rng = None + + +class ShotNoise(RandomNoise): + r"""Shot noise modeled by a Poisson process. + + Parameters + ---------- + seed : None, int, or array_like, optional + Seed for random number generator. If ``None`` (default), the Numpy + default is used. + + Note + ---- + For sufficiently large values of :math:`\lambda`, (say :math:`\lambda > + 1000`), the Normal(:math:`\mu = \lambda`, :math:`\sigma^2 = \lambda`) + distribution is an excellent approximation to the Poisson(:math:`\lambda`) + distribution and is about 25% faster to compute. + + See Also + -------- + :class:`~lentil.detector.GaussianShotNoise` Shot noise modeled by a normal + distribution + + """ + + def __init__(self, seed=None): + super().__init__(seed) + + def __call__(self, img): + """Apply shot noise model to an array + + Parameters + --------- + img : ndarray + Array of electron counts + + Returns + ------- + img : ndarray + Array of noisy electron counts + + """ + if self.rng: + return self.rng.poisson(img) + else: + return np.random.poisson(img) + + +class GaussianShotNoise(RandomNoise): + r"""Shot noise modeled by a normal distribution. + + Parameters + ---------- + seed : None, int, or array_like, optional + Seed for random number generator. If ``None`` (default), the Numpy + default is used. + + Note + ---- + For sufficiently large values of :math:`\lambda`, (say :math:`\lambda > + 1000`), the Normal(:math:`\mu = \lambda`, :math:`\sigma^2 = \lambda`) + distribution is an excellent approximation to the Poisson(:math:`\lambda`) + distribution and is about 25% faster to compute. + + See Also + -------- + :class:`~lentil.detector.ShotNoise` Shot noise modeled by a Poisson process + + """ + + def __init__(self, seed=None): + super().__init__(seed) + + def __call__(self, img): + """Apply shot noise model to an array + + Parameters + --------- + img : ndarray + Array of electron counts + + Returns + ------- + img : ndarray + Array of noisy electron counts + + """ + if self.rng: + return self.rng.normal(loc=img, scale=img) + else: + return np.random.normal(loc=img, scale=img) + + +class ReadNoise(RandomNoise): + """Read noise model. + + Parameters + ---------- + electrons : int + Read noise per frame + + seed : None, int, or array_like, optional + Seed for random number generator. If ``None`` (default), the Numpy + default is used. + + """ + def __init__(self, electrons, seed=None): + super().__init__(seed) + self.electrons = electrons + + def __call__(self, frame): + if self.rng: + noise = self.rng.normal(loc=0.0, scale=self.electrons, size=frame.shape) + else: + noise = np.random.normal(loc=0.0, scale=self.electrons, size=frame.shape) + return frame + noise + + +class DarkSignal(Windowable): + """Base class for representing a dark signal. + + Parameters + ---------- + value : float, or array_like + Dark signal value. If specified as a single value, it is applied + uniformly. If specified as an array, it is assumed to provide a + pixel-by-pixel map. + + """ + def __init__(self, value): + super().__init__(value) + + def __call__(self, shape, window=None): + """Create dark signal array + + Parameters + --------- + shape : array_like + Dimensions of dark signal array to create + + window : array_like or None, optional + Indices of dark signal to return given as (r_start, r_end, c_start, + c_end). This definition follows standard Numpy indexing. + + Returns + ------- + dark_signal : ndarray + Dark signal array + + """ + # Return ones * the dark() value in the event that a single value is + # provided (and thus returned by dark) + dark_signal = self.dark(shape, window) * np.ones(shape) + + return dark_signal + + def dark(self, shape, window): + return self.window(shape, window) + + +class DarkCurrent(DarkSignal): + """Generic dark current model. + + Parameters + ---------- + rate : float or array_like + Dark current rate in electrons/sec/px. If specified as a single value, + it is applied uniformly. If specified as an array, it is assumed to + provide a pixel-by-pixel map. + + See Also + -------- + :class:`~lentil.detector.Rule07DarkCurrent` Rule 07 dark current model for + IR detectors + + """ + + def __init__(self, rate): + super().__init__(rate) + + @property + def rate(self): + return self.data + + +class Rule07DarkCurrent(DarkCurrent): + """Model for representing dark current in HgCdTe infrared detectors using + Rule 07. + + Parameters + ---------- + temperature : float + Focal plane temperature in K + + cutoff_wavelength : float + Focal plane cutoff wavelength in m + + pixelscale : float + Size of one pixel in m + + References + ---------- + * Tennant, W.E. et al. MBE HgCdTe Technology: A Very General Solution to IR + Detection, Described by "Rule 07", a Very Convenient Heuristic. Journal of + Electronic Materials (2008). + + """ + + def __init__(self, temperature, cutoff_wavelength, pixelscale): + + self.temperature = temperature + self.cutoff_wavelength = cutoff_wavelength + + J0 = 8367.00001853855 # A/cm^2 + C = -1.16239134096245 + k = 1.3802e-23 # J/K - Boltzmanns' constant + q = 1.6021e-19 # C - electron charge + + lambda_threshold = 4.63513642316149 + lambda_scale = 0.200847413564122 + P = 0.544071281108481 + + # compute lambda_e + lambda_cutoff = cutoff_wavelength * 1e6 # meters to microns + if lambda_cutoff >= lambda_threshold: + lambda_e = lambda_cutoff + else: + lambda_e = lambda_cutoff/(1-((lambda_scale/lambda_cutoff) - + (lambda_scale/lambda_threshold))**P) + + # apply Rule 07 to compute the dark flux in A/cm^2 + J = J0*np.exp(C*(1.24*q/(k*lambda_e*temperature))) + + # convert J in A/cm^2 to J in e-/px/s + px_area = (pixelscale*1e2)**2 # pixel area in cm^2 + super().__init__(rate=1/q * px_area * J) + + def __call__(self, shape, *args, **kwargs): + """Create dark signal array + + Parameters + --------- + shape : array_like + Dimensions of dark signal array to create + + Returns + ------- + dark_signal : ndarray + Dark signal array + + """ + return self.rate * np.ones(shape) + + +class FPN(Windowable): + """Base class for all radiometry of fixed-pattern noise . + + Parameters + ---------- + data : array_like + FPN array. + + """ + def __init__(self, data): + super().__init__(data) + + def __call__(self, frame, window=None): + """Apply fixed pattern noise to an array. + + The output array :math:`A'` is related to the input array :math:`A` + by + + .. math:: + + A' = A*F + + where :math:`F` is the :attr:`data` FPN array. + + Parameters + ---------- + frame : ndarray + + window : array_like or None, optional + Indices of :attr:`data` FPN array to return given as (r_start, + r_end, c_start, c_end). This definition follows standard Numpy + indexing. + + Returns + ------- + frame : ndarray + Array with FPN applied + + """ + return frame * self.fpn(frame.shape, window) + + def fpn(self, shape=None, window=None): + return self.window(shape, window) + + +class RandomFPN(FPN): + """Base class for randomly generated fixed-pattern noise with an optional + user-definable seed. + + Parameters + ---------- + seed : None, int, or array_like, optional + Seed for random number generator. If ``None`` (default), the Numpy + default is used. + + Attributes + ---------- + rng : numpy.random.RandomState or None + Random number generator object + + data : ndarray + FPN array. + + """ + def __init__(self, seed=None): + self.seed = seed + if seed: + self.rng = np.random.RandomState(seed) + else: + self.rng = None + + self.data = None + + +class NormalFPN(RandomFPN): + """Base class for fixed pattern noise represented by a normal distribution. + + Parameters + ---------- + loc : float + + scale : float + + size : float + + """ + def __init__(self, loc, scale, size, seed=None): + super().__init__(seed) + if self.rng: + self.data = self.rng.normal(loc, scale, size) + else: + self.data = np.random.normal(loc, scale, size) + + +class LognormalFPN(RandomFPN): + """Base class for fixed pattern noise represented by a log-normal + distribution. + + Parameters + ---------- + mean : float + + sigma : float + + size : float + + """ + def __init__(self, mean, sigma, size, seed=None): + super().__init__(seed) + if self.rng: + self.data = self.rng.lognormal(mean, sigma, size) + else: + self.data = np.random.lognormal(mean, sigma, size) + + +class UniformFPN(RandomFPN): + """Base class for fixed pattern noise represented by a uniform distribution. + + Parameters + ---------- + low : float + + high : float + + size : float + + """ + def __init__(self, low, high, size, seed=None): + super().__init__(seed) + if self.rng: + self.data = self.rng.uniform(low, high, size) + else: + self.data = np.random.uniform(low, high, size) + + +class PRNU(NormalFPN): + """Model for representing photoresponse non-uniformity. + + """ + def __init__(self, prnu_factor, size, seed=None): + self.prnu_factor = prnu_factor + super().__init__(loc=1.0, scale=prnu_factor, size=size, seed=seed) + + +class DarkCurrentFPN(LognormalFPN): + """Dark current FPN model, represented by a log-normal distribution. + + Parameters + ---------- + sigma : float + Dark current FPN factor, usually between 0.1 and 0.4 for CCD and CMOS + detectors [2]. + + size : None, tuple, or array_like, optional + Precomputed FPN matrix size. Typically this will be equal to the + detector size. See :class:`GainFPN` note for details on the two + different modes for when ``size`` is specified or not. + + seed : None, int, or array_like, optional + Random seed used to initialize ``numpy.random.RandomState``. If + ``None``, then ``RandomState`` will try to read data from /dev/urandom + (or the Windows analogue) if available or seed from the clock otherwise. + + References + ---------- + [1] `Log-normal distribution - Wikipedia `_ + + [2] Janesick, J. R., Photon Transfer, Vol. PM170, SPIE (2007) + + """ + + def __init__(self, sigma, size, seed=None): + super().__init__(mean=1.0, sigma=sigma, size=size, seed=seed) + self.sigma = sigma + + +class PixelOffsetFPN(NormalFPN): + r"""Pixel offset FPN model. + + Pixel offset FPN can be represented by an autoregressive random process with + (:math:`\mu = 0.0, \sigma = ` :attr:`sigma`) [1], [2]. + + Parameters + ---------- + sigma : float + 1-sigma pixel offset FPN value in number of electrons + + ar_parameter : float + Autoregressive parameter which characterizes the dependency of each + pixel on its neighbors. Valid values are between 0 and 0.5 [1]. Small + values correspond to less correlation. + + size : None or array_like, optional + Precomputed FPN matrix size. Typically this will be equal to the + detector size. See :class:`GainFPN` note for details on the two + different modes for when ``size`` is specified or not. + + seed : None, int, or array_like, optional + Random seed used to initialize ``numpy.random.RandomState``. If + ``None``, then ``RandomState`` will try to read data from /dev/urandom + (or the Windows analogue) if available or seed from the clock otherwise. + + References + ---------- + [1] El Gamal, A. et. al., Modeling and Estimation of FPN Components in CMOS Image Sensors, SPIE Proc. 3301 (1998) + + [2] `Autoregressive model - Wikipedia `_ + + """ + + def __init__(self, sigma, ar_parameter, size, seed=None): + assert (ar_parameter >= 0) and (ar_parameter <= 0.5) + + super().__init__(loc=1.0, scale=sigma, size=size, seed=seed) + self.sigma = sigma + self.ar_parameter = ar_parameter + + # apply the autoregressive filter + self.data = signal.lfilter([1], [1, self.ar_parameter], self.data, axis=0) + + +class ColumnOffsetFPN(NormalFPN): + r"""Column offset FPN model. + + Column offset FPN can be represented by an autoregressive random process + with (:math:`\mu = 0.0, \sigma = ` :attr:`sigma`) [1], [2]. + + Parameters + ---------- + sigma : float + 1-sigma column offset FPN value in number of electrons + + ar_parameter : float + Autoregressive parameter which characterizes the dependency of each + column on its neighbors. Valid values are between 0 and 0.5 [1]. Small + values correspond to less correlation. + + size : None or array_like, optional + Precomputed FPN matrix size. Typically this will be equal to the + detector size. See :class:`GainFPN` note for details on the two + different modes for when ``size`` is specified or not. + + seed : None, int, or array_like, optional + Random seed used to initialize ``numpy.random.RandomState``. If + ``None``, then ``RandomState`` will try to read data from /dev/urandom + (or the Windows analogue) if available or seed from the clock otherwise. + + References + ---------- + [1] El Gamal, A. et. al., Modeling and Estimation of FPN Components in CMOS + Image Sensors, SPIE Proc. 3301 (1998) + + [2] `Autoregressive model - Wikipedia `_ + + """ + + def __init__(self, sigma, ar_parameter, size, seed=None): + assert (ar_parameter >= 0) and (ar_parameter <= 0.5) + + super().__init__(loc=1.0, scale=sigma, size=size[1], seed=seed) + self.sigma = sigma + self.ar_parameter = ar_parameter + + # apply the autoregressive filter + self.data = signal.lfilter([1], [1, self.ar_parameter], self.data) + self.data = np.tile(self.data, (size[0], 1)) + + +class ChargeDiffusion: + """Charge diffusion model represented by a gaussian blur.""" + def __init__(self, sigma): + self.sigma = sigma + self.kernel = util.gaussian2d(3, self.sigma) + + def __call__(self, img): + return signal.convolve2d(img, self.kernel, mode='same') + + +class Defect(Windowable): + """Base class for representing detector defects.""" + pass + + +class PixelMask(Defect): + """Class for representing defective, nonlinear, or dead pixels by providing + a mask. + """ + pass + + +class CosmicRay: + """Cosmic ray generator for simulating cosmic ray hits on a detector. + + The default values for cosmic ray rates and electron fluxes are taken from + [1]. It is commonly accepted at about 90% of cosmic rays are protons and the + majority of the remaining 10% are alpha particles [1], [2]. + + Parameters + ---------- + rate : float, optional + Cosmic ray rate expressed as number of events per square meter of + detector area. Default is 40000 hits/m^2. + + proton_flux : float, optional + Number of electrons liberated per meter of travel for a proton. Default + is 1e9 e-/m. + + alpha_flux : float, optional + Number of electrons liberated per meter of travel for an alpha particle. + By definition, alpha particles have four times the energy of protons. + Default is 4e9 e-/m. + + Example + ------- + Simulate the cosmic ray hits for a 300 second exposure over a 256 x 256 detector + patch with 5 um x 5 um x 3 um pixels: + + .. code:: pycon + + >>> import matplotlib.pyplot as plt + >>> import lentil + >>> cosmic_generator = lentil.detector.CosmicRay() + >>> cosmic_frame = cosmic_generator((256,256), (5e-6, 5e-6, 3e-6), 300) + >>> plt.imshow(cosmic_frame) + + .. image:: ../_static/img/api/detector/cosmic_ray.png + :width: 300px + + References + ---------- + [1] Offenberg, J.D. et. al. Multi-Read Out Data Simulator. (2000). + + [2] `Cosmic ray - Wikipedia `_ + """ + + def __init__(self, rate=4e4, proton_flux=1e9, alpha_flux=4e9): + self.rate = rate + self.proton_flux = proton_flux + self.alpha_flux = alpha_flux + + def __call__(self, shape, pixelscale, ts): + """Simulate cosmic ray hits on a detector. + + Parameters + ---------- + shape : array_like + Frame size defined as (rows, cols) + + pixelscale : array_like + Pixel dimensions as (y,x,z) where z is the pixel depth + + ts : float + Integration time in seconds + + Returns + ------- + cosmic_e : ndarray + Array representing the number of electrons in a detector image due + to cosmic ray hits + + + """ + + # compute the number of rays that strike the detector during the + # integration time + nrays = self.nrays(shape, pixelscale, ts) + + img = np.zeros(shape) + for ray in np.arange(0, nrays): + img += self.cosmic_ray(shape, pixelscale) + return img + + def nrays(self, shape, pixelscale, ts): + area = shape[0]*pixelscale[0]*shape[1]*pixelscale[1] + + nrays = area * self.rate * ts + + # even if we don't have any events as defined by the rate, there is + # still a chance we will see an event + if nrays < 1: + if np.random.uniform() <= nrays: + nrays = 1 + else: + nrays = 0 + + return int(nrays) + + def cosmic_ray(self, shape, pixelscale): + + # randomly choose which type of particle we have + if np.random.uniform() > 0.9: + # alpha particle + electron_flux = self.alpha_flux + else: + # proton + electron_flux = self.proton_flux + + img = np.zeros(shape) + + # random position + r = np.random.rand() * (shape[0]-1) + c = np.random.rand() * (shape[1]-1) + z = 0 + position = np.array([r, c, z]) + + # give the cosmic ray a random direction (theta) and angle of incidence + # (phi) and compute a unit vector representing the ray's direction of + # travel. we can make things slightly easier on ourselves by limiting + # phi to the interval 0 < phi < pi. this is assumed to be valid because + # a cosmic ray striking the detector from behind will have essentially + # the same effect as one striking it from the front. phi is negative to + # force the z-direction of v to be negative (traveling into the detector + # from above) + theta = np.random.uniform() * 2 * np.pi + phi = np.random.uniform() * 1*np.pi + direction = np.array([np.cos(theta)*np.cos(phi), np.sin(theta)*np.cos(phi), + -np.sin(phi)]) + + # scale the direction vector so that we can use ray_box_exit() assuming + # a cube instead of a potentially rectangular pixel size + pixelscale = np.asarray(pixelscale) + scale = pixelscale/np.max(pixelscale) + direction /= scale + direction /= np.linalg.norm(direction) + + extent = (0, shape[0]-1, 0, shape[1]-1, 0, -1) + + # propagate the ray + ray = self.propagate(position, direction, extent) + + for i in np.arange(0, ray.shape[0]-1): + + # compute the distance the ray traveled in pixel space + dr = (ray[i+1][0]-ray[i][0])*pixelscale[0] + dc = (ray[i+1][1]-ray[i][1])*pixelscale[1] + dz = (ray[i+1][2]-ray[i][2])*pixelscale[2] + dist = np.sqrt(dr**2+dc**2+dz**2) + + row = int(np.floor(ray[i+1][0])) + col = int(np.floor(ray[i+1][1])) + img[row, col] += electron_flux*dist + + return img + + @staticmethod + def propagate(position, direction, extent): + position = position[np.newaxis, ...] + direction = direction[np.newaxis, ...] + + intersections = cubeplane_ray_intersection(position, direction, extent) + raw_ray_data = process_cube_intersections(intersections, position, direction) + + return raw_ray_data[3] + + +def cubeplane_ray_intersection(xyz, dxdydz, extent): + """Intersects rays with a plane of cubes and returns data about + intersections + + Suppose the walls of the cube are on integer boundaries in the space of + extent[0] <= x <= extent[1], extent[2] <= y <= extent[3], extent[4] <= z <= + extent[5] + + Parameters + ---------- + xyz : ndarray, ndim=2 + xyz[:, 0] is the x coordinate of the starting point of the ray, + xyz[:, 1] is the y coordinate of the starting point of the ray. + xyz[:, 2] is the z coordinate of the starting point. + + dxdydz : double ndim=2 + Unit vector representing the direction of travel of the ray. + + extent : tuple of int + Integer address for the detector edge on the -x, +x, -y, + +y, -z and +z edges. Should be representable as an int16. + + Returns + ------- + inter : structured ndarray + This is an array of structures with the dtype ('raylength', 'f4'), + ('indx', 'u8'), ('facedirection', 'u1') where indx is the number of the + row for the ray in xyz/dxdydz, raylength is the distance along the ray + of the intersection and facedirection is an indicator of the ray + direction. If face_direction = 0, 2, 4, the ray passed through the + constant X, Y or Z planes, respectively, going from positive to + negative. If face_direction = 1, 3, 5, the ray was going from negative + to positive X, Y or Z through a surface. + + Notes + ----- + If you don't like the output of this function, feed it into + process_cube_intersections(). + + This code has been tested when the rays start outside the cube volume. Would + recommend not starting rays inside cube or within 2e-7 of a cube boundary. + + Very very very slightly adapted from code kindly developed by Dustin Moore. + + """ + + xyz = xyz.astype(np.float32) + dxdydz = dxdydz.astype(np.float32) + + indx = np.array(range(xyz.shape[0]), dtype=np.uint64) + + extent_shaped = np.array(extent, dtype=np.float32).reshape((1, 3, 2)) + + # CUBE INTERSECTION + # distance along ray before it penetrates outer CCD grid on xyz, -/+ side + max_Ls = np.true_divide(extent_shaped - xyz[:, :, None], dxdydz[:, :, None]) + max_Ls[np.isinf(max_Ls)] = np.nan + + # Find length of ray to point where it enters cube array + min_L = np.nanmax(np.min(max_Ls, axis=2), axis=1) + + # Find total length of ray to point as it exits cube array + max_L = np.nanmin(np.max(max_Ls, axis=2), axis=1) + del max_Ls + + # Find rays that never intersect cube or only intersect if the ray traced + # backward + no_intersection_mask = np.logical_or(max_L < min_L, max_L <= 0.0) + + # ... and chuck them from the calculation + if np.any(no_intersection_mask): + keep_mask = np.invert(no_intersection_mask) + xyz = xyz[keep_mask, :] + dxdydz = dxdydz[keep_mask, :] + indx = indx[keep_mask] + min_L = min_L[keep_mask] + max_L = max_L[keep_mask] + del keep_mask + del no_intersection_mask + + # CUBE EDGE INTERSECTIONS + # Shortest travel along each axis before ray exits cube array bounding + # extent + min_L[min_L < 0.0] = 0.0 # Rays can not go backward + nearest = xyz + (min_L[:, None] - 1e-5) * dxdydz + del min_L + # Furthest travel along each axis before ray exits cube array bounding + # extent + furthest = xyz + (max_L[:, None] + 1e-5) * dxdydz + del max_L + + d_pos = dxdydz >= 0.0 + least = np.ceil(np.where(d_pos, nearest, furthest)).astype(np.int16) + great = np.floor(np.where(d_pos, furthest, nearest)).astype(np.int16) + 1 + + d_pos = d_pos.astype(np.uint8) + d_pos[:, 1] += 2 + d_pos[:, 2] += 4 + + # No iterate when intersection impossible + np.putmask(great, dxdydz == 0.0, -32768) + + intersections = [] # O(1) appends for the win. + + for xy, dxd, lea, grea, id, dp in zip(xyz, dxdydz, least, great, indx, d_pos): + # algorithm-limiting performance here + this_ints = [((q - xy[0]) / dxd[0], id, dp[0]) for q in range(lea[0], grea[0])] + + this_ints += [((q - xy[1]) / dxd[1], id, dp[1]) for q in range(lea[1], grea[1])] + + this_ints += [((q - xy[2]) / dxd[2], id, dp[2]) for q in range(lea[2], grea[2])] + + intersections += sorted(this_ints) + + # We repack the list into a numpy object for ease of conveyence back to the + # mother process and later numpy computations + fancy_dtype = np.dtype([('raylength', 'f4'), ('indx', 'u8'), + ('facedirection', 'u1')], align=True) + inter = np.array(intersections, dtype=fancy_dtype) + + return inter + + +def process_cube_intersections(inter, xyz, dxdydz, verbose=False): + """Intersects rays with a plane of cubes and returns data about + intersections + + Suppose the walls of the cube are on integer boundaries in the space of + extent[0] <= x <= extent[1], extent[2] <= y <= extent[3], extent[4] <= z + <= extent[5] + + Parameters + ---------- + inter : list of tuple + Output of cubeplane_ray_intersection() or _cubeplane_ray_intersection() + + xyz : ndarray, ndim=2 + xyz[:, 0] is the x coordinate of the starting point of the ray, + xyz[:, 1] is the y coordinate of the starting point of the ray. + xyz[:, 2] is the z coordinate of the starting point. + + dxdydz : double ndim=2 + Unit vector representing the direction of travel of the ray. + + verbose: bool, optional + If True, prints every ray intersection in human readable format. Default + is False. + + Returns + ------- + indx : ndarray of np.uint64 + Index of the ray for each ray intersection + + raylength : ndarray of np.float32 + Length along each ray that the intersection happened + + draylength : ndarray of np.float32 + Length along ray travsersed since ray was born or last intersection, + which ever came most recently + + interpoint : ndarray of np.float32 + One row for each ray intersection, values are x,y,z of intersection + point + + last_coord : ndarray of np.int16 + One row for each ray intersection, values are the x,y,z coordinate of + the cube that the ray is leaving. (May not be inside extent, you should + check if you care.) + + next_coord : ndarray of np.int16 + One row for each ray intersection, values are the x,y,z coordinate of + the cube that the ray is entering. (May not be inside extent, you should + check if you care.) + + Notes + ----- + This code has been tested when the rays start outside the cube + volume. Would recommend not starting rays inside cube or within 2e-7 of a + cube boundary. + + Originally developed by Dustin Moore. + + """ + + _xyz = xyz[inter['indx'], :].astype(np.float32) + _dxdydz = dxdydz[inter['indx'], :].astype(np.float32) + + draylength = np.ediff1d(inter['raylength'], to_begin=(0.0,)) + np.putmask(draylength, np.ediff1d(inter['indx'], to_begin=(1,)) != 0, + inter['raylength']) + + inter_point = _xyz + inter['raylength'][:, None] * _dxdydz + + next_pixel_bias = np.array([[-1e-2, 0.0, 0.0], [1e-2, 0.0, 0.0], + [0.0, -1e-2, 0.0], [0.0, 1e-2, 0.0], + [0.0, 0.0, -1e-2], [0.0, 0.0, 1e-2]]) + + w = np.choose(inter['facedirection'][:, None], next_pixel_bias) + next_coord = np.empty(_xyz.shape, dtype=np.int16) + np.floor(inter_point + w, out=next_coord, casting='unsafe') + + last_coord = np.empty(_xyz.shape, dtype=np.int16) + np.floor(inter_point - w, out=last_coord, casting='unsafe') + + if verbose: + last_indx = -1 + for ind, rl, ip, lc, nc, dl in zip(inter['indx'], inter['raylength'], + inter_point, last_coord, next_coord, + draylength): + if last_indx != ind: + print('Ray ' + str(ind) + ' is born at ' + str(xyz[ind, :]) + + ' and heads off in direction ' + str(dxdydz[ind, :])) + print(' then leaves cube ' + str(lc) + ' at ' + str(ip) + + ' for cube ' + str(nc) + ' after having gone ' + + str(dl) + ' and traveling ' + str(rl) + ' from inception') + last_indx = ind + + return (inter['indx'], inter['raylength'], draylength, inter_point, + last_coord, next_coord) diff --git a/lentil/fourier.py b/lentil/fourier.py new file mode 100644 index 0000000..3331cde --- /dev/null +++ b/lentil/fourier.py @@ -0,0 +1,166 @@ +import numpy as np + +__all__ = ['dft2', 'idft2'] + + +def dft2(f, alpha, npix=None, shift=(0, 0), unitary=True): + """Compute the 2-dimensional discrete Fourier Transform. + + Parameters + ---------- + f : array_like + 2D array to Fourier Transform + + alpha : float or array_like + Output plane sampling interval (frequency). If :attr:`alpha` is an + array, ``alpha[1]`` represents row-wise sampling and ``alpha[2]`` + represents column-wise sampling. If :attr:`alpha` is a scalar, + ``alpha[1] = alpha[2] = alpha`` gives uniform sampling across the rows + and columns of the output plane. + + npix : int or array_like, optional + Size of the output array :attr:`F`. If :attr:`npix` is an array, + ``F.shape = (npix[1], npix[2])``. If :attr:`npi`` is a scalar, + ``F.shape = (npix, npix)``. Default is ``f.shape``. + + shift : array_like, optional + Number of pixels in (x,y) to shift the DC pixel in the output plane + with the origin centrally located in the plane. Default is ``[0,0]``. + + unitary : bool, optional + Normalization flag. If ``True``, a normalization is performed on the + output such that the DFT operation is unitary and energy is conserved + through the Fourier transform operation (Parseval's theorem). In this + way, the energy in in a limited-area DFT is a fraction of the total + energy corresponding to the limited area. Default is ``True``. + + Returns + ------- + F : complex ndarray + + Notes + ----- + * Setting ``alpha = 1/f.shape`` and ``npix = f.shape`` is equivalent to + + :: + + F = np.fft.ifftshift(np.fft.fft2(np.fft.ifftshift(f))) + + * ``dft2()`` is designed to place the DC pixel in the same location as a + well formed call to any standard FFT for both even and odd sized input + arrays. The DC pixel is located at ``np.floor(npix/2) + 1``, which is + consistent with calls to Numpy's FFT method where the input and output + are correctly shifted: + ``np.fft.fftshift(np.fft.fft2(np.fft.ifftshift(f)))``. + + * If the y-axis shift behavior is not what you are expecting, you most + likely have your plotting axes flipped (matplotlib's default behavior is + to place [0,0] in the upper left corner of the axes). This may be resolved + by either flipping the sign of the y component of ``shift`` or by passing + ``origin = 'lower'`` to ``imshow()``. + + """ + + alpha = np.asarray(alpha) + if alpha.size == 1: + ay, ax = alpha, alpha + else: + ay, ax = alpha + + f = np.asarray(f) + m, n = f.shape + + if npix is None: + npix = [m, n] + + npix = np.asarray(npix) + if npix.size == 1: + M, N = npix, npix + else: + M, N = npix + + sx, sy = np.asarray(shift) + + # Y and X are (r,c) coordinates in the (m x n) input plane f + # V and U are (r,c) coordinates in the (M x N) ourput plane F + + X = np.arange(n) - np.floor(n/2.0) - sx + Y = np.arange(m) - np.floor(m/2.0) - sy + U = np.arange(N) - np.floor(N/2.0) - sx + V = np.arange(M) - np.floor(M/2.0) - sy + + E1 = np.exp(-2.0 * np.pi * 1j * ay * np.outer(Y, V)).T + E2 = np.exp(-2.0 * np.pi * 1j * ax * np.outer(X, U)) + + F = E1.dot(f).dot(E2) + + if unitary is True: + return F * np.sqrt(np.abs(ax * ay)) + else: + return F + + +def idft2(F, alpha, npix=None, shift=(0, 0), unitary=True): + """Compute the 2-dimensional inverse discrete Fourier Transform. + + Parameters + ---------- + F : array_like + 2D array to Fourier Transform + + alpha : float or array_like + Input plane sampling interval (frequency). If :attr:`alpha` is an array, + ``alpha[1]`` represents row-wise sampling and ``alpha[2]`` represents + column-wise sampling. If :attr:`alpha` is a scalar, + ``alpha[1] = alpha[2] = alpha`` represents uniform sampling across the + rows and columns of the input plane. + + npix : int or array_like, optional + Size of the output array :attr:`F`. If :attr:`npix` is an array, + ``F.shape = (npix[1], npix[2])``. If :attr:`npix` is a scalar, + ``F.shape = (npix, npix)``. Default is ``F.shape`` + + shift : array_like, optional + Number of pixels in (x,y) to shift the DC pixel in the output plane with + the origin centrally located in the plane. Default is `[0,0]`. + + unitary : bool, optional + Normalization flag. If ``True``, a normalization is performed on the + output such that the DFT operation is unitary and energy is conserved + through the Fourier transform operation (Parseval's theorem). In this + way, the energy in in a limited-area DFT is a fraction of the total + energy corresponding to the limited area. Default is ``True``. + + Returns + ------- + f : complex ndarray + + Notes + ----- + * Setting ``alpha = 1/F.shape`` and ``npix = F.shape`` is equivalent to + + :: + + F = np.fft.fftshift(np.fft.ifft2(np.fft.ifftshift(F))) + + * ``idft2()`` is designed to place the DC pixel in the same location as a + well formed call to any standard FFT for both even and odd sized input + arrays. The DC pixel is located at ``np.floor(npix/2) + 1``, which is + consistent with calls to Numpy's IFFT method where the input and output + are correctly shifted: + ``np.fft.fftshift(np.fft.ifft2(np.fft.ifftshift(f)))``. + + * If the y-axis shift behavior is not what you are expecting, you most + likely have your plotting axes flipped (matplotlib's default behavior is + to place [0,0] in the upper left corner of the axes). This may be resolved + by either flipping the sign of the y component of ``shift`` or by passing + ``origin = 'lower'`` to ``imshow()``. + + References + ---------- + * `Expressing the inverse DFT in terms of the DFT `_. # NOQA + + """ + F = np.asarray(F) + N = F.size + return np.conj(dft2(np.conj(F), alpha, npix, shift, unitary))/N diff --git a/lentil/fpa.py b/lentil/fpa.py new file mode 100644 index 0000000..7690d14 --- /dev/null +++ b/lentil/fpa.py @@ -0,0 +1,794 @@ +import numpy as np +from scipy import ndimage + +from lentil.convolvable import Pixel +from lentil.plane import Detector +from lentil.radiometry import Spectrum +from lentil import detector +from lentil import util + +__all__ = ['FPA', 'BayerFPA'] + + +class FPA(Detector): + """Focal plane array base class. + + The entire signal flow through the FPA model is depicted in the figure + below. Boxes represented by attributes which are ``None`` are simply passed + through without modifying the signal in any way. + + .. image:: ../_static/img/detector_model.png + + Parameters + ---------- + pixelscale : float + Pixel size in meters. Pixels are assumed to be square. + + shape : int or array_like + Number of pixels as (rows, cols). If a single value is provided, the + :class:`FPA` is assumed to be square with nrows = ncols = shape. + + **kwargs : :class:`FPA` properties, optional + Additional detector attributes which can be optionally specified. Any + attributes not defined will default to None and have no effect on + image simulations. The full list of supported attributes is: + + ======================== ====================================================================== + :attr:`charge_diffusion` :class:`~detector.ChargeDiffusion` model + :attr:`cosmic_rays` :class:`~detector.CosmicRay` model + :attr:`dark_shot_noise` Dark current :class:`~detector.ShotNoise` model + :attr:`dark_signal` :class:`~detector.DarkSignal` model + :attr:`defects` :class:`~detector.Defect` or list of :class:`~detector.Defect` objects + :attr:`dsnu` Dark signal nonuniformity :class:`~detector.FPN` model + :attr:`gain` :class:`~detector.Gain` model + :attr:`offset_fpn` Offset :class:`~detector.FPN` model + :attr:`prnu` Light signal nonuniformity :class:`~detector.FPN` model + :attr:`qe` QE as a :class:`~lentil.radiometry.Spectrum` or a scalar + :attr:`read_noise` :class:`~detector.ReadNoise` model + :attr:`shot_noise` :class:`~detector.ShotNoise` model + ======================== ====================================================================== + + Examples + -------- + Additional arguments can be passed in individually: + + .. code:: pycon + + >>> f = FPA(pixelscale=5e-6, shape=(256, 256), read_noise=ReadNoise(50)) + + They can also be packed into a dictionary and passed in that way: + + .. code:: pycon + + >>> f_attrs = {'shot_noise': ShotNoise(), 'dark_current': DarkCurrent(500)} + >>> f = FPA(pixelscale=5e-6, shape=(256, 256), **f_attrs) + + """ + # TODO: rewrite this like Plane constructor. Also need to define __init_subclass__ + def __init__(self, pixelscale, shape, **kwargs): + super().__init__(pixelscale, shape) + + self.qe = kwargs.get('qe', None) + self.shot_noise = kwargs.get('shot_noise', None) + self.prnu = kwargs.get('prnu', None) + self.dark_signal = kwargs.get('dark_signal', None) + self.dark_shot_noise = kwargs.get('dark_shot_noise', None) + self.dsnu = kwargs.get('dsnu', None) + self._gain = kwargs.get('gain', None) + self._read_noise = kwargs.get('read_noise', None) + self._offset_fpn = kwargs.get('offset_fpn', None) + self._charge_diffusion = kwargs.get('charge_diffusion', None) + self._defects = kwargs.get('defects', None) + self._cosmic_rays = kwargs.get('cosmic_rays', None) + + @property + def qe(self): + """Quantum efficiency curve used to convert detected photons to + electrons. + + Returns + ------- + qe : :class:`~lentil.radiometry.Spectrum` + + """ + return self._qe + + @qe.setter + def qe(self, value): + if value is None: + self._qe = None + elif isinstance(value, Spectrum): + self._qe = value + else: + raise AttributeError('qe must be a Spectrum object or None') + + @property + def shot_noise(self): + """Shot noise model applied to the light signal. If ``None`` (default), + shot noise is not applied. + + Returns + ------- + shot_noise : :class:`~lentil.detector.ShotNoise` or None, optional + + """ + return self._shot_noise + + @shot_noise.setter + def shot_noise(self, value): + if value is None: + self._shot_noise = None + elif isinstance(value, detector.ShotNoise): + self._shot_noise = value + else: + raise AttributeError('shot_noise must be a ShotNoise object or None') + + @property + def prnu(self): + """Photo response non-uniformity model. If ``None`` (default), PRNU is + not applied. + + Returns + ------- + prnu : :class:`~lentil.detector.FPN` or None, optional + + """ + return self._prnu + + @prnu.setter + def prnu(self, value): + if value is None: + self._prnu = None + elif isinstance(value, detector.FPN): + self._prnu = value + else: + raise AttributeError('prnu must be an FPN object or None') + + @property + def dark_signal(self): + """Dark signal model. If not ``None`` (default), dark current is not + applied. + + Returns + ------- + dark_signal : :class:`~lentil.detector.DarkSignal` or None, optional + + """ + return self._dark_signal + + @dark_signal.setter + def dark_signal(self, value): + if value is None: + self._dark_signal = None + elif isinstance(value, detector.DarkSignal): + self._dark_signal = value + else: + raise AttributeError('dark_signal must be a DarkSignal object or None') + + @property + def dark_shot_noise(self): + """Shot noise model applied to the dark signal. If ``None`` (default), + shot noise is not applied. + + Returns + ------- + dark_shot_noise : :class:`~lentil.detector.ShotNoise` or None, optional + + """ + return self._dark_shot_noise + + @dark_shot_noise.setter + def dark_shot_noise(self, value): + if value is None: + self._dark_shot_noise = None + elif isinstance(value, detector.ShotNoise): + self._dark_shot_noise = value + else: + raise AttributeError('dark_shot_noise must be a ShotNoise object or None') + + @property + def dsnu(self): + """Dark signal fixed-pattern noise (DSNU) model. Multiple models are + combined when specified as a list. If ``None`` (default), DSNU is not + applied. + + Returns + ------- + dsnu : :class:`~lentil.detector.FPN`, list_like or None, optional + + """ + return self._dsnu + + @dsnu.setter + def dsnu(self, value): + if value is None: + self._dsnu = None + elif isinstance(value, detector.FPN): + self._dsnu = value + else: + raise AttributeError('dsnu must be an FPN object or None') + + @property + def gain(self): + """Gain model used to convert electrons to DN + + Returns + ------- + gain : :class:`~lentil.detector.Gain` + + """ + return self._gain + + @gain.setter + def gain(self, value): + if value is None: + self._gain = None + elif isinstance(value, detector.Gain): + self._gain = value + else: + raise AttributeError('gain must be a Gain object or None') + + @property + def read_noise(self): + """Read noise model applied during the readout of the analog signal. If + ``None`` (default), read noise is not applied. + + Returns + ------- + read_noise : :class:`~lentil.detector.ReadNoise` or None, optional + + """ + return self._read_noise + + @read_noise.setter + def read_noise(self, value): + if value is None: + self._read_noise = None + elif isinstance(value, detector.ReadNoise): + self._read_noise = value + else: + raise AttributeError('read_noise must be a ReadNoise object or None') + + @property + def offset_fpn(self): + """Offset fixed pattern noise model. Multiple models are applied + serially when specified as a list. If ``None`` (default), offset FPN is + not applied. + + Returns + ------- + offset_fpn : :class:`~lentil.detector.FPN`, list_like, or None, optional + + """ + return self._offset_fpn + + @offset_fpn.setter + def offset_fpn(self, value): + if value is None: + self._offset_fpn = None + elif isinstance(value, detector.FPN): + self._offset_fpn = value + else: + raise AttributeError('offset_fpn must be an FPN object or None') + + @property + def charge_diffusion(self): + """Charge diffusion model describing how charge leaks into adjacent + pixels. If ``None`` (default), charge diffusion is not applied. + + Returns + ------- + charge_diffusion : :class:`~lentil.detector.ChargeDiffusion` or None, + optional + + """ + return self._charge_diffusion + + @charge_diffusion.setter + def charge_diffusion(self, value): + if value is None: + self._charge_diffusion = None + elif isinstance(value, detector.ChargeDiffusion): + self._charge_diffusion = value + else: + raise AttributeError('charge_diffusion must be a ChargeDiffusion ' + 'object or None') + + @property + def defects(self): + """Detector defect model. Multiple models are combined when specified as + a list. If ``None`` (default), defects are not included. + + Returns + ------- + defects : :class:`~lentil.detector.Defect`, list_like, or None, optional + + """ + return self._defects + + @defects.setter + def defects(self, value): + if value is None: + self._defects = None + elif isinstance(value, detector.Defect): + self._defects = value + elif all(isinstance(defect, detector.Defect) for defect in list(value)): + self._defects = list(value) + else: + raise AttributeError('defects must be a Defect object, a list of ' + 'Defect objects, or None') + + @property + def cosmic_rays(self): + """Cosmic ray model. If ``None`` (default), cosmic rays are not + included. + + Returns + ------- + cosmic_rays : :class:`~lentil.cosmic.CosmicRay` or None, optional + + """ + return self._cosmic_rays + + @cosmic_rays.setter + def cosmic_rays(self, value): + if value is None: + self._cosmic_rays = None + elif isinstance(value, detector.CosmicRay): + self._cosmic_rays = value + else: + raise AttributeError('cosmic_rays must be a CosmicRay object or ' + 'None') + + def frame(self, flux, ts, wave=None, waveunit='nm', oversample=1, + pixelate=False, collect_charge=False, window=None, + warn_saturate=False): + """Simulate a frame. + + Parameters + ---------- + flux : array_like + The flux presented to the sensor. ``flux`` should be an (nwave, nrows, + ncols) datacube with units of photons/s where the first dimension + represents wavelength if ``collect_charge`` is True or an + (nrows, ncols) array with units of electrons/s if + ``collect_charge`` is False. + + ts : float + Integration time (seconds) + + wave : array_like, optional + Wavelengths corresponding to each slice in ``flux``. The length of + ``wave`` must be equal to the number of samples ``n`` in ``flux``. + If ``collect_charge = False``, ``wave`` is unused and can be + ``None``. + + waveunit : str, optional + Units of ``wave``. Defaults is ``nm`` + + oversample : int, optional + Oversampling factor present in ``flux``. Default is 1. + + pixelate : bool, optional + If True, ``flux`` is convolved with the pixel MTF before rescaling + the image to native detector sampling. Default is False. + :func:`pixelate` should only be used if ``oversample`` >= 2 + + collect_charge : bool, optional + If False (default), the input ``flux`` is assumed to be in + electrons/s. If True, the input flux is assumed to be a data cube of + photons/s (where the third dimension is wavelength) so the charge + collection process (photons -> electrons) is performed as a part of + frame generation. + + window : array_like or None, optional + Indices of focal plane array to return given as (r_start, r_end, + c_start, c_end). This definition follows standard Numpy indexing. + + warn_saturate : bool, optional + Raise a warning when pixels saturate. Default is False. + + Returns + ------- + frame : ndarray + Raw frame + + Notes + ----- + In cases where dynamic noise (jitter, smear, etc.) is present and needs + to be applied in an oversampled image space, the following approach to + frame generation is recommended: + + * Compute the polychromatic image in oversampled space with + ``flatten = False`` + * Compute the binned detector irradiance at the wavelengths present + in the polychromatic image stack (see: + :func:`~lentil.radiometry.Spectrum.bin`) + * Call :func:`collect_charge` to simulate the charge collection + process. This method will flatten the image, speeding up the + application of convolutional dynamic noise models + * Call :func:`frame` with ``collect_charge = False``. Note that in + this case, the ``wave`` parameter is unused and can be ``None``. + + """ + + # If collect charge is True, we need to make sure the user has supplied + # a wave and waveunit + if collect_charge: + assert wave is not None + assert waveunit is not None + + # accumulate the light signal + light_e = self.light(flux, ts, wave, waveunit, oversample, pixelate, + collect_charge, window) + + # accumulate the dark signal + dark_e = self.dark(light_e.shape, ts, window) + + # cosmic rays + if self.cosmic_rays: + cosmic_e = self.cosmic_rays(light_e.shape, self.pixelscale, ts) + else: + cosmic_e = 0 + + # combine the signals + e = light_e + dark_e + cosmic_e + + # apply charge diffusion + if self.charge_diffusion: + e = self.charge_diffusion(e) + + # apply offset fpn + e = self.offset(e, window) + + # read out the frame + frame = self.readout(e, window, warn_saturate) + + return frame + + def collect_charge(self, count, wave, waveunit='nm', *args, **kwargs): + """Convert photon count (or flux) to electron count (or flux) by + applying the detector's wavelength-dependent quantum efficiency. + + Parameters + ---------- + count : array_like + The photons presented to the sensor. Should have shape (nwave, + nrows, ncols) + + wave : array_like + Wavelengths corresponding to each slice in ``count``. The length of + ``wave`` must be equal to the number of samples ``nwave`` in ``count``. + + waveunit : str, optional + Units of ``wave``. Defaults is ``nm`` + + Returns + ------- + elec : ndarray + Electron count or flux + + Notes + ----- + The units of ``count`` don't really matter, as long as the user is aware + that this method converts photons per whatever to electrons per + whatever. Whatever is nothing for counts and seconds for flux. + + """ + count = np.asarray(count) + if count.ndim == 2: + count = count[np.newaxis, ...] + + qe = self.qe.sample(wave, waveunit=waveunit) + if qe.ndim == 0: + qe = qe[..., np.newaxis] + return np.einsum('ijk,i->jk', count, qe) + + def bias(self, shape=None, window=None): + """Simulate a bias (zero integration time) frame + + Parameters + ---------- + shape : array_like or None, optional + Shape to + + window : array_like or None, optional + Indices of focal plane array to return given as (r_start, r_end, + c_start, c_end). This definition follows standard Numpy indexing. + + Returns + ------- + bias : ndarray + + Notes + ----- + This method is equivalent to calling :func:`frame` with an integration + time of 0. + + """ + if shape is None: + shape = self.shape + else: + shape = tuple(np.asarray(shape)) + + # we don't collect any charge so we just read out a dark frame with zero + # integration time + e = self.dark(shape, 0, window) + + # apply charge diffusion + if self.charge_diffusion: + e = self.charge_diffusion(e) + + # apply offset fpn + e = self.offset(e, window) + + # read out the frame + frame = self.readout(e, window, warn_saturate=False) + + return frame + + def light(self, flux, ts, wave, waveunit, oversample, pixelate, collect_charge, + window): + + # integrate + count = self.integrate(flux, ts) + + # photon to electron conversion - there are two possibilities here: + # 1. count is a wavelength dependent cube so we call collect_charge to + # apply the QE and collapse the cube into a single frame + # 2. count is already collapsed into a single frame + if collect_charge: + light_e = self.collect_charge(count, wave, waveunit, oversample, window) + else: + light_e = count + + # pixelate + if pixelate: + light_e = self.pixelate(light_e, oversample) + elif oversample > 1: + light_e = util.rebin(light_e, oversample) + + # shot noise + if self.shot_noise: + light_e = self.shot_noise(light_e) + + # prnu + if self.prnu: + light_e = self.prnu(light_e, window) + + # no negative electrons + light_e[light_e < 0] = 0 + + return np.floor(light_e) + + def dark(self, shape, ts, window): + + if ts > 0: + # dark current + if self.dark_signal: + dark_flux = self.dark_signal(shape, window) + else: + dark_flux = np.zeros(shape) + + # integrate + dark_e = self.integrate(dark_flux, ts) + + # apply dsnu + if self.dsnu: + if isinstance(self.dsnu, detector.FPN): + dark_e = self.dsnu(dark_e, window) + elif isinstance(self.dsnu, (list, tuple)): + for dsnu in self.dsnu: + dark_e = dsnu(dark_e, window) + else: + raise TypeError('DSNU must be an FPN object or list-like') + + # shot noise + if self.dark_shot_noise: + dark_e = self.dark_shot_noise(dark_e) + + else: + dark_e = np.zeros(shape) + + # no negative electrons + dark_e[dark_e < 0] = 0 + + return np.floor(dark_e) + + def offset(self, electrons, window): + # offset fpn + if self.offset_fpn: + if isinstance(self.offset_fpn, detector.FPN): + electrons = self.offset_fpn(electrons, window) + elif isinstance(self.offset_fpn, (list, tuple)): + for fpn in self.offset_fpn: + electrons = fpn(electrons, window) + else: + raise TypeError('offset_fpn must be an OffsetFPN object or list-like') + + return electrons + + def readout(self, electrons, window, warn_saturate): + # read noise + if self.read_noise: + electrons = self.read_noise(electrons) + + # no negative electrons + electrons[electrons < 0] = 0 + + # no partial electrons + electrons = np.floor(electrons) + + # adc + frame = self.gain(electrons, window, warn_saturate) + + # include focal plane defects + if self.defects: + if isinstance(self.defects, detector.Defect): + frame = self.defects(frame, window) + elif isinstance(self.defects, (list, tuple)): + for defect in self.defects: + frame = defect(frame, window) + + return frame + + @staticmethod + def integrate(img, ts): + return np.floor(img * ts) + + @staticmethod + def pixelate(img, oversample): + pixel_sampling = Pixel() + img = pixel_sampling(img, oversample) + return util.rescale(img, 1/oversample, order=3, mode='nearest', unitary=True) + + +class BayerFPA(FPA): + """Bayer focal plane array base class. + + """ + def __init__(self, pixelscale, shape, bayer_pattern, **kwargs): + super().__init__(pixelscale, shape, **kwargs) + self._bayer_pattern = bayer_pattern + + self._red_qe = kwargs.get('red_qe', None) + self._green_qe = kwargs.get('green_qe', None) + self._blue_qe = kwargs.get('blue_qe', None) + + @property + def red_qe(self): + """Red channel quantum efficiency + + Returns + ------- + red_qe : :class:`~lentil.radiometry.Spectrum` + + """ + return self._red_qe + + @property + def green_qe(self): + """Green channel quantum efficiency + + Returns + ------- + green_qe : :class:`~lentil.radiometry.Spectrum` + + """ + return self._green_qe + + @property + def blue_qe(self): + """Blue channel quantum efficiency + + Returns + ------- + blue_qe : :class:`~lentil.radiometry.Spectrum` + + """ + return self._blue_qe + + @property + def bayer_pattern(self): + """A description of the detector's Bayer pattern. Each value represents + the order of the red, green, and blue pixels starting with the upper- + left corner of the image and moving left-to-right, top-to-bottom.` For + example, ``'GBRG'`` represents the following Bayer pattern: + + = = + G B + R G + = = + + Returns + ------- + bayer_pattern : ``str`` + + """ + if self._bayer_pattern: + bayer_pattern = self._bayer_pattern.reshape(4) + return (str(bayer_pattern[0]) + str(bayer_pattern[1]) + + str(bayer_pattern[2]) + str(bayer_pattern[3])) + else: + return None + + @bayer_pattern.setter + def bayer_pattern(self, value): + self._bayer_pattern = np.array(list(value.upper())).reshape(2, 2) + + @property + def red_kernel(self): + """Return red kernel""" + return np.where(self._bayer_pattern == 'R', 1, 0) + + @property + def blue_kernel(self): + """Return blue kernel""" + return np.where(self._bayer_pattern == 'B', 1, 0) + + @property + def green_kernel(self): + """Return green kernel""" + return np.where(self._bayer_pattern == 'G', 1, 0) + + def collect_charge(self, count, wave, waveunit='nm', oversample=1, window=None): + """Convert photon count (or flux) to electron count (or flux) by + applying the detector's wavelength-dependent quantum efficiency. + Additional processing is performed to apply separate QE curves and + location masks for the separate red, green, and blue channels. + + Parameters + ---------- + count : array_like + The photons presented to the sensor. Should have shape (nwave, + nrows, ncols) + + wave : array_like + Wavelengths corresponding to each slice in ``count``. The length of + ``wave`` must be equal to the first dimension in ``count``. + + waveunit : str, optional + Units of ``wave``. Defaults is ``nm`` + + oversample : int, optional + Oversampling factor present in ``count``. Default is 1. + + window : array_like or None, optional + Indices of focal plane array to use given as (r_start, r_end, + c_start, c_end). This definition follows standard Numpy indexing. + + Returns + ------- + elec : ndarray + Electron count or flux + + Notes + ----- + * The units of ``count`` don't really matter, as long as the user is + aware that this method converts photons per to electrons + per . is nothing for counts and seconds for flux. + * It is important to correctly specify :attr:`oversample` so that the + correct pixel location mask is applied to any oversampled data. + + """ + nrow = count.shape[1]//oversample + ncol = count.shape[2]//oversample + + # build up the bayer image. we do this one channel at a time, and then + # accumulate the individual channels into one final frame + red_qe = self.red_qe.sample(wave, waveunit=waveunit) + red_mosaic = np.tile(self.red_kernel, (nrow//2, ncol//2)) + red_mosaic = ndimage.zoom(red_mosaic, oversample, order=0, mode='wrap') + red_e = np.einsum('ijk,i->jk', count, red_qe) * red_mosaic + + green_qe = self.green_qe.sample(wave, waveunit=waveunit) + green_mosaic = np.tile(self.green_kernel, (nrow//2, ncol//2)) + green_mosaic = ndimage.zoom(green_mosaic, oversample, order=0, mode='wrap') + green_e = np.einsum('ijk,i->jk', count, green_qe) * green_mosaic + + blue_qe = self.blue_qe.sample(wave, waveunit=waveunit) + blue_mosaic = np.tile(self.blue_kernel, (nrow//2, ncol//2)) + blue_mosaic = ndimage.zoom(blue_mosaic, oversample, order=0, mode='wrap') + blue_e = np.einsum('ijk,i->jk', count, blue_qe) * blue_mosaic + + return red_e + green_e + blue_e diff --git a/lentil/modeltools.py b/lentil/modeltools.py new file mode 100644 index 0000000..8a1342a --- /dev/null +++ b/lentil/modeltools.py @@ -0,0 +1,188 @@ +import numpy as np + +__all__ = ['cached_property', 'normalize_power', 'iterable_amplitude', 'iterable_mask', + 'iterable_phase', 'iterable_segmask'] + + +class cached_property: + """Property that checks an object's cache for a cached value stored with the + same attribute name before returning whatever value the in-place property + defines. + + Note + ---- + :class:`cached_property` is a drop-in replacement for Python's ``property`` + decorator. It has no side-effects and is safe to use even if Monocle's + caching backend is not used. + + Example + ------- + First we'll define a simple example class with a ``surface`` property + using ``@cached_property``: + + .. code:: python3 + + import lentil as le + + class CustomPlane(le.Plane): + def __init__(self, surface): + self._surface = surface + + @cached_property + def surface(self): + return 10e-9 + + Now we'll take a look at how a cached property behaves: + + .. code:: pycon + + >>> p = CustomPlane() + >>> p.surface + 1e-08 + >>> p.cache.set('surface', 5e-6) + >>> p.surface + 5e-06 + >>> p.cache.delete('surface') + >>> p.surface + 1e-08 + + """ + + def __init__(self, fget=None, fset=None, fdel=None): + self.fget = fget + self.fset = fset + self.fdel = fdel + self.__doc__ = getattr(fget, '__doc__') + + def __set_name__(self, owner, name): + self.name = name + + def __get__(self, instance, cls=None): + if instance.cache.get(self.name) is not None: + return instance.cache.get(self.name) + else: + return self.fget(instance) + + def __set__(self, instance, value): + if self.fset is None: + raise AttributeError("can't set attribute") + self.fset(instance, value) + + def setter(self, fset): + return type(self)(self.fget, fset, self.fdel) + + +def normalize_power(array, power=1): + r"""Normalizie the power in an array. + + The total power in an array is given by + + .. math:: + + P = \sum{\left|\mbox{array}\right|^2} + + A normalization coefficient is computed as + + .. math:: + + c = \sqrt{\frac{p}{\sum{\left|\mbox{array}\right|^2}}} + + The array returned by a will be scaled by the normalization coefficient so + that its power is equal to :math:`p`. + + Parameters + ---------- + array : array_like + Array to be normalized + + power : float, optional + Desired power in normalized array. Default is 1. + + Returns + ------- + array : ndarray + Normalized array + + """ + array = np.asarray(array) + return array * np.sqrt(power/np.sum(np.abs(array)**2)) + + +def iterable_amplitude(iterable): + """Construct a common amplitude array from an iterable of planes + + Parameters + ---------- + iterable : list_like + List of planes + + Returns + ------- + amplitude : ndarray + + """ + amplitude = np.array(1) + for plane in iterable: + amplitude = amplitude * plane.amplitude + return amplitude + + +def iterable_phase(iterable): + """Construct a common phase array from an iterable of planes + + Parameters + ---------- + iterable: list_like + List of planes + + Returns + ------- + phase: ndarray + + """ + + phase = np.array(0) + for plane in iterable: + phase = phase + plane.phase + return phase + + +def iterable_mask(iterable): + """Construct a common mask array from an iterable of planes + + Parameters + ---------- + iterable: list_like + List of planes + + Returns + ------- + mask: ndarray + + """ + mask = np.array(1) + for plane in iterable: + mask = mask * plane.mask + return mask + + +def iterable_segmask(iterable): + """Construct a common segmask array from an iterable of planes + + Parameters + ---------- + iterable: list_like + List of planes + + Returns + ------- + segmask: ndarray + + """ + if all(plane.segmask is None for plane in iterable): + return None + else: + segmask = np.ones_like(iterable[0].segmask) + for plane in iterable: + segmask = segmask * plane.segmask + return segmask diff --git a/lentil/plane.py b/lentil/plane.py new file mode 100644 index 0000000..8ff13a0 --- /dev/null +++ b/lentil/plane.py @@ -0,0 +1,756 @@ +import numpy as np +from scipy import ndimage + +from lentil.cache import Cache +from lentil.modeltools import (cached_property, iterable_amplitude, + iterable_mask, iterable_phase, iterable_segmask) +from lentil import util +from lentil.wavefront import Angle, Shift + +__all__ = ['Plane', 'Pupil', 'Image', 'Detector', 'DispersiveShift', 'Grism', + 'LensletArray', 'Rotate', 'Flip'] + + +class Plane: + """Base class for representing a finite geometric plane. + + Parameters + ---------- + pixelscale : float + Physical sampling (in meters) of each pixel in the plane + + amplitude : array_like, optional + Electric field amplitude transmission. Amplitude should be normalized + with :func:`~lentil.util.normalize_power` if conservation of power + through a diffraction propagation is required. If not specified, a + default amplitude is created which has no effect on wavefront + propagation. + + phase : array_like, optional + Phase change caused by plane. If not specified, a default phase is + created which has no effect on wavefront propagation. + + mask : array_like, optional + Binary mask. If not specified, a mask is created from the amplitude. + + segmask : (nseg, ...) {array_like, None} optional + Binary segment mask. Default is None. + + """ + + def __init__(self, pixelscale=None, amplitude=1, phase=0, mask=None, segmask=None): + + # We directly set the local attributes here in case a subclass has redefined + # the property (which could cause an weird behavior and will throw an + # AttributeError if the subclass hasn't defined an accompanying getter + self._pixelscale = pixelscale + self._amplitude = np.asarray(amplitude) if amplitude is not None else None + self._phase = np.asarray(phase) if phase is not None else None + self._mask = np.asarray(mask) if mask is not None else None + self._segmask = np.asarray(segmask) if segmask is not None else None + + self._cache = Cache() + + def __init_subclass__(cls): + # we have to define default values to avoid AttributeErrors in case + # subclasses don't call super().__init__ and don't explicitly define + # an attribute + cls._pixelscale = None + cls._amplitude = np.array(1) + cls._phase = np.array(0) + cls._mask = None + cls._segmask = None + + cls._cache = Cache() + + def __repr__(self): + return self.name + '()' + + @property + def pixelscale(self): + """Physical sampling (in meters) of each pixel in the plane""" + return self._pixelscale + + @pixelscale.setter + def pixelscale(self, value): + self._pixelscale = value + + @property + def name(self): + """Plane name""" + return self.__class__.__name__ + + @property + def cache(self): + """Cache + + Returns + ------- + cache : :class:`~lentil.cache.Cache` + + """ + return self._cache + + @cached_property + def amplitude(self): + """Electric field amplitude transmission. + + Returns + ------- + amplitude : ndarray + + Note + ---- + ``amplitude`` is cacheable. If a cached value exists, it is returned. + + """ + return self._amplitude + + @amplitude.setter + def amplitude(self, value): + self.cache.delete('amplitude') + if value is not None: + self._amplitude = np.asarray(value) + else: + self._amplitude = None + + @cached_property + def phase(self): + """Electric field phase shift. + + Returns + ------- + phase : ndarray + + Note + ---- + ``phase`` is cacheable. If a cached value exists, it is returned. + + """ + return self._phase + + @phase.setter + def phase(self, value): + self.cache.delete('phase') + if value is not None: + self._phase = np.asarray(value) + else: + self._phase = None + + @property + def mask(self): + """Binary mask + + Returns + ------- + mask : ndarray + + """ + if self._mask is not None: + return self._mask + else: + mask = self.amplitude + mask[mask != 0] = 1 + return mask + + @mask.setter + def mask(self, value): + if value is not None: + self._mask = np.asarray(value) + else: + self._mask = None + + @property + def segmask(self): + """Binary segment mask + + Returns + ------- + segmask : (nseg,...) ndarray or None + + """ + return self._segmask + + @segmask.setter + def segmask(self, value): + # Note this operation implicitly converts a list or tuple of arrays + # to an appropriately stacked ndarray + if value is None: + segmask = None + else: + # Note this operation implicitly converts a list or tuple of arrays + # to an appropriately stacked ndarray + segmask = np.asarray(value) + if segmask.ndim == 2: + segmask = segmask[np.newaxis, ...] + elif segmask.ndim > 3: + raise ValueError(f"don't know what to do with {segmask.ndim}th dimension") + self._segmask = segmask + + @property + def nseg(self): + """Number of segments represented in the plane.""" + if self.segmask is None: + return 0 + else: + return self.segmask.shape[0] + + @property + def shape(self): + """Plane dimensions computed from :attr:`mask`""" + return self.mask.shape + + def copy(self): + """Return a copy.""" + plane = copy.deepcopy(self) + plane.cache.clear() + return plane + + @cached_property + def ptt_vector(self): + """2D vector representing piston and tilt in x and y. Planes with no mask or + segmask have ptt_vector = None + + Returns + ------- + ptt_vector : (3,...) ndarray or None + + """ + + # if there's no mask, we just set ptt_vector to None and move on + if self.shape == () and self.segmask is None: + ptt_vector = None + else: + # compute unmasked piston, tip, tilt vector + x, y = util.mesh(self.shape) + unmasked_ptt_vector = np.array([np.ones(x.size), x.ravel(), y.ravel()]) * self.pixelscale + + if self.segmask is None: + ptt_vector = np.einsum('ij,j->ij', unmasked_ptt_vector, self.mask.ravel()) + else: + # prepare empty ptt_vector + ptt_vector = np.empty((self.nseg*3, self.mask.size)) + + # loop over the segments and fill in the masked ptt_vectors + for seg in np.arange(self.nseg): + ptt_vector[3*seg:3*seg+3] = unmasked_ptt_vector * self.segmask[seg].ravel() + + return ptt_vector + + def cache_propagate(self): + """Cache expensive to compute attributes for propagation.""" + self.cache.add('amplitude', self.amplitude) + self.cache.add('phase', self.phase) + self.cache.add('ptt_vector', self.ptt_vector) + + def clear_cache_propagate(self): + """Clear propagation cache values.""" + self.cache.delete('amplitude') + self.cache.delete('phase') + self.cache.delete('ptt_vector') + + def multiply(self, wavefront, tilt='phase'): + """Multiply with a wavefront + + Parameters + ---------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Wavefront to be multiplied + + tilt : {'phase', 'angle'}, optional + * 'phase' - any tilt present in the Element phase contribution is + included in the Element*Wavefront product. (Default) + * 'angle' - any tilt present in the Element phase is removed before + computing the Element*Wavefront product. The equivalent angular + tilt is included in the Wavefront's + :attr:`~lentil.Wavefront.tilt` attribute. + + Note + ---- + It is possible to customize the way multiplication is performed in this + class and any subclasses by reimplementing any of the following methods: + + * ``_multiply_phase`` is called when :attr:`tilt` is 'phase' + * ``_multiply_angle`` is called when :attr:`tilt` is 'angle' + + In each case, the interface is defined as follows: + + ``wavefront = _multiply_method(amplitude, phase, wavefront)`` + + Returns + ------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Updated wavefront + + """ + + if wavefront.pixelscale is None: + wavefront.pixelscale = self.pixelscale + else: + if self.pixelscale is not None: + assert wavefront.pixelscale == self.pixelscale + + if tilt == 'phase': + wavefront = self._multiply_phase(self.amplitude, self.phase, wavefront) + elif tilt == 'angle': + wavefront = self._multiply_angle(self.amplitude, self.phase, wavefront) + else: + raise AttributeError('Unknown tilt parameter', tilt) + + return wavefront + + @staticmethod + def _multiply_phase(amplitude, phase, wavefront): + # Compute and apply the phasor + phasor = amplitude * np.exp(1j * phase * 2 * np.pi / wavefront.wavelength) + wavefront.data *= phasor + + return wavefront + + def _multiply_angle(self, amplitude, phase, wavefront): + + # There are a couple of different paths here + + # If ptt_vector is None or the phase has no shape, there's nothing extra to do + # here so we will just defer to _multiply_phase: + if self.ptt_vector is None or phase.size == 1: + wavefront = self._multiply_phase(amplitude, phase, wavefront) + + # If there's no segment mask, we can just do a single step projection, + # subtraction, and multiplication: + elif self.segmask is None: + # TODO: move this into _multiple_angle_one (or something like that) + ptt_vector = self.ptt_vector + phase_vector = phase.ravel() + t = np.linalg.lstsq(ptt_vector.T, phase_vector, rcond=None)[0] + phase_tilt = \ + np.einsum('ij,i->j', ptt_vector[1:3], t[1:3]).reshape(self.shape) + + # Note that it is tempting to do an in-place subtraction here. Don't do + # it! In the event that self.opd is returning a static ndarray, phase + # will actually be a reference to this underlying array in memory and an + # in-place operation will operate on that array. The in-place + # operation's effects will persist beyond the scope of this function, + # causing very strange behavior and lots of head scratching trying to + # figure out what happened. + phase = phase - phase_tilt + + # Set the wavefront angle + wavefront.tilt.extend([Angle(x=t[1], y=t[2])]) + + # Compute and apply the phasor + wavefront = self._multiply_phase(amplitude, phase, wavefront) + + # Otherwise we have to go segment by segment: + else: + # TODO: move this to _multiply_angle_multi + ptt_vector = self.ptt_vector + phase_vector = phase.ravel() + t = np.zeros((self.nseg, 3)) + data = np.copy(wavefront.data) + wavefront.data = np.zeros((self.nseg, data.shape[1], data.shape[2]), + dtype=np.complex128) + + # iterate over the segments and compute the tilt term + for seg in np.arange(self.nseg): + t[seg] = np.linalg.lstsq(ptt_vector[3 * seg:3 * seg + 3].T, phase_vector, + rcond=None)[0] + seg_tilt = np.einsum('ij,i->j', ptt_vector[3 * seg + 1:3 * seg + 3], + t[seg, 1:3]).reshape(self.shape) + + phasor = amplitude * np.exp(1j * (phase - seg_tilt) * 2 * np.pi / wavefront.wavelength) + + wavefront.data[seg] = data * phasor * self.segmask[seg] + + # Set the tilt term + # Create a wavefront.Angle object for each segment and put them all in a + # list + wavefront.tilt.append([Angle(x=t[seg, 1], y=t[seg, 2]) for seg in range(self.nseg)]) + + return wavefront + + +class Pupil(Plane): + """Class for representing a pupil plane. + + Parameters + ---------- + diameter : float + Diameter in meters + + focal_length : float + Focal length in meters + + pixelscale : float + Physical sampling (in meters) of each pixel in the pupil + + amplitude : array_like, optional + Electric field amplitude transmission. Amplitude should be normalized + with :func:`~lentil.util.normalize_power` if conservation of power + through a diffraction propagation is required. If not specified, a + default amplitude is created which has no effect on wavefront + propagation. + + phase : array_like, optional + Phase change caused by plane. If not specified, a default phase is + created which has no effect on wavefront propagation. + + mask : array_like, optional + Binary mask. If not specified, a mask is created from the amplitude. + + segmask : (nseg, ...) {array_like, None} optional + Binary segment mask. Default is None. + + Note + ---- + By definition, a pupil is represented by a spherical wavefront. Any + aberrations in the optical system appear as deviations from this perfect + sphere. The primary use of :class:`Pupil` is to represent these aberrations + + """ + def __init__(self, diameter=None, focal_length=None, pixelscale=None, amplitude=1, + phase=0, mask=None, segmask=None): + + super().__init__(pixelscale=pixelscale, amplitude=amplitude, phase=phase, + mask=mask, segmask=segmask) + + # We directly set the local attributes here in case a subclass has redefined + # the property (which could cause an weird behavior and will throw an + # AttributeError if the subclass hasn't defined an accompanying getter + self._diameter = diameter + self._focal_length = focal_length + + def __init_subclass__(cls): + cls._diameter = None + cls._focal_length = None + + @property + def diameter(self): + """Optical system diameter in meters.""" + return self._diameter + + @diameter.setter + def diameter(self, value): + self._diameter = value + + @property + def focal_length(self): + """Optical system focal length in meters.""" + return self._focal_length + + @focal_length.setter + def focal_length(self, value): + self._focal_length = value + + @property + def f_number(self): + """F-number.""" + return self.focal_length/self.diameter + + def multiply(self, wavefront, tilt='phase'): + + wavefront = super().multiply(wavefront, tilt) + + # we inherit the plane's focal length as the wavefront's focal length + wavefront.focal_length = self.focal_length + wavefront.planetype = 'pupil' + + return wavefront + + +class Image(Plane): + """Class for representing an image plane. + + Parameters + ---------- + pixelscale : float, optional + Pixel size in meters. Pixels are assumed to be square. Default is None. + + shape : {int, (2,) array_like}, optional + Number of pixels as (rows, cols). If a single value is provided, + :class:`Image` is assumed to be square with nrows = ncols = shape. + Default is None. + + """ + + def __init__(self, pixelscale=None, shape=None): + + super().__init__(pixelscale=pixelscale) + + # Ensure shape is a (2,) tuple or None + if shape: + shape = np.asarray(shape) + if shape.size == 1: + shape = np.append(shape, shape) + elif shape.size > 2: + raise IndexError('too many values') + shape = tuple(shape) + + self._shape = shape + + @property + def shape(self): + """Number of pixels as (rows, cols).""" + return self._shape + + @shape.setter + def shape(self, value): + self._shape = value + + def multiply(self, wavefront, *args, **kwargs): + """Multiply with a :class:`~lentil.wavefront.Wavefront`.""" + + # TODO: make sure this is correct + wavefront.focal_length = np.inf + + wavefront.planetype = 'image' + + return wavefront + + +class Detector(Image): + """Class for representing a discretely sampled :class:`~lentil.Image` + plane. + + Parameters + ---------- + pixelscale : float + Pixel size in meters. Pixels are assumed to be square. + + shape : {int, (2,) array_like} + Number of pixels as (rows, cols). If a single value is provided, the + :class:`Detector` is assumed to be square with nrows = ncols = shape. + + """ + def __init__(self, pixelscale, shape): + super().__init__(pixelscale, shape) + + +class DispersiveShift(Plane): + + def shift(self, wavelength, x0, y0, **kwargs): + raise NotImplementedError + + def multiply(self, wavefront, tilt='angle'): + wavefront = super().multiply(wavefront, tilt) + + wavefront.tilt.extend([self]) + + return wavefront + + +class DispersivePhase(Plane): + pass + + +class Grism(DispersiveShift): + """Class for representing a grism.""" + + def __init__(self, trace=None, dispersion=None, pixelscale=None, amplitude=1, + phase=0, mask=None, segmask=None): + super().__init__(pixelscale=pixelscale, amplitude=amplitude, phase=phase, + mask=mask, segmask=segmask) + + self._trace = trace + self._dispersion = dispersion + + def __init_subclass__(cls, **kwargs): + cls._trace = None + cls._dispersion = None + + @property + def trace(self): + return self._trace + + @trace.setter + def trace(self, value): + if value is None: + self._trace = None + else: + self._trace = value + + @property + def dispersion(self): + return self._dispersion + + @dispersion.setter + def dispersion(self, value): + self._dispersion = value + + def shift(self, wavelength, xs=0., ys=0., **kwargs): + + # first we compute the distance d from the reference point to the + # requested wavelength + d = (wavelength - self.dispersion[1])/self.dispersion[0] + + # https://www.physicsforums.com/threads/formula-for-finding-point-on-a-line-given-distance-along-a-line.419561/ + + # now we can compute the resulting coords due to the dispersion + x = d/np.sqrt(1+self.trace[0]**2) + y = np.polyval(self.trace, x) + + # finally, we include the incoming shift + x += xs + y += ys + + return x, y + + +class LensletArray(Plane): + pass + + +class Rotate: + """Rotate a Wavefront by a specified angle + + Parameters + ---------- + angle : float + Rotation angle counterclockwise from the horizontal. + unit : {'degrees', 'radians'}, optional + Units of angle. Default is 'degrees'. + order : int + The order of the spline interpolation (if needed), default is 3. The + order has to be in the range 0-5. + + Note + ---- + If the angle is an even multiple of 90 degrees, ``numpy.rot90`` is used to + perform the rotation rather than ``scipy.ndimage.rotate``. In this case, + the order parameter is irrelevant because no interpolation occurrs. + + """ + def __init__(self, angle=0, unit='degrees', order=3): + if unit == 'radians': + angle *= 180/np.pi + self.angle = angle + self.order = order + + def __repr__(self): + return self.name + '()' + + @property + def name(self): + return self.__class__.__name__ + + def cache_propagate(self): + pass + + def clear_cache_propagate(self): + pass + + def multiply(self, wavefront, *args, **kwargs): + """Multiply with a wavefront + + Parameters + ---------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Wavefront to be multiplied + + Returns + ------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Updated wavefront + + """ + if self.angle % 90 == 0: + wavefront.data = np.rot90(wavefront.data, k=int(self.angle/90), axes=(1,2)) + else: + real = ndimage.rotate(wavefront.data.real, angle=self.angle, reshape=False, order=self.order, axes=(1, 2)) + imag = ndimage.rotate(wavefront.data.imag, angle=self.angle, reshape=False, order=self.order, axes=(1, 2)) + wavefront.data = real + 1j*imag + return wavefront + + +class Flip: + """Flip a wavefront along specified axis + + Parameters + ---------- + axis : {int, tuple of ints, None}, optional + Axis or axes along which to flip over. The default, axis=None, will + flip over all of the axes of the input array. If axis is negative it + counts from the last to the first axis. + + """ + + def __init__(self, axis=None): + + if axis is None: + # The first dimension of wavefront.data is depth so we actually want + # to flip of the next two axes + self.axis = (1, 2) + else: + # We convert axis to an array in case the user provides a tuple. + # Again, because the first dimension of wavefront.data is depth we + # add one to whatever axes are provided to make the flip operation + # behave as expected. + self.axis = np.asarray(axis) + 1 + + def __repr__(self): + return self.name + '()' + + @property + def name(self): + return self.__class__.__name__ + + def cache_propagate(self): + pass + + def clear_cache_propagate(self): + pass + + def multiply(self, wavefront, *args, **kwargs): + """Multiply with a wavefront + + Parameters + ---------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Wavefront to be multiplied + + Returns + ------- + wavefront : :class:`~lentil.wavefront.Wavefront` object + Updated wavefront + + """ + wavefront.data = np.flip(wavefront.data, axis=self.axis) + return wavefront + + +class Quadratic(Plane): + """Base class for representing an optical plane with a quadratic phase + term. + + """ + pass + + +class Conic(Plane): + """Base class for representing an optical plane with a conic phase term. + + """ + pass + + +class Tilt(Plane): + """Base class for representing a phase tilt term.""" + pass + + +class Surf(Plane): + """Base class for representing an optical element with an arbitrary phase + term defined by a gridded surface. + + """ + pass + +# def Q(self, wave, pixelscale, oversample=1): +# return (self.f_number*wave*oversample)/pixelscale +# +# def alpha(self, wave, pixelscale, oversample=1): +# return (self.pixelscale * pixelscale)/(self.focal_length * wave * oversample) +# +# def q(self, wave, pixelscale, npix, oversample=1): +# alpha = self.alpha(wave, pixelscale, oversample) +# return 1/(alpha * npix) diff --git a/lentil/prop.py b/lentil/prop.py new file mode 100644 index 0000000..1659073 --- /dev/null +++ b/lentil/prop.py @@ -0,0 +1,459 @@ +from itertools import tee, chain, islice + +import numpy as np + +from lentil import util +from lentil.plane import Pupil, Image, Detector, Plane +from lentil.wavefront import Wavefront + +__all__ = ['propagate'] + + +def propagate(planes, wave, weight=None, npix=None, npix_chip=None, oversample=2, + rebin=True, tilt='phase', interp_phasor=True, flatten=True, + use_multiprocessing=False): + """Compute a polychromatic point spread function using Fraunhofer + diffraction. + + Parameters + ---------- + planes : list_like + List of :class:`~lentil.Plane` objects + + wave : array_like + Array of wavelengths (in meters) + + weight : array_like, optional + Weight multiple applied to each wavelength slice in :attr:`wave`. + :attr:`weight` can be relative (for example, when considering the + optical transmission through the optical system) or absolute (for + example, when performing radiometrically accurate propagations where + wavelength-dependent flux at the image plane is known). Must have + the same length as :attr:`wave`. If not specified, ones are used. + + npix : int or (2,) tuple of ints, optional + Shape of output plane. If not specified, + ``npix = OpticalSystem.planes[-1].shape``. + + npix_chip : int or (2,) tuple of ints, optional + Shape of propagation output plane. If None (default), + ``npix_chip = npix``. If ``npix_chip != npix``, the propagation + result is placed in the appropriate location in the output plane. + npix_chip cannot be larger than npix. + + oversample : int, optional + Number of times to oversample the output plane. Default is 2. + + rebin : bool, optional + If ``True``, return the output plane in the sampling given by + ``pixelscale``, binning down the output plane by a factor of + ``oversample`` as needed. Note that this operation preserves power + in the output plane. Default is ``True``. + + tilt : {'phase', 'angle'}, optional + Propagation tilt handling strategy + + * 'phase' - any tilt present in the Element phase contribution is + included in the Element*Wavefront product. (Default) + * 'angle' - any tilt present in the Element phase is removed before + computing the Element*Wavefront product. The equivalent angular + tilt is included in the Wavefront's + :attr:`~lentil.Wavefront.tilt` attribute. + + interp_phasor : bool, optional + If True (default), the phasor components will be automatically + interpolated to avoid aliasing and wraparound in the detector plane. + If False, no checking or interpolation is performed. + + flatten : bool, optional + If ``True``, the cube of wavelength-dependent output planes is + flattened into a single 2D array before being returned. If + ``False``, a cube of output planes is returned. Default is ``True``. + + Returns + ------- + psf : ndarray + Resulting point spread function. + + Note + ---- + This function is a thin wrapper around Monocle's :class:`~lentil.prop.Propagate` + object. If you need to do anything fancy that isn't provided by the standard + :func:`~lentil.propagate` method, consider subclassing or extending + :class:`~lentil.prop.Propagate`. + + """ + + with Propagate(planes) as p: + psf = p.propagate(wave, weight, npix, npix_chip, oversample, rebin, tilt, + flatten) + + return psf + + +class Propagate: + """Compute a polychromatic point spread function using Fraunhofer + diffraction. + + Parameters + ---------- + planes : list_like + list of :class:`~lentil.Plane` objects + + Returns + ------- + :class:`~lentil.prop.Propagate` + + Example + ------- + :: + + with Propagate(planes) as p: + psf = p.propagate(wave, weight, npix) + + """ + def __init__(self, planes): + self.planes = planes + + def __enter__(self): + # Pre-process and set up any static data we may need during the + # propagation. Examples of this include setting caches, finding + # dispersive elements, or really anything else that requires iterating + # over the list of planes (which would be slow to perform with each + # monochromatic wavefront propagation.) + + # Loop over the planes to build caches and identify any dispersive + # elements + for plane in self.planes: + plane.cache_propagate() + + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + # Reset all the plane caches to their initial empty states + for plane in self.planes: + plane.clear_cache_propagate() + + def propagate(self, wave, weight=None, npix=None, npix_chip=None, oversample=2, + rebin=True, tilt='phase', flatten=True): + """Compute a polychromatic point spread function using Fraunhofer + diffraction. + + Parameters + ---------- + wave : array_like + Array of wavelengths (in meters) + + weight : array_like, optional + Weight multiple applied to each wavelength slice in :attr:`wave`. + :attr:`weight` can be relative (for example, when considering the + optical transmission through the optical system) or absolute (for + example, when performing radiometrically accurate propagations where + wavelength-dependent flux at the image plane is known). Must have + the same length as :attr:`wave`. If not specified, ones are used. + + npix : int or (2,) tuple of ints, optional + Shape of output plane. If not specified, + ``npix = OpticalSystem.planes[-1].shape``. + + npix_chip : int or (2,) tuple of ints, optional + Shape of propagation output plane. If None (default), + ``npix_chip = npix``. If ``npix_chip != npix``, the propagation + result is placed in the appropriate location in the output plane. + npix_chip cannot be larger than npix. + + oversample : int, optional + Number of times to oversample the output plane. Default is 2. + + rebin : bool, optional + If ``True``, return the output plane in the sampling given by + ``pixelscale``, binning down the output plane by a factor of + ``oversample`` as needed. Note that this operation preserves power + in the output plane. Default is ``True``. + + tilt : {'phase', 'angle'}, optional + Propagation tilt handling strategy + + * 'phase' - any tilt present in the Element phase contribution is + included in the Element*Wavefront product. (Default) + * 'angle' - any tilt present in the Element phase is removed before + computing the Element*Wavefront product. The equivalent angular + tilt is included in the Wavefront's + :attr:`~lentil.Wavefront.tilt` attribute. + + interp_phasor : bool, optional + If True (default), the phasor components will be automatically + interpolated to avoid aliasing and wraparound in the detector plane. + If False, no checking or interpolation is performed. + + flatten : bool, optional + If ``True``, the cube of wavelength-dependent output planes is + flattened into a single 2D array before being returned. If + ``False``, a cube of output planes is returned. Default is ``True``. + + Returns + ------- + psf : ndarray + Resulting point spread function. + + """ + + # TODO: need to update this to make it work for SimpleOS if npix=None + # Make a shape property that returns the size of the first plane maybe? + if npix is None: + npix = self.planes[-1].shape + npix = np.asarray(npix) + if npix.shape == (): + npix = np.append(npix, npix) + + if npix_chip is None: + npix_chip = npix + npix_chip = np.asarray(npix_chip) + if npix_chip.shape == (): + npix_chip = np.append(npix_chip, npix_chip) + + wave = np.asarray(wave) + if wave.shape == (): + wave = wave[np.newaxis, ...] + + if weight is None: + weight = np.ones(wave.shape) + weight = np.asarray(weight) + if weight.shape == (): + weight = weight[np.newaxis, ...] + + # Create an empty output + oversample_shape = (npix[0]*oversample, npix[1]*oversample) + if flatten: + output_shape = oversample_shape + else: + output_shape = (len(wave), oversample_shape[0], oversample_shape[1]) + + output = np.zeros(output_shape) + + # We also need a temporary array to place the chips and compute intensity + output_tmp = np.zeros(oversample_shape, dtype=np.complex128) + + for n, (wl, wt) in enumerate(zip(wave, weight)): + if wt > 0: + w = self.input_wavefront(wl) + w = self._propagate_mono(w, npix_chip, oversample, tilt) + + if w.depth == 1: + # Compute intensity in place + # Note that w.data remains a complex ndarray + w.data = np.power(np.abs(w.data, out=w.data), 2, out=w.data) + + # TODO: clean up the shift handling here. + # We need a better way to default to zero shift. The same thing + # needs to be done in the below block if w.depth > 1. This is + # just a temporary quick and dirty fix + if hasattr(w, '_shift'): + # The shift term is given in terms of (x,y) but it is easier to + # place the chip if we're working in terms of (r,c). + shift = np.flip(w._shift[0], axis=0) + else: + shift = [0, 0] + + # Apply the weight + w.data *= wt + + # Place the chip + canvas_slice, chip_slice = _chip_insertion_slices(oversample_shape, + (w.data.shape[1], w.shape[2]), + shift) + + if canvas_slice: + # We've already computed the intensity and applied the weight so we + # can just place the real portion of w.data into the right place + # in output + if flatten: + output[canvas_slice] += w.data[0].real[chip_slice] + else: + output[n, canvas_slice[0], canvas_slice[1]] += w.data[0].real[chip_slice] + + else: + for d in range(w.depth): + + # The shift term is given in terms of (x,y) but it is easier to + # place the chip if we're working in terms of (r,c). + shift = np.flip(w._shift[d], axis=0) + + # Place the chip + canvas_slice, chip_slice = _chip_insertion_slices(oversample_shape, (w.data.shape[1], w.shape[2]), + shift) + + if canvas_slice: + output_tmp[canvas_slice] += w.data[d, chip_slice[0], chip_slice[1]] + + # Compute intensity + if flatten: + output += (np.abs(output_tmp).real**2 * wt) + else: + output[n] = (np.abs(output_tmp).real**2 * wt) + + output_tmp[:] = 0 + + if rebin: + output = util.rebin(output, oversample) + + return output + + def _propagate_mono(self, w, npix, oversample, tilt): + """Propagate a monochromatic wavefront from plane to plane through the + optical system using Fraunhofer diffraction. + + Parameters + ---------- + w : :class:`~lentil.Wavefront` + Wavefront object to propagate through the optical system. + + npix : int or (2,) ints + Shape of output plane. + + oversample : int + Number of times to oversample the output plane. + + tilt : {'phase', 'angle'} + * 'phase' - any tilt present in the Element phase contribution is + included in the Element*Wavefront product. + * 'angle' - any tilt present in the Element phase is removed + before computing the Element*Wavefront product. The equivalent + angular tilt is included in the Wavefront's + :attr:`~lentil.Wavefront.tilt` attribute. + + Returns + ------- + field : ndarray + Resulting complex field propagated though the optical system. + + """ + for plane, next_plane in _planes(self.planes): + + # Multiply by the current plane + w = plane.multiply(w, tilt) + + # Now, we propagate to the next plane in the optical system + # (next_plane). + + # If we're at the end of the list of planes, next_plane will be None + if next_plane is None: + continue + + # If the two planes are of the same type, do nothing + if (w.planetype == 'pupil') and isinstance(next_plane, Pupil): + continue + + if (w.planetype == 'image') and isinstance(next_plane, Image): + continue + + # This block enables the behavior of inserting a non-Pupil or Image plane + # in the list of planes and having its multiply() method called, but not + # changing any of the Wavefront's fundamental properties like planetype or + # focal length. + # + # Use cases are Rotation, Flip, Grism, and probably more + #if isinstance(next_plane, Plane): + # continue + + # Pupil to image propagation + if (w.planetype == 'pupil') and isinstance(next_plane, Image): + # Pupil to Detector propagation + if isinstance(next_plane, Detector): + + shift = w.shift(next_plane.pixelscale, oversample) + + # Integer portion of the shift that will be added back into + # self.tilt if it is nonzero + fix_shift = np.fix(shift) + + # Residual subpixel portion of the shift that is passed to + # the DFT + res_shift = shift - fix_shift + + w.propagate_dft(next_plane.pixelscale, npix, oversample, res_shift) + + w._shift = fix_shift + + # Pupil to Image propagation + else: + pass + + # Image to pupil propagation + elif (w.planetype == 'image') and isinstance(next_plane, Pupil): + pass + + # Everything else is invalid + #else: + # raise TypeError('Unsupported propagation type ', w.planetype, ' to ', next_plane) + + return w + + + def input_wavefront(self, wave): + + # TODO: need to be robust against the fact that the first plane may be a + # source or tilt only object and therefor insufficient to fully set up + # the wavefront object + # * let shape be None. If shape is None, Wavefront.data should just be 1 + + return Wavefront(wave, + pixelscale=self.planes[0].pixelscale, + shape=self.planes[0].shape, + planetype=None) + + +def _planes(iterable): + # this is a slightly modified version of https://stackoverflow.com/a/1012089 + # note that we don't include the last None in nexts (included in the SO + # answer), because we're fine not executing from the last plane to nothing + # + # Update for v0.6.2: We've now included the second [None] to allow handling + # of unique situations where we actually want to loop from the last plane + # to nothing. Propagate._propagate_mono has been adjusted accordingly + items, nexts = tee(iterable, 2) + nexts = chain(islice(nexts, 1, None), [None]) + return zip(items, nexts) + + +def _chip_insertion_slices(npix_canvas, npix_chip, shift): + npix_canvas = np.asarray(npix_canvas) + npix_chip = np.asarray(npix_chip) + + # Canvas coordinates of the upper left corner of the shifted chip + chip_shifted_ul = (npix_canvas / 2) - (npix_chip / 2) + shift + + # Chip slice indices + chip_top = int(0) + chip_bottom = int(npix_chip[0]) + chip_left = int(0) + chip_right = int(npix_chip[1]) + + # Canvas insertion slice indices + canvas_top = int(chip_shifted_ul[0]) + canvas_bottom = int(chip_shifted_ul[0] + npix_chip[0]) + canvas_left = int(chip_shifted_ul[1]) + canvas_right = int(chip_shifted_ul[1] + npix_chip[1]) + + # reconcile the chip and canvas insertion indices + if canvas_top < 0: + chip_top = -1 * canvas_top + canvas_top = 0 + + if canvas_bottom > npix_canvas[0]: + chip_bottom -= canvas_bottom - npix_canvas[0] + canvas_bottom = npix_canvas[0] + + if canvas_left < 0: + chip_left = -1 * canvas_left + canvas_left = 0 + + if canvas_right > npix_canvas[1]: + chip_right -= canvas_right - npix_canvas[1] + canvas_right = npix_canvas[1] + + if np.any(np.array([canvas_bottom, chip_bottom, canvas_right, chip_right]) < 0): + return None, None + else: + return (slice(canvas_top, canvas_bottom), slice(canvas_left, canvas_right)), \ + (slice(chip_top, chip_bottom), slice(chip_left, chip_right)) diff --git a/lentil/radiometry.py b/lentil/radiometry.py new file mode 100644 index 0000000..66927ab --- /dev/null +++ b/lentil/radiometry.py @@ -0,0 +1,1637 @@ +import copy + +import numpy as np +import scipy + +__all__ = ['Spectrum', 'Blackbody', 'Material', 'path_emission', 'path_transmission', + 'planck_radiance', 'planck_exitance', 'vegaflux'] + +# Constants +H = 6.62606957e-34 # Planck constant, J/s (kg m^2/s^2) +C = 299792456 # Speed of light, m/s +K = 1.3806488e-23 # Boltzmann constant, J/K (kg m^2/K) + + +class Spectrum: + """Class for representing spectral quantities. + + :class:`~lentil.radiometry.Spectrum` provides core functionality for + defining and interacting with spectral data in lentil. Some basic + arithmetic functions are overloaded, so you can add, multiply, and + exponentiate :class:`Spectrum` objects + + * with each other + * by constants + * with arrays having the same length as :attr:`value` + + Parameters + ---------- + wave : array_like + Array of wavelengths. + + value : array_like + Array of values corresponding to wavelengths in :attr:`wave`. + + waveunit : str, optional + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + valueunit : str or None, optional + Value units, as accepted by :func:`Unit`. Default is None. + + Notes + ----- + When performing arithmetic operations between two + :class:`Spectrum` objects, the code will behave differently depending on + the ``wave`` vectors of each :class:`Spectrum`: + + 1. If the :attr:`wave` vectors of each :class:`Spectrum` are the same, + the arithmetic operation is directly performed element-wise on the + :attr:`value` vectors of each :class:`Spectrum`. + + 2. If the :attr:`wave` vectors of each :class:`Spectrum` are + different, the :attr:`value` vectors of each :class:`Spectrum` are + interpolated to the same sampling, and then the arithmetic operation is + performed element-wise on the resulting interpolated :attr:`value` + vectors. Before interpolating, the :attr:`wave` and :attr:`value` + vectors are zero-padded to cover the entire wave range represented by + the union of both :class:`Spectrum` objects. The sampling is determined + by the smaller sampling of the two :attr:`wave` vectors. + + You can fine tune the sampling, interpolation, and padding methods by + interfacing directly with the :func:`Spectrum.add` and + :func:`Spectrum.multiply` methods. + + """ + + # TODO: astropy unit cutover + # * manage data and units separately + # * in __init__, unpack wave and value arrays from unit if passed as a + # quantity + # * in the wave/value getter, repack as a quantity + # * for speed, underlying computations should operate on _wave or _value + # and keep the units in mind + + def __init__(self, wave, value, waveunit='nm', valueunit=None): + self.wave = wave + self.value = value + self.waveunit = waveunit + self.valueunit = valueunit + self.__array_priority__ = 1.0 + + if self._wave.shape != self._value.shape: + raise ValueError('Wave and value must have the same shape') + + def __add__(self, other): + return self.add(other) + + def __mul__(self, other): + return self.multiply(other) + + def __pow__(self, other): + return self.power(other) + + def __sub__(self, other): + return self.subtract(other) + + def __truediv__(self, other): + return self.divide(other) + + __rmul__ = __mul__ + + @property + def wave(self): + return self._wave + + @wave.setter + def wave(self, value): + value = np.asarray(value) + + if np.any(value <= 0): + raise ValueError('Wavelength values must be greater than zero') + + if not np.alltrue(np.sort(value) == value): + raise ValueError('Wavelength values must be monotonically increasing') + + if np.any(value[1:] - value[:-1] == 0): + raise ValueError('Wavelength values must be unique') + + self._wave = value + + @property + def value(self): + return self._value + + @value.setter + def value(self, value): + value = np.asarray(value) + self._value = value + + @property + def waveunit(self): + if self._waveunit is not None: + return self._waveunit.name + else: + return None + + @waveunit.setter + def waveunit(self, waveunit): + self._waveunit = Unit(waveunit) + + @property + def valueunit(self): + if self._valueunit is not None: + return self._valueunit.name + else: + return None + + @valueunit.setter + def valueunit(self, valueunit): + self._valueunit = Unit(valueunit) + + def _ufunc(self, ufunc, other, sampling='min', method='linear', fill_value=0): + + if isinstance(other, (int, float, list, tuple, np.ndarray)): + wave = self.wave + try: + value = ufunc(self.value, other) + except ValueError: + raise + + elif isinstance(other, Spectrum): + wave, self_value, other_value = _interp_common(self, other, sampling, + method, fill_value) + value = ufunc(self_value, other_value) + else: + raise TypeError(f"can't {ufunc.__name__} Spectrum with object of type " + f"{type(other).__name__}") + + return Spectrum(wave, value, self.waveunit, self.valueunit) + + def add(self, other, sampling='min', method='linear', fill_value=0): + """Add Spectrum and other, element-wise + + Parameters + ---------- + other : scalar, sequence, or Spectrum + Any accepted data structure + + sampling : {'min', 'left', 'right', float}, optional + Method used for computing wavelength sampling when Spectrum + resampling is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum (Default) + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (Default) + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + result : Spectrum + Result of the arithmetic operation. + + """ + return self._ufunc(np.add, other, sampling, method, fill_value) + + def multiply(self, other, sampling='min', method='linear', fill_value=0): + """Multiply Spectrum and other, element-wise + + Parameters + ---------- + other : scalar, sequence, or Spectrum + Any accepted data structure + + sampling : {'min', 'left', 'right'} or float, optional + Method used for computing wavelength sampling when Spectrum + resampling is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum (Default) + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (Default) + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + result : Spectrum + Result of the arithmetic operation. + + """ + return self._ufunc(np.multiply, other, sampling, method, fill_value) + + def power(self, other, sampling='min', method='linear', fill_value=0): + """Spectrum elements raised to powers from other, element-wise + + Parameters + ---------- + other : scalar, sequence, or Spectrum + Any accepted data structure + + sampling : {'min', 'left', 'right'} or float, optional + Method used for computing wavelength sampling when Spectrum + resampling is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum (Default) + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (Default) + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + result : Spectrum + Result of the arithmetic operation. + + """ + return self._ufunc(np.power, other, sampling, method, fill_value) + + def subtract(self, other, sampling='min', method='linear', fill_value=0): + """Subtract Spectrum and other, element-wise + + Parameters + ---------- + other : scalar, sequence, or Spectrum + Any accepted data structure + + sampling : {'min', 'left', 'right'} or float, optional + Method used for computing wavelength sampling when Spectrum + resampling is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum (Default) + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (Default) + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + result : Spectrum + Result of the arithmetic operation. + + """ + return self._ufunc(np.subtract, other, sampling, method, fill_value) + + def divide(self, other, sampling='min', method='linear', fill_value=0): + """Divide Spectrum and other, element-wise + + Parameters + ---------- + other : scalar, sequence, or Spectrum + Any accepted data structure + + sampling : {'min', 'left', 'right'} or float, optional + Method used for computing wavelength sampling when Spectrum + resampling is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum (Default) + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (Default) + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + result : Spectrum + Result of the arithmetic operation. + + """ + return self._ufunc(np.divide, other, sampling, method, fill_value) + + def append(self, other, copy=False): + """Append Spectrum to the end of caller + + Parameters + ---------- + other : Spectrum + Spectrum to be appended with + + copy : bool, optional + If True, the a new :class:`Spectrum` object is returned. If False + (default), the append operation occurs in place. + + """ + + if not isinstance(other, Spectrum): + raise ValueError('Spectrum objects can only be appended with other ' + 'Spectrum objects') + + if np.any(other.wave <= self.wave): + raise ValueError() + + if copy: + new = self.copy() + new.wave = np.append(new.wave, other.wave) + new.value = np.append(new.value, other.value) + return new + else: + self.wave = np.append(self.wave, other.wave) + self.value = np.append(self.value, other.value) + + def copy(self): + return copy.deepcopy(self) + + def sample(self, wave, method='linear', fill_value=0, waveunit='nm'): + """Sample the :class:`Spectrum` at a set of desired wavelengths. + + Parameters + ---------- + wave : array_like or float + Wavelength set for sampling. + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (default) + * 'quadratic' uses second order spline interpolation + * 'cubic' uses third order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested + points outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + Returns + ------- + ndarray + An array of sampled values. + + """ + + if waveunit != self.waveunit: + self.to(waveunit) + + interp = scipy.interpolate.interp1d(self.wave, self.value, kind=method, + copy=False, bounds_error=False, + fill_value=fill_value) + + return interp(wave) + + def resample(self, wave, method='linear', fill_value=0, waveunit='nm'): + """Sample the :class:`Spectrum` object at a set of desired wavelengths + and overwrite the object's :attr:`wave` and :attr:`value` attributes. + This method can be viewed as a destructive version of + :func:`Spectrum.sample` + + Parameters + ---------- + wave : array_like or float + Wavelength set for sampling. + + method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (default) + * 'quadratic' uses second order spline interpolation + * 'cubic' uses third order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + """ + self.value = self.sample(wave, method=method, fill_value=fill_value, + waveunit=waveunit) + self.wave = wave + self.waveunit = waveunit + + def bin(self, wave, interp_method='simps', ends='symmetric', preserve_power=True, + sample_method='linear', fill_value=0, waveunit='nm'): + r"""Compute a binned representation of the :class:`Spectrum` data at a + given array of central wavelengths. + + The general algorithm computes bin edges, sampling the :class:`Spectrum` + values at these edges, and numerically integrating within the edges of + each bin. For :math:`n` bins (centered at the wavelength values in the + ``wave`` array), there will be :math:`n+1` edges. The edges at each bin + centered at :math:`\lambda_k` are given by + + .. math:: + + e_{\mbox{left}} = \lambda_k - \frac{\lambda_k - \lambda_{k-1}}{2} + + e_{\mbox{right}} = \lambda_k + \frac{\lambda_{k+1} - \lambda_k}{2} + + Special treatment is required for the first and last edges + (:math:`\lambda_k =` ``wave[0]`` and :math:`\lambda_k =` ``wave[-1]``) + since :math:`\lambda_{k-1}` and :math:`\lambda_{k+1}` are undefined, + respectively. + + Two different first/last bin edge methods are available: + + .. image:: ../_static/img/api/radiometry/spectrum_bin.png + + ========= =============================================== ================================================================================== + ends Left edge for ``wave[0]`` Right edge for ``wave[-1]`` + ========= =============================================== ================================================================================== + symmetric :math:`\lambda_1-\frac{\lambda_2-\lambda_1}{2}` :math:`\lambda_{\mbox{end}}+\frac{\lambda_{\mbox{end}}-\lambda_{\mbox{end}-1}}{2}` + inside :math:`\lambda_1` :math:`\lambda_{\mbox{end}}` + ========= =============================================== ================================================================================== + + Parameters + ---------- + wave : array_like + Central wavelength set for binning. At least two wavelengths must be + provided. + + interp_method : {'simps', 'trapz'}, optional + Numerical integration method. 'simps' (default) is better for smooth + data while 'trapz' is better for linear data. + + ends : {'symmetric', 'inside'}, optional + Method for handling the first and last bin edge value. Default is + 'symmetric'. See the notes below for details on the available + methods. + + preserve_power : bool, optional + + sample_method : {'linear', 'quadratic', 'cubic'}, optional + * 'linear' uses linear interpolation (default) + * 'quadratic' uses second order spline interpolation + * 'cubic' uses third order spline interpolation + + fill_value : float or array_like, optional + * If a float, this value will be used to fill in requested points + outside of the data range. + * If a two-element array, the first element is used to fill + `value_new < value[0]` and the second element is used for + `value_new > value[-1]`. + * If not provided, the default is 0. + + Returns + ------- + value : ndarray + The binned values, same shape as wave. + + """ + + wave = np.asarray(wave) + + if wave.size < 2: + raise ValueError('Spectrum.bin requires a minimum of two wavelengths.\n' + 'If this Spectrum must be represented by a single ' + 'wavelength, consider using Spectrum.integrate() instead.') + + if waveunit != self.waveunit: + self.to(waveunit) + + if interp_method == 'trapz': + dx = np.diff(wave)/2 + x = wave[0:-1] + dx + + if ends == 'symmetric': + x = np.concatenate([[wave[0]-dx[0]], x, [wave[-1]+dx[-1]]]) + elif ends == 'inside': + x = np.concatenate([[wave[0]], x, [wave[-1]]]) + else: + raise ValueError('Unknown ends ', ends) + + # sample + f = self.sample(x, method=sample_method, fill_value=fill_value) + + # apply the chained trapezoidal rule + bins = np.array([]) + for k in range(1, f.size): + bins = np.append(bins, 0.5*(f[k-1]+f[k])*(x[k]-x[k-1])) + + elif interp_method == 'simps': + dx = np.diff(wave)/2 + wave_mid = wave[0:-1] + dx + + # interleave the wave and wave_mid arrays + x = np.empty((wave.size + wave_mid.size,), dtype=wave.dtype) + x[0::2] = wave + x[1::2] = wave_mid + + if ends == 'symmetric': + x = np.concatenate([[wave[0]-dx[0]], x, [wave[-1]+dx[-1]]]) + elif ends == 'inside': + x = np.insert(x, 1, x[0] + (x[1]-x[0])/2) + x = np.insert(x, -1, x[-1] + (x[-2]-x[-1])/2) + else: + raise ValueError('Unknown ends ', ends) + + # sample + f = self.sample(x, method=sample_method, fill_value=fill_value) + + # apply the chained simpson's rule + bins = np.array([]) + for k in range(1, x.size, 2): + bins = np.append(bins, ((x[k+1]-x[k-1])/6) * (f[k-1]+4*f[k]+f[k+1])) + + else: + raise ValueError('Unknown method ', interp_method) + + if preserve_power: + norm_factor = self.integrate(np.min(wave), np.max(wave), method=interp_method)/np.sum(bins) + bins *= norm_factor + + return bins + + def integrate(self, start=None, end=None, method='simps'): + """Compute the integrated value between ``start`` and ``end``. + + Parameters + ---------- + start : float, optional + Lower wavelength bound. If not specified (default), + ``min(self.wave)`` is used. + + end : float, optional + Upper wavelength bound. If not specified (default), + ``max(self.wave)`` is used. + + method : {'simps', 'trapz'}, optional + Numerical integration method. 'simps' (default) is better for smooth + data while 'trapz' is better for linear data. + + Returns + ------- + result : float + Integral as approximated by ``interp_method`` + + """ + if start is None: + start = np.min(self.wave) + if end is None: + end = np.max(self.wave) + + indices = np.intersect1d(np.where(self.wave >= start), + np.where(self.wave <= end)) + wave = self.wave[indices] + value = self.value[indices] + + if method == 'simps': + result = scipy.integrate.simps(value, wave) + elif method == 'trapz': + result = np.trapz(value, wave) + else: + raise ValueError('Unknown method ', method) + + return result + + def ends(self, tol=1e-4): + """Locate the indices defining the continuous nonzero portion of the + :attr:`~radiometry.Spectrum.value` + + The first and last indices where the normalized :attr:`Spectrum.value` + is greater than :attr:`tol` define the bounds of the retained portion of + the :class:`Spectrum`. + + Parameters + ---------- + tol : float, optional + Relative tolerance used to find ends. Default is 1e-4 + + """ + if max(self.value) <= 0: + raise ValueError('Spectrum.trim is only available when ' + 'max(Spectrum.value) > 0') + normval = self.value/max(self.value) + index = np.where(normval > tol) + index_min = index[0][0] + index_max = index[0][-1] + return index_min, index_max + + def trim(self, tol=1e-4): + """Trim the zero or near-zero ends off the :class:`Spectrum` object. + + The first and last indices where the normalized :attr:`Spectrum.value` + is greater than :attr:`tol` define the bounds of the retained portion of + the :class:`Spectrum`. + + Parameters + ---------- + tol : float, optional + Relative tolerance used to find ends. Default is 1e-4 + + Note + ---- + If :attr:`~radiometry.Spectrum.value` is all zeros, no trim operation is + performed and the Spectrum remains unchanged. + + """ + # If the value array is all zeros, do nothing! + if not self.value.any(): + return + + index_min, index_max = self.ends(tol) + self.wave = self.wave[index_min:index_max+1] + self.value = self.value[index_min:index_max+1] + + def crop(self, min_wave, max_wave): + """Crop a :class:`Spectrum` object.""" + + if min_wave > self.wave[0]: + indx = np.where(min_wave > self.wave) + self.wave = np.delete(self.wave, indx) + self.value = np.delete(self.value, indx) + + if max_wave < self.wave[-1]: + indx = np.where(max_wave < self.wave) + self.wave = np.delete(self.wave, indx) + self.value = np.delete(self.value, indx) + + def pad(self, ends, sampling='min', mode='constant', **kwargs): + """Pad a Spectrum + + Parameters + ---------- + ends : sequence or array_like, optional + Wavelength ends to pad to. If None (default), a single value is + padded to each end of the Spectrum according to the sampling and + mode parameters. + + sampling : 'min' or float, optional + * 'min' (Default) + * float + + mode : {'constant', 'edge'}, optional + * 'constant' pads with a constant value (Default) + * 'edge' pads with the edge values + + values : sequence or int, optional + Used in 'constant'. The (before, after) values to set the padded + values for each end. int is a shortcut for before = after. Default + is 0. + + """ + + if mode == 'constant': + if 'values' in kwargs: + values = np.asarray(kwargs['values']) + if values.shape == (): + values = np.append(values, values) + else: + values = (0, 0) + elif mode == 'edge': + values = np.array([self.value[0], self.value[-1]]) + else: + raise ValueError('Unknown mode', mode) + + dwave = _sampling(self.wave, sampling) + + minwave, maxwave = self.wave.min(), self.wave.max() + + ends = np.asarray(ends) + + nleft = int(np.ceil((minwave - ends[0])/dwave)) + 1 + nright = int(np.ceil((ends[1]-maxwave)/dwave)) + 1 + + leftwave = np.linspace(ends[0], minwave, nleft) + leftwave = np.delete(leftwave, -1) + leftvalue = values[0] * np.ones(leftwave.shape) + + rightwave = np.linspace(maxwave, ends[1], nright) + rightwave = np.delete(rightwave, 0) + rightvalue = values[1] * np.ones(rightwave.shape) + + self.wave = np.hstack((leftwave, self.wave, rightwave)) + self.value = np.hstack((leftvalue, self.value, rightvalue)) + + def asarray(self): + """Return :attr:`wave` and :attr:`value` as an array. + + Returns + ------- + array : ndarray + Spectral data as an array with ``array[0] = wave`` and ``array[1] = value``. + """ + return np.array((self.wave, self.value)) + + def to(self, *args): + """Set new wavelength and/or value units. In addition to supporting + single ``wave`` or ``value`` unit conversion, this method accepts two + unit arguments to perform simultaneous ``wave`` and ``value`` unit + conversions. + + Parameters + ---------- + unit : str + Unit to convert to, as accepted by :func:`Unit`. + + """ + for unit in args: + + if unit.lower() in ['m', 'um', 'nm', 'angstrom']: + if self.valueunit in ['photlam', 'flam', 'wlam']: + # if the current valueunit are relative to waveunit, we + # need to convert to the requested waveunit and update the + # valueunit appropriately + self.wave = self.wave * self._waveunit.to(unit) + self.value = self.value / self._waveunit.to(unit) + elif self.valueunit is None: + # the current valueunit is None, so we assume it is + # independent of waveunit and only convert to the + # requested waveunit + self.wave = self.wave * self._waveunit.to(unit) + # Update waveunit + self.waveunit = unit + + elif unit.lower() in ['photlam', 'flam', 'wlam']: + if self.valueunit is None: + raise TypeError("Can't convert from None valueunit to " + unit) + else: + # All conversions are done with wavelength in terms of meters + wave = self.wave * self._waveunit.to('meter') + value = self.value / self._waveunit.to('meter') + + # Do the value conversion + self.value = self._valueunit.to(value, unit, wave) / Meter().to(self.waveunit) + + # Update fluxunit + self.valueunit = unit + + else: + raise ValueError('Unknown unit') + + @classmethod + def from_csv(cls, filename, waveunit, valueunit, zero_negatives=True, + header_rows=1): + """Create a :class:`Spectrum` from a csv file. + + Parameters + ---------- + filename : str + csv file to load + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. + + valueunit : str + Value units, as accepted by :func:`Unit`. + + zero_negatives : bool, optional + If true (default), negative values are replaced with zeros. + + header_rows : int, optional + Number of header rows in csv file to ignore. Default is 1. + """ + + dat = np.genfromtxt(filename, delimiter=',', skip_header=header_rows) + if zero_negatives: + dat[dat[:, 1] < 0, 1] = 0 + + return cls(dat[:, 0], dat[:, 1], waveunit, valueunit) + + +def _sampling(wave, method='min'): + """Compute wave sampling using to specified method. + + Parameters + ---------- + wave : array_like + Single wavelength array or 2D collection of wavelength arrays + + method: {'min', 'left', 'right'} or float + Method used for computing wavelength sampling when Spectrum resampling + is required prior to adding + + * 'min' uses the minimum sampling in wave + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + """ + + if method == 'min': + + if isinstance(wave, (list, tuple)): + dwave = np.array([]) + for w in wave: + dwave = np.append(dwave, np.diff(w).min()) + + return dwave.min() + + elif isinstance(wave, np.ndarray): + return np.diff(wave).min() + + elif method == 'left': + if len(wave) != 2: + raise ValueError() + return _sampling(wave[0], method='min') + + elif method == 'right': + if len(wave) != 2: + raise ValueError() + return _sampling(wave[1], method='min') + + elif np.isscalar(method): + return method + + else: + raise ValueError('Unknown sampling method', method) + + +def _intersect(subset, superset): + """Return the superset indices where the subset overlaps based on its + subset.min() and subset.max(). + + Both subset and superset are assumed to be monotonically increasing + + """ + return np.where((superset >= subset.min()) & (superset <= subset.max())) + + +def _interp_common(s1, s2, sampling, method, fill_value): + """Return a common wavelength basis with appropriately interpolated and + padded value arrays for s1 and s2. + + Parameters + ---------- + s1, s2 : Spectrum objects + + sampling : {'min', 'left', 'right'} or float + Method used for computing wavelength sampling when Spectrum resampling + is required prior to adding + + * 'min' uses the minimum sampling in either Spectrum + * 'left' uses the minimum sampling in the left Spectrum + * 'right' uses the minimum sampling in the right Spectrum + * uses the float value specified + + method : {'linear', 'quadratic', 'cubic'} + Interpolation method used for sampling Spectrum values. + + * 'linear' uses linear interpolation + * 'quadratic' uses second-order spline interpolation + * 'cubic' uses third-order spline interpolation + + fill_value : float + Value used to fill in requested points outside of the data range. + + Returns + ------- + commonwave : ndarray + + s1_value : ndarray + + s2_value : ndarray + + """ + + # compute a common wavelength array that spans both spectrum and has the + # desired sampling + minwave = min(s1.wave.min(), s2.wave.min()) + maxwave = max(s1.wave.max(), s2.wave.max()) + + dwave = _sampling((s1.wave, s2.wave), sampling) + + num = int(np.ceil((maxwave - minwave)/dwave)) + commonwave = np.linspace(minwave, maxwave, num + 1) + + # get the portion of commonwave that corresponds to the two spectrum objects + s1_index = _intersect(s1.wave, commonwave) + s1_wave = commonwave[s1_index] + + s2_index = _intersect(s2.wave, commonwave) + s2_wave = commonwave[s2_index] + + # sample each Spectrum at the requested sampling + s1_samplevalue = s1.sample(s1_wave, method=method, fill_value=fill_value) + s2_samplevalue = s2.sample(s2_wave, method=method, fill_value=fill_value) + + # create nominal value arrays + s1_value = fill_value * np.ones(commonwave.shape) + s2_value = fill_value * np.ones(commonwave.shape) + + # insert the sampled values into the appropriate slots + s1_value[s1_index] = s1_samplevalue + s2_value[s2_index] = s2_samplevalue + + return commonwave, s1_value, s2_value + + +class Blackbody(Spectrum): + """Class for representing a blackbody emitter. + + Parameters + ---------- + wave : array_like + Array of wavelengths or wavenumbers + + temp : float + Temperature in K + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + valueunit : str + Flux units, as accepted by :func:`Unit`. Default is ``photlam``. + + Attributes + ---------- + value : ndarray + Spectral radiance computed with :func:`planck_radiance` + + Examples + -------- + Create a Blackbody object with wavelength range 400-4000 nm and a temperature of + 4000K: + + .. code:: pycon + + >>> import numpy as np + >>> import matplotlib.pyplot as plt + >>> import lentil as mo + >>> wave = np.arange(400,4000) + >>> temp = 5000 + >>> src = mo.radiometry.Blackbody(wave,temp,waveunit='nm') + >>> plt.plot(src.wave, src.value), plt.grid() + + .. image:: ../_static/img/api/radiometry/blackbody.png + :width: 400px + + """ + + def __init__(self, wave, temp, waveunit='nm', valueunit='photlam'): + wave = np.asarray(wave) + flux = planck_radiance(wave, temp, waveunit, valueunit) + self.temp = temp + self.sample_fn = planck_radiance + + super().__init__(wave, flux, waveunit, valueunit) + + def sample(self, wave, waveunit='nm', *args, **kwargs): + # sample_fn will be planck_radiance if the Blackbody was created from its + # standard constructor. If instead, Blackbody was created from the vegamag + # classmethod, sample_fn will be planck_exitance + return self.sample_fn(wave, self.temp, waveunit, valueunit=self.valueunit) + + def sample_vegamag(self, wave, temp, waveunit, valueunit): + # Get Vega zero point data for requested band + E0, wave0 = vegaflux(self.band, waveunit) + + # Compute exitance of Vega at equivalent wavelength in the observing + # band + M0 = planck_exitance(wave0, temp, waveunit, valueunit) + + # Compute the source exitance over the desired wavelengths + M = planck_exitance(wave, temp, waveunit, valueunit) + + # Scale the source irradiance by the requested magnitude + E = E0 * (M/M0)*10**(-0.4*self.mag) + + return E + + # TODO: this should really return a different type. when that is done, remove + # the sample_fn garbage and move sample_vegamag to the new object's sample + # method (should actually create a flux method that takes band, mag, temp, + # etc and call that in both the constructor and the sample method) + @classmethod + def vegamag(cls, wave, temp, mag, band, waveunit='nm', valueunit='photlam'): + r""" Create a :class:`Blackbody` with its irradiance scaled to an + apparent magnitude. + + Parameters + ---------- + wave : array_like + Array of wavelengths or wavenumbers + + temp : float + Temperature in K + + mag : float + Apparent magnitude + + band : str + Observing band closest to the wavelengths in :attr:`wave`. See + :func:`vegaflux` for supported bands. + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + valueunit : str + Flux units, as accepted by :func:`Unit`. Default is ``photlam``. + + Attributes + ---------- + value : ndarray + Spectral irradiance + + Examples + -------- + Create a Blackbody object with wavelength range 400-900 nm, a temperature of + 4000K, and a visible magnitude of 2: + .. code:: pycon + + >>> import numpy as np + >>> import matplotlib.pyplot as plt + >>> import lentil as mo + >>> wave = np.arange(400,900) + >>> temp = 5000 + >>> mag = 2 + >>> band = 'V' # Chosen for best overlap with wavelength range + >>> src = mo.radiometry.Blackbody.vegamag(wave,temp,mag,band,waveunit='nm') + >>> plt.plot(src.wave, src.value), plt.grid() + + .. image:: ../_static/img/api/radiometry/blackbody_vegamag.png + :width: 400px + + Notes + ----- + This class implements a special formulation of a :class:`Blackbody` + which computes irradiance for a star given a magnitude :math:`mag` in + an observing band chosen from :func:`vegaflux`. The general calculation + performed here is as follows: + + 1. Look up zero point irradiance :math:`E_{\mbox{Vega}}` and central + wavelength :math:`\lambda_{0,\mbox{Vega}}` in the desired observing + band + 2. Compute exitance :math:`M_0` for the desired star at + :math:`\lambda_{0,\mbox{Vega}}` + 3. Compute exitance :math:`M` for the desired star over the requested + wavelength range + 4. Compute apparent magnitude scaling factor + :math:`f = 10^{-0.4\mbox{mag}}` + 5. Compute star irradiance as + :math:`E = E_{\mbox{Vega}} \ f \left(\frac{M}{M_0}\right)` + + """ + + wave = np.asarray(wave) + + # Get Vega zero point data for requested band + E0, wave0 = vegaflux(band, waveunit) + + # Compute exitance of Vega at equivalent wavelength in the observing + # band + M0 = planck_exitance(wave0, temp, waveunit, valueunit='photlam') + + # Compute the source exitance over the desired wavelengths + M = planck_exitance(wave, temp, waveunit, valueunit='photlam') + + # Scale the source irradiance by the requested magnitude + E = E0 * (M/M0)*10**(-0.4*mag) + + # Construct a blackbody object + self = cls(wave, temp, waveunit, valueunit) + self.value = E + + # Populate this object with additional attributes + self.mag = mag + self.band = band + self.sample_fn = self.sample_vegamag + + return self + + +class Material: + """Class for representing a material with radiometric properties. + + Parameters + ---------- + transmission : :class:`~lentil.radiometry.Spectrum` or float, optional + Spectral transmission. If not specified, a default transmission is + created which has no radiometric effect. + + emission : :class:`~lentil.radiometry.Spectrum` or float, optional + Spectral thermal emission of the element. If not specified, a default + emission is created which has no radiometric contribution. + + contam : float or :class:`~lentil.radiometry.Spectrum`, optional + Material contamination factor. Can be used for representing EOL/BOL + optical properties. Should be within [0,1]. Both + :attr:`~lentil.radiometry.Material.transmission` and + :attr:`~lentil.radiometry.Material.emission` are multiplied by contam + before being returned. + + Note + ---- + There is no separate reflection attribute. Reflective optics should use the + :attr:`~lentil.radiometry.Material.transmission` attribute to represent + reflectivity. + + See Also + -------- + * :func:`lentil.radiometry.path_transmission` + * :func:`lentil.radiometry.path_emission` + + """ + def __init__(self, transmission=1, emission=0, contam=1): + self.transmission = transmission + self.emission = emission + self.contam = contam + + @property + def transmission(self): + return self.contam * self._transmission + + @transmission.setter + def transmission(self, value): + self._transmission = value + + @property + def emission(self): + # TODO: make sure this is correct + return self.contam * self._emission + + @emission.setter + def emission(self, value): + self._emission = value + + +def path_transmission(iterable): + """Construct a common transmission from an iterable of :class:`Spectrum` or + :class:`Material` objects or numeric types + + Parameters + ---------- + iterable: list_like + List of :class:`Spectrum` or :class:`Material` objects or numeric types + + Returns + ------- + transmission: :class:`~lentil.radiometry.Spectrum` + + """ + transmission = 1 + for item in iterable: + if isinstance(item, Material): + transmission = transmission * item.transmission + else: + transmission = transmission * item + return transmission + + +def path_emission(iterable): + """Construct a common emission from an iterable of :class:`Material` objects + + Parameters + ---------- + iterable: list_like + List of :class:`Material` objects + + Returns + ------- + emission: :class:`~lentil.radiometry.Spectrum` + + """ + emission = 0 + for item in iterable: + emission = (emission * item.transmission) + item.emission + return emission + + +def planck_exitance(wave, temp, waveunit='nm', valueunit='wlam'): + r"""Compute the Planck law spectral exitance from a blackbody radiator at + the given temperature. + + .. math:: + + M_{\lambda}(T) = \frac{2\pi hc^2}{\lambda^5 \exp \left(\frac{hc}{\lambda k T}\right)-1} + + Parameters + ---------- + wave : array_like or float + Wavelength or array of wavelengths + + temp : float + Blackbody temperature in K + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. + + valueunit : str + Flux units, as accepted by :func:`Unit`. + + Returns + ------- + ndarray + Spectral exitance in ``valueunit``. + + """ + + # convert wave to meters + wave = wave * Unit(waveunit).to('meter') + + # compute flux in W m^-2 sr^-1 m^-1 + flux = 2*np.pi*H*C**2/(wave**5*(np.exp(H*C/(wave*K*temp))-1)) + + # do flux conversion (if necessary) + if valueunit == 'wlam': + # just convert flux back to W m^-2 sr^-1 ^-1 + return flux / Meter().to(waveunit) + else: + # convert to desired fluxunit and back to waveunit + return Wlam().to(flux, valueunit, wave) / Meter().to(waveunit) + + +def planck_radiance(wave, temp, waveunit='nm', valueunit='wlam'): + r"""Compute the Planck law spectral radiance from a blackbody radiator at + the given temperature. + + .. math:: + + M_{\lambda}(T) = \frac{2hc^2}{\lambda^5 \exp \left(\frac{hc}{\lambda k T}\right)-1} + + Parameters + ---------- + wave : array_like or float + Wavelength or array of wavelengths + + temp : float + Blackbody temperature in K + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + valueunit : str + Flux units, as accepted by :func:`Unit`. Default is ``wlam``. + + Returns + ------- + ndarray + Spectral radiance in ``valueunit sr^-1``. + + """ + # convert wave to meters + wave = wave * Unit(waveunit).to('meter') + + # compute flux in W m^-2 m^-1 + flux = 2*H*C**2/(wave**5*(np.exp(H*C/(wave*K*temp))-1)) + + # do flux conversion (if necessary) + if valueunit == 'wlam': + # just convert flux back to W m^-2 ^-1 + return flux / Meter().to(waveunit) + else: + # convert to desired valueunit and back to waveunit + return Wlam().to(flux, valueunit, wave) / Meter().to(waveunit) + + +def vegaflux(band, waveunit='nm', valueunit='photlam'): + """Get the flux of Vega in a desired observing band. + + ====== ================== ======= + Band Central Wavelength Flux + ====== ================== ======= + ``U`` 360 nm 1790 Jy + ``B`` 438 nm 4036 Jy + ``V`` 545 nm 3636 Jy + ``R`` 641 nm 3064 Jy + ``I`` 798 nm 2416 Jy + ``J`` 1220 nm 1589 Jy + ``H`` 1630 nm 1021 Jy + ``K`` 2190 nm 640 Jy + ``W1`` 3353 nm 310 Jy + ``W2`` 4603 nm 172 Jy + ``W3`` 11561 nm 31.7 Jy + ``W4`` 22088 nm 8.36 Jy + ====== ================== ======= + + Parameters + ---------- + band : str + Observing band. + + waveunit : str + Wavelength units, as accepted by :func:`Unit`. Default is ``nm``. + + valueunit : str + Flux units, as accepted by :func:`Unit`. Default is ``photlam``. + + Returns + ------- + flux : float + Vega flux in :attr:`band` expressed in :attr:`valueunit` + + wave : float + Central wavelength in :attr:`band` expressed in :attr:`waveunit` + + References + ---------- + [1] Bessell et al. (1998) Johnson-Cousins-Class System + + [2] Wright et al. (2010) Wide-Field Infrared Survey Explorer + + """ + vega = { + # band nm Jy + 'U': {'wave': 360e-9, 'flux': 1790}, + 'B': {'wave': 438e-9, 'flux': 4036}, + 'V': {'wave': 545e-9, 'flux': 3636}, + 'R': {'wave': 641e-9, 'flux': 3064}, + 'I': {'wave': 798e-9, 'flux': 2416}, + 'J': {'wave': 1220e-9, 'flux': 1589}, + 'H': {'wave': 1630e-9, 'flux': 1021}, + 'K': {'wave': 2190e-9, 'flux': 640}, + 'W1': {'wave': 3353e-9, 'flux': 310}, + 'W2': {'wave': 4603e-9, 'flux': 172}, + 'W3': {'wave': 11561e-9, 'flux': 31.7}, + 'W4': {'wave': 22088e-9, 'flux': 8.36} + } + + band = band.upper() + + if band not in vega: + raise ValueError('Unknown band: ' + band) + + wave = vega[band]['wave'] + flux = vega[band]['flux'] + + flux = flux * 1e-26 # Jy -> W/m^2 Hz + flux = flux * C/(wave**2) # W/m^2 Hz -> W/m^2 m + flux = flux * wave/(H*C) # W/m^2 m -> ph/s m^2 m + + # do flux conversion (if necessary) + if valueunit == 'photlam': + # just convert ph/s m^2 m^-1 -> ph/sm^-2 ^-1 + flux = flux / Meter().to(waveunit) + else: + # convert to desired valueunit and back to waveunit. Note that wave + # is still in terms of meters here. + flux = Photlam().to(flux, valueunit, wave) / Meter().to(waveunit) + + wave = wave * Meter().to(waveunit) # m -> + + return flux, wave + + +def Unit(name): + r"""Generate a Unit object. + + **Wavelength Units** + + ===================== ================== ========================== + Name Class Object Units + ===================== ================== ========================== + ``m``, ``meter`` :class:`Meter` SI base unit + ``um``, ``micron`` :class:`Micron` :math:`10^{-6}\ \mbox{m}` + ``nm``, ``nanometer`` :class:`Nanometer` :math:`10^{-9}\ \mbox{m}` + ``angstrom`` :class:`Angstrom` :math:`10^{-10}\ \mbox{m}` + ===================== ================== ========================== + + **Flux Units** + + =========== ================= =========================================== + Name Class Object Units + =========== ================= =========================================== + ``photlam`` :class:`Photlam` :math:`\mbox{photons s}^{-1} \mbox{m}^{-2}` + ``wlam`` :class:`Wlam` :math:`\mbox{W m}^{-2}` + ``flam`` :class:`Flam` :math:`\mbox{erg s}^{-1} \mbox{cm}^{-2}` + =========== ================= =========================================== + + Parameters + ---------- + name : str + Wavelength or flux units as accpeted by :func:`Unit`. + + Returns + ------- + Unit or ``None`` + Unit object. ``None`` means unitless. + + """ + if name is not None: + if name.lower() in ['meter', 'm']: + return Meter() + elif name.lower() in ['um', 'micron']: + return Micron() + elif name.lower() in ['nm', 'nanometer']: + return Nanometer() + elif name.lower() == 'angstrom': + return Angstrom() + elif name.lower() == 'photlam': + return Photlam() + elif name.lower() == 'flam': + return Flam() + elif name.lower() == 'wlam': + return Wlam() + else: + raise ValueError('Invalid unit: ' + name) + else: + return None + + +class _Unit: + def __str__(self): + return self.name + + +class Meter(_Unit): + """Meter waveunit.""" + name = 'm' + + @staticmethod + def to(waveunit): + """Convert waveunit. + + ===== ============ ====================== + From To Conversion + ===== ============ ====================== + ``m`` ``m`` :math:`1` + ``m`` ``um`` :math:`10^{-6}` ``m`` + ``m`` ``nm`` :math:`10^{-9}` ``m`` + ``m`` ``angstrom`` :math:`10^{-10}` ``m`` + ===== ============ ====================== + + Parameters + ---------- + waveunit : str + Wavelength units, as accpeted by :func:`Unit`. + + Returns + ------- + int + :attr:`wave` scaling factor + + """ + if waveunit.lower() in ['m', 'meter']: + return 1 + elif waveunit.lower() in ['um', 'micron']: + return 1e6 + elif waveunit.lower() in ['nm', 'nanometer']: + return 1e9 + elif waveunit.lower() == 'angstrom': + return 1e10 + else: + raise ValueError('Unknown waveunit: ' + waveunit) + + +class Micron(_Unit): + """Micron waveunit.""" + name = 'um' + + @staticmethod + def to(waveunit): + """Convert waveunit. + + ====== ============ ====================== + From To Conversion + ====== ============ ====================== + ``um`` ``m`` :math:`10^{-6}` ``um`` + ``um`` ``um`` :math:`1` + ``um`` ``nm`` :math:`10^{3}` ``um`` + ``um`` ``angstrom`` :math:`10^{4}` ``um`` + ====== ============ ====================== + + Parameters + ---------- + waveunit : str + Wavelength units, as accepted by :func:`Unit`. + + Returns + ------- + int + :attr:`wave` scaling factor + + """ + if waveunit.lower() in ['m', 'meter']: + return 1e-6 + elif waveunit.lower() in ['um', 'micron']: + return 1 + elif waveunit.lower() in ['nm', 'nanometer']: + return 1e3 + elif waveunit.lower() == 'angstrom': + return 1e4 + else: + raise ValueError('Unknown waveunit: ' + waveunit) + + +class Nanometer(_Unit): + name = 'nm' + + @staticmethod + def to(waveunit): + if waveunit.lower() in ['m', 'meter']: + return 1e-9 + elif waveunit.lower() in ['um', 'micron']: + return 1e-3 + elif waveunit.lower() in ['nm', 'nanometer']: + return 1 + elif waveunit.lower() == 'angstrom': + return 1e1 + else: + raise ValueError('Unknown waveunit: ' + waveunit) + + +class Angstrom(_Unit): + name = 'angstrom' + + @staticmethod + def to(waveunit): + if waveunit.lower() in ['m', 'meter']: + return 1e-10 + elif waveunit.lower() in ['um', 'micron']: + return 1e-4 + elif waveunit.lower() in ['nm', 'nanometer']: + return 1e-1 + elif waveunit.lower() == 'angstrom': + return 1 + else: + raise ValueError('Unknown waveunit: ' + waveunit) + + +class Photlam(_Unit): + name = 'photlam' + longname = 'photons s^-1 m^-2' + + @staticmethod + def to(flux, fluxunit, wave): + if fluxunit.lower() == 'wlam': + return flux * (H*C)/wave + elif fluxunit.lower() == 'flam': + return flux * (H*C)/wave * 1e7 * 1e-4 + elif fluxunit.lower() == 'photlam': + return flux + else: + raise ValueError('Unknown fluxunit: ' + fluxunit) + + +class Flam(_Unit): + name = 'flam' + longname = 'erg s^-1 cm^-2' + + @staticmethod + def to(flux, fluxunit, wave): + if fluxunit.lower() == 'photlam': + return flux * wave/(H * C) * 1e-7 * 1e4 + elif fluxunit.lower() == 'wlam': + return flux * 1e-7 * 1e4 + elif fluxunit.lower() == 'flam': + return flux + else: + raise ValueError('Unknown fluxunit: ' + fluxunit) + + +class Wlam(_Unit): + name = 'wlam' + longname = 'W m^-2' + + @staticmethod + def to(flux, fluxunit, wave): + if fluxunit.lower() == 'photlam': + return flux * wave/(H*C) + elif fluxunit.lower() == 'flam': + return flux * 1e7 * 1e-4 + elif fluxunit.lower() == 'wlam': + return flux + else: + raise ValueError('Unknown fluxunit: ' + fluxunit) diff --git a/lentil/util.py b/lentil/util.py new file mode 100644 index 0000000..87f5bfb --- /dev/null +++ b/lentil/util.py @@ -0,0 +1,606 @@ +import numpy as np +from scipy.ndimage.interpolation import map_coordinates + + + + +def circle(shape, radius, center=(0, 0)): + """Compute a circle with anti-aliasing. + + Parameters + ---------- + shape : array_like + Size of output in pixels (nrows, ncols) + + radius : float + Radius of circle in pixels + + center : (2,) array_like, optional + How far to shift center in float (rows, cols). Default is (0, 0). + + Returns + ------- + circle : ndarray + + """ + x, y = mesh(shape) + r = np.sqrt(np.square(x - center[1]) + np.square(y - center[0])) + return np.clip(radius + 0.5 - r, 0.0, 1.0) + + +def circlemask(shape, radius, center=(0, 0)): + """Compute a circular mask. + + Parameters + ---------- + shape : array_like + Size of output in pixels (nrows, ncols) + + radius : float + Radius of circle in pixels + + center : array_like, optional + How far to shift center in float (rows, cols). Default is (0, 0). + + Returns + ------- + mask : ndarray + + """ + + mask = circle(shape, radius, center) + mask[mask > 0] = 1 + return mask + + +def hexagon(shape, radius, rotate=False): + """Compute a hexagon mask. + + Parameters + ---------- + shape : array_like + Size of output in pixels (nrows, ncols) + + radius : int + Radius of outscribing circle (which also equals the side length) in + pixels. + + rotate : bool + Rotate mask so that flat sides are aligned with the Y direction instead + of the default orientation which is aligned with the X direction. + + Returns + ------- + mask : ndarray + + """ + + inner_radius = radius * np.sqrt(3)/2 + side_length = radius/2 + + y, x = mesh(shape) + + rect = np.where((np.abs(x) <= side_length) & (np.abs(y) <= inner_radius)) + left_tri = np.where((x <= -side_length) & (x >= -radius) & (np.abs(y) <= (x + radius)*np.sqrt(3))) + right_tri = np.where((x >= side_length) & (x <= radius) & (np.abs(y) <= (radius - x)*np.sqrt(3))) + + mask = np.zeros(shape) + mask[rect] = 1 + mask[left_tri] = 1 + mask[right_tri] = 1 + + if rotate: + return mask.transpose() + else: + return mask + + +def slit(shape, width): + """Compute a slit mask. + + Parameters + ---------- + shape : array_like + Size of output in pixels (nrows, ncols) + + width : int + Slit width in pixels + + Returns + ------- + mask : ndarray + + """ + + y, x = mesh(shape) + + mask = np.zeros(shape) + mask[np.abs(x) <= width/2] = 1 + + return mask + + +def centroid(img): + """Compute image centroid location. + + Parameters + ---------- + img : array_like + Input array. + + Returns + ------- + tuple + ``(x,y)`` centroid location. + """ + + img = np.asarray(img) + img = img/np.sum(img) + nr, nc = img.shape + yy, xx = np.mgrid[0:nr, 0:nc] + + x = np.dot(xx.ravel(), img.ravel()) + y = np.dot(yy.ravel(), img.ravel()) + + return x, y + + +def pad(array, shape): + """Zero-pad an array. + + Note that pad works for both two and three dimensional arrays. + + Parameters + ---------- + array : array_like + Array to be padded. + + shape : tuple of ints + Shape of output array in ``(nrows, ncols)``. + + Returns + ------- + padded : ndarray + Zero-padded array with shape ``(nrows, ncols)``. If ``array`` has a + third dimension, the return shape will be ``(nrows, ncols, depth)``. + """ + + array = np.asarray(array) + + output_shape = (shape[0], shape[1]) + if array.ndim == 3: + output_shape = np.append(output_shape, array.shape[2]) + + padded = np.zeros(output_shape, dtype=array.dtype) + + dr = shape[0] - array.shape[0] + dc = shape[1] - array.shape[1] + + if dr <= 0: + rmin0 = (array.shape[0] - shape[0])//2 + rmax0 = rmin0 + shape[0] + rmin1 = 0 + rmax1 = shape[0] + else: + rmin0 = 0 + rmax0 = array.shape[0] + rmin1 = (shape[0] - array.shape[0])//2 + rmax1 = rmin1 + array.shape[0] + + if dc <= 0: + cmin0 = (array.shape[1] - shape[1])//2 + cmax0 = cmin0 + shape[1] + cmin1 = 0 + cmax1 = shape[1] + else: + cmin0 = 0 + cmax0 = array.shape[1] + cmin1 = (shape[1] - array.shape[1])//2 + cmax1 = cmin1 + array.shape[1] + + padded[rmin1:rmax1, cmin1:cmax1] = array[rmin0:rmax0, cmin0:cmax0] + + return padded + + +def boundary(img, threshold=0): + """Find bounding row and column indices of data within an array.""" + img = np.asarray(img) + img = (img > threshold) + + rows = np.any(img, axis=1) + cols = np.any(img, axis=0) + + rmin, rmax = np.where(rows)[0][[0, -1]] + cmin, cmax = np.where(cols)[0][[0, -1]] + + return rmin, rmax, cmin, cmax + + +def rebin(img, factor): + """Rebin an image by an integer factor. + + Parameters + ---------- + img : array_like + Array or cube of arrays to rebin. If a cube is provided, the first dimension + should index the image slices. + + factor : int + Rebinning factor + + Returns + ------- + img : ndarray + Rebinned image + + See Also + -------- + :func:`rescale` + + """ + img = np.asarray(img) + + if np.iscomplexobj(img): + raise ValueError('rebin is not defined for complex data') + + if img.ndim == 3: + rebinned_shape = (img.shape[0], img.shape[1]//factor, img.shape[2]//factor) + img_rebinned = np.zeros(rebinned_shape, dtype=img.dtype) + for i in range(img.shape[0]): + img_rebinned[i] = img[i].reshape(rebinned_shape[1], factor, + rebinned_shape[2], factor).sum(-1).sum(1) + else: + img_rebinned = img.reshape(img.shape[0]//factor, factor, img.shape[1]//factor, + factor).sum(-1).sum(1) + + return img_rebinned + + +def gaussian2d(size, sigma): + """2D Gaussian kernel.""" + x, y = np.meshgrid(np.linspace(-1, 1, size), np.linspace(-1, 1, size)) + + G = np.exp(-((x**2/(2*sigma**2)) + (y**2/(2*sigma**2)))) + return G/np.sum(G) + + +def mesh(shape, shift=(0, 0)): + """Generate a standard mesh.""" + + nr = shape[0] + nc = shape[1] + + x = np.arange(shape[1]) - np.floor(shape[1]/2.0) - shift[1] + y = np.arange(shape[0]) - np.floor(shape[0]/2.0) - shift[0] + + return np.meshgrid(x, y) + + +def coordinates(shape, pixelscale): + """Generate physical coordinates for an array. + + Parameters + ---------- + shape : tuple + + pixelscale : float or tuple of floats + + Returns + ------- + y, x : array_like + Coordinates in meters + + """ + y, x = np.indices(shape, dtype=float) + + if np.isscalar(pixelscale): + pixelscale_x, pixelscale_y = pixelscale, pixelscale + else: + pixelscale_x, pixelscale_y = pixelscale + + y -= (shape[0] - 1)/2 + x -= (shape[1] - 1)/2 + + return pixelscale_y * y, pixelscale_x * x + + +def rescale(img, scale, shape=None, mask=None, order=3, mode='nearest', + unitary=True): + """Rescale an image by interpolation. + + Parameters + ---------- + img : array_like + Image to rescale + + scale : float + Scaling factor. Scale factors less than 1 will shrink the image. Scale + factors greater than 1 will grow the image. + + shape : array_like or int, optional + Output shape. If None (default), the output shape will be the input img + shape multiplied by the scale factor. + + mask : array_like, optional + Binary mask applied after rescaling. If None (default), a mask is + created from the nonzero portions of img. To skip masking operation, + set ``mask = np.ones_like(img)`` + + order : int, optional + Order of spline interpolation used for rescaling operation. Default is + 3. Order must be in the range 0-5. + + mode : {'constant', 'nearest', 'reflect', 'wrap'}, optional + Points outside the boundaries of the input are filled according to the + given mode. Default is 'constant'. + + unitary : bool, optional + Normalization flag. If True (default), a normalization is performed on + the output such that the rescaling operation is unitary and image power + (if complex) or intensity (if real) is conserved. + + Returns + ------- + img : ndarray + Rescaled image. + + Note + ---- + The post-rescale masking operation should have no real effect on the + resulting image but is included to eliminate interpolation artifacts that + sometimes appear in large clusters of zeros in rescaled images. + + See Also + -------- + :func:`rebin` + + """ + + img = np.asarray(img) + + if mask is None: + mask = np.zeros_like(img) + mask[img != 0] = 1 + + if shape is None: + shape = (int(img.shape[0]*scale), int(img.shape[1]*scale)) + else: + if np.isscalar(shape): + shape = (int(shape*scale), int(shape*scale)) + else: + shape = (int(shape[0]*scale), int(shape[1]*scale)) + + x = (np.arange(shape[1], dtype=np.float64) - shape[1]/2.)/scale + img.shape[1]/2. + y = (np.arange(shape[0], dtype=np.float64) - shape[0]/2.)/scale + img.shape[0]/2. + + xx, yy = np.meshgrid(x, y) + + mask = map_coordinates(mask, [yy, xx], order=1, mode='nearest') + mask[mask < np.finfo(mask.dtype).eps] = 0 + + if np.iscomplexobj(img): + out = np.zeros(shape, dtype=np.complex128) + out.real = map_coordinates(img.real, [yy, xx], order=order, mode=mode) + out.imag = map_coordinates(img.imag, [yy, xx], order=order, mode=mode) + if unitary: + out /= scale + else: + out = map_coordinates(img, [yy, xx], order=order, mode=mode) + if unitary: + out /= scale**2 + + out *= mask + + return out + + +def pixelscale_nyquist(wave, f_number): + """Compute the output plane sampling which is Nyquist sampled for + intensity. + + Parameters + ---------- + wave : float + Wavelength in meters + + f_number : float + Optical system F/# + + Returns + ------- + float + Sampling in meters + + """ + return f_number * wave / 2 + + +def angle2shift(angle, z, pixelscale): + return (angle*z)/pixelscale + + +def shift2angle(shift, z, pixelscale): + return (shift*pixelscale)/z + + +def make_index(mat): + """Create a sparse coordinate list (COO) index dictionary. + + Parameters + ---------- + mat : array_like + Full matrix to ve vectorized + + Returns + ------- + dict + Index dictionary with the following attributes: + + * ``row`` List of row indices which contain nonzero data + * ``col`` List of column indices which contain nonzero data + * ``shape`` Tuple of dimensions of :attr:`~lentil.wfe.make_index.mat` + + See Also + -------- + * :func:`~lentil.sparse.v2m` Convert sparse vectorized data to a full matrix + * :func:`~lentil.sparse.m2v` Convert a full matrix to sparse vectorized data + + """ + mat = np.asarray(mat) + row, col = mat.nonzero() + shape = mat.shape + return {'row': row, 'col': col, 'shape': shape} + + +def make_mask(index): + """Create a mask from a sparse oordinate list (COO) index dictionary.""" + return v2m(np.ones(index['row'].shape), index) + + +def v2m(vec, index): + """Convert a sparse vector to a full matrix. + + Parameters + ---------- + vec : array_like + Sparse vector to be reformed as a full matrix + + index : dict + Corresponding index dictionary + + Returns + ------- + ndarray + Full matrix + + See Also + -------- + * :func:`~lentil.sparse.m2v` Convert a full matrix to sparse vectorized data + * :func:`~lentil.sparse.make_index` Create a sparse coordinate list (COO) + index dictionary + + """ + mat = np.zeros(index['shape']) + nnz = len(index['row']) + for i in range(nnz): + mat[index['row'][i], index['col'][i]] = vec[i] + return mat + + +def m2v(mat, index): + """Convert a full matrix to a sparse vector. + + Parameters + ---------- + mat : array_like + Full matrix to be reformed as a sparse vector + + index : dict + Corresponding index dictionary + + Returns + ------- + ndarray + Sparse vector + + See Also + -------- + * :func:`~lentil.sparse.v2m` Convert sparse vectorized data to a full matrix + * :func:`~lentil.sparse.make_index` Create a sparse coordinate list (COO) + index dictionary + + """ + raveled_indices = np.ravel_multi_index((index['row'], index['col']), + index['shape'], order='C') + vec = mat.ravel() + return vec[raveled_indices] + + +def col_major_to_row_major(col_major_sens, col_major_index): + """Convert a column-major sensitivity matrix and corresponding index + dictionary (MATLAB-style) to a row-major sensitivity matrix and + corresponding index disctionary (Python-style). + + Parameters + ---------- + col_major_sens : array_like + Sensitivity matrix ordered as column-major + + col_major_index : dict + Corresponding index dictionary + + Returns + ------- + ndarray + Sensitivity matrix reordered as row-major + dict + Corresponding index dictionary + + Warning + ------- + Keep in mind that when importing MATLAB-created index files to create + :attr:`~lentil.wfe.col_major_to_row_major.col_major_index`, MATLAB used + 1-based indexing and Python uses 0-based indexing. As a result, both the + row and col lists in + :attr:`~lentil.wfe.col_major_to_row_major.col_major_index` must have one + subtracted from them to ensure consistency. See example below. + + Examples + -------- + .. code:: python3 + + import numpy as np + import lentil + + # import the column-major sensitivity matrix + dwdx = np.genfromtxt('dwdx.csv', delimiter=',') + + # index_csv contains the row and column indices as its first two + # columns. we'll have to manually make note of shape and directly + # specify it + index_csv = np.genfromtxt('index.csv', delimiter=',') + + index = {} + index['row'] = np.asarray(index_csv[:,0], dtype=int) + index['col'] = np.asarray(index_csv[:,1], dtype=int) + index['shape'] = (255,255) + + # convert from 1-based (MATLAB) indexing to 0-based (Python) indexing + index['row'] -= 1 + index['col'] -= 1 + + # do the conversion + dwdx, index = lentil.util.col_major_to_row_major(dwdx, index) + + See Also + -------- + * :func:`~lentil.sparse.v2m` Convert sparse vectorized data to a full matrix + * :func:`~lentil.sparse.m2v` Convert a full matrix to sparse vectorized data + + """ + + col_major_sens = np.asarray(col_major_sens) + + # handle 1-dim vectors + if col_major_sens.ndim == 1: + col_major_sens = col_major_sens[..., np.newaxis] + + # make row_major_index + mat = np.zeros(col_major_index['shape']) + nnz = len(col_major_index['row']) + for i in range(nnz): + mat[col_major_index['row'][i], col_major_index['col'][i]] = 1 + row_major_index = make_index(mat) + + row_major_sens = np.zeros(col_major_sens.shape) + + for i in range(col_major_sens.shape[1]): + m = v2m(col_major_sens[:, i], col_major_index) + row_major_sens[:, i] = m2v(m, row_major_index) + + return row_major_sens, row_major_index + + +def omega(f_number): + return np.pi*np.sin(np.arctan(1/(2*f_number)))**2 diff --git a/lentil/wavefront.py b/lentil/wavefront.py new file mode 100644 index 0000000..54cb5b8 --- /dev/null +++ b/lentil/wavefront.py @@ -0,0 +1,293 @@ +import copy +import numpy as np + +from lentil.fourier import dft2 + + +class Wavefront: + """A class representing a monochromatic wavefront. :class:`Wavefront` is + used internally by Lentil to perform diffraction propagation calculations. + + Parameters + ---------- + wavelength : float + Wavelength in meters + + shape : array_like + Wavefront shape + + pixelscale : float, optional + Wavefront array spatial sampling in meters/pixel + + Attributes + ---------- + focal_length : float or np.inf + Wavefront focal length. A plane wave (default) has an infinite focal + length (``np.inf``). + + tilt : list + List of objects which implement a ``shift`` method. This method should + accept the following parameters: + + ``shift(xs, ys, z, wavelength)`` + + and return an updated x and y shift. + + See Also + -------- + * :class:`Angle` + * :class:`Shift` + + """ + def __init__(self, wavelength, shape=None, pixelscale=None, planetype=None): + + self.wavelength = wavelength + self.pixelscale = pixelscale + self.planetype = planetype + + # All new Wavefront objects represent a perfect plane wave + if shape: + self.data = np.ones((1, shape[0], shape[1]), dtype=np.complex128) + else: + self.data = np.array([[1.]], dtype=np.complex128) + + # Wavefront focal length (which is infinity for a plane wave) + self.focal_length = np.inf + + self.tilt = [] # List of pre-propagation tilts + + def __str__(self): + return np.str(self.data) + + def __repr__(self): + name = self.__class__.__name__ + data = np.array2string(self.data, prefix=name + '(', separator=',') + return name + '(' + data + ')' + + def __imul__(self, other): + return other.__mul__(self) + + @property + def data(self): + return self._data + + @data.setter + def data(self, value): + self._data = np.asarray(value) + + @property + def shape(self): + """Wavefront array shape""" + return self.data.shape + + @property + def depth(self): + """Number of individual Wavefront arrays in :attr:`data`""" + return self.data.shape[0] + + @property + def planetype(self): + return self._planetype + + @planetype.setter + def planetype(self, value): + assert value in {'pupil', 'image', None} + self._planetype = value + + def shift(self, pixelscale, oversample): + """Compute image plane shift due to wavefront tilt. + + This is a somewhat tricky method. Fundamentally it iterates over the + :attr:`~lentil.Wavefront.tilt` list and computes the resulting shift in + terms of number of pixels in oversampled space. This calculation is + complicated by the fact that in some cases, an element in + :attr:`~lentil.Wavefront.tilt` will itself be a list. In this case, the + shift should be tracked individually for each entry in the list. All + ensuing calculations should be done in parallel (i.e. the + multi-dimensional shift array should not be recollapsed. This behavior + allows SegmentedPupil to handle segment tilts individually. + + Parameters + ---------- + pixelscale : float + Image plane spatial sampling in meters/pixel + + oversample : int + Oversampling factor + + Returns + ------- + shift : (depth, 2) ndarray + Image plane shift in number of (possibly oversampled) pixels + + """ + + # Example: + # tilt = [Shift(10,10), [Shift(100,100), Shift(200,200)], Shift(50,50)] + # Beginning shift = [0,0] + # After first tilt: + # shift = [10,10] + # After second tilt, shift is duplicated before each shift is applied: + # shift = [[110,110], [210,210]] + # All successive tilts are now applied in parallel: + # shift = [[160,160], [260,260]] + + shift = np.zeros((1, 2)) + + for tilt in self.tilt: + if isinstance(tilt, list): + + # Reshape the shift array. It should have shape (len(tilt), 2). + # If shift.shape is (1,2), we'll duplicate shift along the 0 + # axis so that it has shape (len(tilt),2). If shift.shape is + # anything else, we can assume that the above duplication has + # already happened so we'll just verify that the sizes have + # remained consistent. + if shift.shape[0] == 1: + shift = np.repeat(shift, len(tilt), axis=0) + else: + assert shift.shape[0] == len(tilt) + + # Now we can iterate over the tilts + for d, t in enumerate(tilt): + shift[d, 0], shift[d, 1] = t.shift(xs=shift[d, 0], + ys=shift[d, 1], + z=self.focal_length, + wavelength=self.wavelength) + else: + for d in np.arange(shift.shape[0]): + shift[d, 0], shift[d, 1] = tilt.shift(xs=shift[d, 0], + ys=shift[d, 1], + z=self.focal_length, + wavelength=self.wavelength) + + return (shift/pixelscale) * oversample + + def copy(self): + """Return a copy of the Wavefront object""" + return copy.deepcopy(self) + + def propagate_fft(self): + pass + + def propagate_ifft(self): + pass + + def propagate_dft(self, pixelscale, npix=None, oversample=2, shift=None): + """Fraunhofer propagation from Pupil to Image (Detector) plane using the + discrete Fourier transform. + + Parameters + ---------- + pixelscale : float + + npix : int or array_like, optional + + oversample : int, optional + + shift : list_like or None, optional + + """ + + npix = np.asarray(self.shape) if npix is None else np.asarray(npix) + + if npix.size == 1: + npix = np.append(npix, npix) + + npix = npix*oversample + + shift = np.zeros((self.depth, 2)) if shift is None else np.asarray(shift) + + if shift.ndim == 1: + shift = shift[np.newaxis, :] + + alpha = \ + (self.pixelscale*pixelscale)/(self.wavelength*self.focal_length*oversample) + + data = np.zeros((self.depth, npix[0], npix[1]), dtype=np.complex128) + + assert shift.shape[0] == self.depth, \ + 'Dimension mismatch between tilt and wavefront depth' + + for d in range(self.depth): + + data[d] = dft2(self.data[d], alpha, npix, shift[d]) + + self.data = data + + +class Angle: + """Object for representing wavefront tilt in terms of an angle + + Parameters + ---------- + x : float + x tilt in radians + + y : float + y tilt in radians + + """ + def __init__(self, x, y): + self.x = x + self.y = y + + def shift(self, xs=0, ys=0, z=0, **kwargs): + """Compute image plane shift due to this angular tilt + + Parameters + ---------- + xs : float + Incoming x shift in meters. Default is 0. + + ys : float + Incoming y shift in meters. Default is 0. + + z : float + Propagation distance + + Returns + ------- + shift : tuple + Updated x and y shift terms + + """ + x = xs + (z * self.x) + y = ys + (z * self.y) + return x, y + + +class Shift: + """Object for representing wavefront tilt in terms of a physical shift + + Parameters + ---------- + x : float + x shift in meters + + y : float + y shift in meters + + """ + def __init__(self, x, y): + self.x = x + self.y = y + + def shift(self, xs=0, ys=0, **kwargs): + """Compute image plane shift due to this wavefront shift + + Parameters + ---------- + xs : float + Incoming x shift in meters. Default is 0. + + ys : float + Incoming y shift in meters. Default is 0. + + Returns + ------- + shift : tuple + Updated x and y shift terms + + """ + return self.x + xs, self.y + ys diff --git a/lentil/wfe.py b/lentil/wfe.py new file mode 100644 index 0000000..343ca66 --- /dev/null +++ b/lentil/wfe.py @@ -0,0 +1,123 @@ +import numpy as np + +from lentil import util +from lentil import zernike + +__all__ = ['power_spectrum', 'translation_defocus'] + + +def power_spectrum(mask, pixelscale, rms, half_power_freq, exp, seed=None): + """Wavefront error defined by a Power Spectral Density (PSD) function. + + Parameters + ---------- + mask : array_like + Binary [0,1] mask defining pupil extent + + pixelscale : float + Physical size of each pixel in the resulting opd in meters. + + rms : float + RMS value of the PSD error in meters + + half_power_freq : float + Half-power frequency in number of cycles per pixel + + exp : float + Exponent of the inverse-power law + + seed : int, optional + Random seed used to initialize the pseudo-random number generator. If + :attr:`PowerSpectrumWFE.seed` is `None` (default), the seed will + be randomly generated from `/dev/urandom` if available or the clock. + + Returns + ------- + wfe : ndarray + Masked wavefront error with requested PSD + + References + ---------- + [1] Sidick (2009) Power Spectral Density Specification and Analysis of + Large Optical Surfaces + + """ + + mask = np.asarray(mask) + rng = np.random.RandomState(seed) + + # Define a frequency grid in units of cycles/px + n, m = mask.shape + yy, xx = np.mgrid[0:m, 0:n] + yy = (yy - (np.floor(m / 2) + 1)) / m + xx = (xx - (np.floor(n / 2) + 1)) / n + dr = np.sqrt(xx * xx + yy * yy) + + # Scale the half-power point in units of cycle/px + half_power_freq = half_power_freq * pixelscale / np.sqrt(m ** 2 + n ** 2) + + # Generate the PSD function and noise filter + psd = 1 / (1 + (dr / half_power_freq) ** exp) + psd[dr == 0] = 0 + psd = psd * rms ** 2 / np.sum(psd) + + H = np.fft.fftshift(np.sqrt(psd)) + + n, m = mask.shape + + # Generate noise, filter it to realize the requested PSD, and enforce + # the pupil mask + noise = rng.normal(size=[n, m]) + opd = np.real(np.fft.ifft2(np.fft.fft2(noise) * H)) * np.sqrt(m * n) + + return opd * mask + + +def translation_defocus(mask, f_number, translation): + """Defocus error characterized by a axial translation. + + Parameters + ---------- + mask : array_like + Binary [0,1] mask defining the pupil extent to compute the wavefront + over. + + f_number : float + System or beam f-number. + + translation : float + Axial translation from best focus given in the same units as the + resulting OPD. + + Returns + ------- + wfe : ndarray + Focus error due to axial translation + + Warning + ------- + Defocus is computed over a circular pupal defined by the maximum + horizontal or vertical extent of the supplied mask before applying the + mask. As a result, the RMS and peak-to-valley wavefront measurements + of the returned OPD will be different than what was requested for non- + circular masks. + + """ + mask = np.asarray(mask) + + rmin, rmax, cmin, cmax = util.boundary(mask) + extent = max(rmax-rmin, cmax-cmin) + + circlemask = util.circle(mask.shape, np.ceil(extent/2)) + + coeff = translation/(8*f_number**2) # p-v defocus + + z4 = zernike.zernike(circlemask, 4) + z4 = z4/(z4.max() - z4.min()) # normalize p-v = 1 + + return z4*mask*coeff + + +def kolmogorov_wfe(): + """Wavefront error representing a turbulent phase screen.""" + pass diff --git a/lentil/zernike.py b/lentil/zernike.py new file mode 100644 index 0000000..8a63843 --- /dev/null +++ b/lentil/zernike.py @@ -0,0 +1,407 @@ +from math import factorial + +import numpy as np + +from lentil import util + +__all__ = ['zernike', 'zernike_compose', 'zernike_fit', 'zernike_remove', + 'zernike_basis', 'zernike_coordinates'] + + +def zernike(mask, index, normalize=True, rho=None, theta=None): + """Compute the circular Zernike polynomial for a given mask. + + Parameters + ---------- + mask : array_like + Binary mask defining the extent to compute the Zernike polynomial + over. + + index : int + Noll Zernike index as defined in [1] + + normalize : bool, optional + If True (default), the output is normalized according to [1]. If False, + the output value ranges [-1, 1] over the mask. + + rho : array_like, optional + Radial coordinates of the mask array. :attr:`rho` should be 0 at the + origin and 1 at the edge of the circle. + + theta : array_like, optional + Angular coordinates of the mask array in radians. + + Returns + ------- + array_like + Circular Zernike polynomial computed over the given mask. + + Warning + ------- + Zernike polynomials are defined to be orthogonal on the unit circle. If + the supplied mask is non-circular, the Zernike polynomial is computed on an + outscribing circle and then cropped by the mask. Note that this operation + breaks the orthogonality of the Zernike polynomial. When working with a + non-circular mask, care must be taken to understand any side-effects of + using Zernike polynomials constructed in this manner. Any undesirable + side-effects can be mitigated by using Zernike polynomials that have + undergone Gram-Schmidt orthogonalization over the supplied mask. + + References + ---------- + [1] Noll, RJ. Zernike polynomials and atmospheric turbulence. J Opt Soc Am 66, 207-211 (1976). + + """ + mask = np.asarray(mask) + + if rho is None: + + rho, theta = zernike_coordinates(mask) + else: + if theta is None: + raise ValueError("Both rho and theta must be specified") + + m, n = zernike_index(index) + + if m == 0: + if n == 0: + Z = mask + else: + if normalize: + Z = np.sqrt(n+1) * R(m, n, rho) * mask + else: + Z = R(m, n, rho) * mask + + elif m > 0: + if normalize: + Z = np.sqrt(2) * np.sqrt(n+1) * R(m, n, rho) * np.cos(m*theta) * mask + else: + Z = R(m, n, rho) * np.cos(m*theta) * mask + + else: + if normalize: + Z = np.sqrt(2) * np.sqrt(n+1) * R(m, n, rho) * np.sin(m*theta) * mask + else: + Z = R(m, n, rho) * np.sin(m*theta) * mask + + return Z + + +def R(m, n, rho): + + m = int(np.abs(m)) + n = int(np.abs(n)) + + if (n - m) & 1: # odd + return 0 + else: + R = np.zeros(rho.shape) + for k in range(int(n-m)//2 + 1): + Rk = ((-1) ** k * factorial(n-k) / + (factorial(k) * factorial((n+m)/2-k) * factorial((n-m)/2-k))) + R += Rk * rho ** (n-2*k) + return R + + +def zernike_compose(mask, coeffs, normalize=True, rho=None, theta=None): + """Create an OPD based on the supplied Zernike coefficients. + + Parameters + ---------- + mask : array_like + Binary mask defining the extent to compute the Zernike polynomial over. + + coeffs : array_like + List of coefficients corresponding to Zernike indices (Noll ordering) + used to create the OPD. + + normalize : bool, optional + If True (default), the output is normalized according to [1]. If False, + the output value ranges [-1, 1] over the mask. + + rho : array_like, optional + Radial coordinates of the mask array. :attr:`rho` should be 0 at the + origin and 1 at the edge of the circle. + + theta : array_like, optional + Angular coordinates of the mask array in radians. + + Returns + ------- + ndarray + OPD + + Examples + -------- + Compute a random OPD using the first ten Zernikes: + + .. code:: pycon + + >>> import numpy as np + >>> import matplotlib.pyplot as plt + >>> import lentil + >>> mask = lentil.util.circlemask((256,256), 128) + >>> coeffs = np.random.rand(10)*1e-8 + >>> opd = lentil.zernike.zernike_compose(mask, coeffs) + >>> plt.imshow(opd) + + .. image:: ../_static/img/api/zernike/zernike_compose_1.png + :width: 300px + + Using the same mask, compute an OPD representing 200 nm focus error (Z4) and -100 nm + astigmatism error (Z6): + + .. code:: pycon + + >>> opd = mo.zernike.zernike_compose(mask, [0, 0, 0, 200e-9, 0, -100e-9]) + >>> plt.imshow(opd) + + .. image:: ../_static/img/api/zernike/zernike_compose_2.png + :width: 300px + + References + ---------- + [1] Noll, RJ. Zernike polynomials and atmospheric turbulence. J Opt Soc Am 66, 207-211 (1976). + + """ + mask = np.asarray(mask) + coeffs = np.asarray(coeffs) + opd = np.zeros(mask.shape) + + for index, coeff in np.ndenumerate(coeffs): + opd += coeff * zernike(mask, index[0]+1, normalize, rho, theta) + + return opd + + +def zernike_basis(mask, modes, vectorize=True, normalize=True, rho=None, theta=None): + """Compute a Zernike basis set for a given mask. + + Parameters + ---------- + mask : array_like + Binary mask defining the extent to compute the Zernike polynomial over. + + modes : array_like + List of modes (Noll ordering) to return. + + vectorize : bool, optional + If True (default), the output is returned as a + ``(length(modes), modes.shape[0]*modes.shape[1])`` array If False, + the output is returned as a + ``(length(terms), mask.shape[0], mask.shape[1])`` cube. + + normalize : bool, optional + If True (default), the output is normalized according to [1]. If False, + the output value ranges [-1, 1] over the mask. + + rho : array_like, optional + Radial coordinates of the mask array. :attr:`rho` should be 0 at the + origin and 1 at the edge of the circle. + + theta : array_like, optional + Angular coordinates of the mask array in radians. + + Returns + ------- + ndarray + Zernike basis set + + References + ---------- + [1] Noll, RJ. Zernike polynomials and atmospheric turbulence. J Opt Soc Am 66, 207-211 (1976). + + """ + modes = np.asarray(modes) + if modes.shape == (): + modes = modes[..., np.newaxis] + + mask = np.asarray(mask) + basis = np.zeros(modes.shape + mask.shape) + + for index, mode in np.ndenumerate(modes): + basis[index] = zernike(mask, mode, normalize, rho, theta) + + if vectorize: + # reshape basis from cube to matrix + return basis.reshape(basis.shape[0], -1) + else: + return basis + + +def zernike_fit(opd, mask, modes, normalize=True, rho=None, theta=None): + """Fit a Zernike basis set to an OPD. + + Parameters + ---------- + opd : array_like + OPD to fit. + + mask : array_like + Binary mask defining the extent to compute the Zernike basis over. + + modes : array_like + List of modes (Noll ordering) to fit. + + normalize : bool, optional + If True (default), the output is normalized according to [1]. If False, + the output value ranges [-1, 1] over the mask. + + rho : array_like, optional + Radial coordinates of the mask array. :attr:`rho` should be 0 at the + origin and 1 at the edge of the circle. + + theta : array_like, optional + Angular coordinates of the mask array in radians. + + Returns + ------- + ndarray + List of coefficients fit to the supplied OPD over the specified number + of Zernike modes. + + Example + ------- + .. code:: pycon + + >>> import numpy as np + >>> import lentil + >>> mask = lentil.util.circlemask((256,256),128) + >>> coeffs = np.random.rand(4)*100e-9 + >>> opd = lentil.zernike.zernike_compose(mask, coeffs) + >>> fit_coeffs = lentil.zernike.zernike_fit(opd, mask, np.arange(2,4)) + >>> print('Tip/tilt coefficients:', coeffs[1:3]) + >>> print('Fit tip/tilt coefficients:', fit_coeffs) + + Tip/tilt coefficients: [9.69097470e-08 9.94332699e-08] + Fit tip/tilt coefficients: [9.69545890e-08 9.94781119e-08] + + See Also + -------- + :func:`zernike_remove` Fit and remove a Zernike basis set from an OPD. + + References + ---------- + [1] Noll, RJ. Zernike polynomials and atmospheric turbulence. J Opt Soc Am 66, 207-211 (1976). + + """ + opd = np.asarray(opd) + mask = np.asarray(mask) + + basis = zernike_basis(mask, modes, True, normalize, rho, theta) + + basis = np.linalg.pinv(basis) + + return np.einsum('ij,i->j', basis, opd.ravel()) + + +def zernike_remove(opd, mask, modes, rho=None, theta=None): + """Fit and remove a Zernike basis set from an OPD. + + Parameters + ---------- + opd : array_like + OPD to fit. + + mask : array_like + Binary mask defining the extent to compute the Zernike basis over. + + modes : array_like + List of modes (Noll ordering) to remove. + + rho : array_like, optional + Radial coordinates of the mask array. :attr:`rho` should be 0 at the + origin and 1 at the edge of the circle. + + theta : array_like, optional + Angular coordinates of the mask array in radians. + + Returns + ------- + ndarray + Residual OPD after the specified Zernike modes have been fit and + removed. + + See Also + -------- + :func:`zernike_fit` + + References + ---------- + [1] Noll, RJ. Zernike polynomials and atmospheric turbulence. J Opt Soc Am 66, 207-211 (1976). + + """ + opd = np.asarray(opd) + mask = np.asarray(mask) + + coeffs = zernike_fit(opd, mask, modes, rho, theta) + fit_opd = zernike_compose(mask, coeffs, rho, theta) + + residual = opd - fit_opd + + return residual + + +def zernike_index(j): + """Convert a 1-D Noll index to a 2-D radiul and azimuthal index. + + Parameters + ---------- + j : int + Noll Zernike index. + + Returns + ------- + n : int + Radial Zernike index. + + m : int + Azimuthal Zernike index. + + """ + if j < 1: + raise ValueError('Zernike index j must be a positive integer') + + # find the row j is in + n = int(np.ceil((-1 + np.sqrt(1 + 8*j)) / 2) - 1) + if n == 0: + m = 0 + else: + # find where in the row j is + k = (n + 1) * (n + 2) / 2 + r = int(j - k - 1) + + if j & 1: # odd + sign = -1 + else: + sign = 1 + + if n & 1: # odd + row_m = [1, 1] + else: + row_m = [0] + + for i in range(int(np.floor(n / 2))): + row_m.append(row_m[-1] + 2) + row_m.append(row_m[-1]) + + m = row_m[r] * sign + + return m, n + + +def zernike_coordinates(mask, shift=(0, 0), rotate=0): + """Compute the Zernike coordinate system for a given mask.""" + + mask = np.asarray(mask) + + yy, xx = util.mesh(mask.shape, shift) + + r = np.abs(xx+1j*yy) + rho = r/np.max(r*mask) # rho is defined to be 1 on the edge of the aperture + + # there is a 90 degree offset since np.angle places 0 degrees up + angle = (90-rotate) * np.pi/180 + theta = np.angle(xx*np.exp(1j*angle) + 1j*yy*np.exp(1j*angle)) + + return rho, theta diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..da68b1b --- /dev/null +++ b/setup.cfg @@ -0,0 +1,26 @@ +[metadata] +name = Lentil +author = Andy Kee +url = https://lentil.readthedocs.io +project_urls = + Documentation = https://lentil.readthedocs.io + Code = https://github.com/andykee/lentil + Issue tracker = https://github.com/andykee/lentil/issues +license = BSD-3-Clause +description = Heart-healthy physical optics +long_description = file: README.rst +long_description_content_type = text/x-rst +classifiers = + Development Status :: 4 - Beta + Intended Audience :: Science/Research + License :: OSI Approved :: BSD License + Programming Language :: Python3 + Topic :: Scientific/Engineering :: Astronomy + Topic :: Scientific/Engineering :: Physics + +[options] +packages = lentil +include_package_data = true +python_requires = >= 3.7 +test_suite = tests +tests_require = pytest diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..ae41942 --- /dev/null +++ b/setup.py @@ -0,0 +1,15 @@ +import re + +from setuptools import setup + +with open('lentil/__init__.py') as f: + version = re.search("__version__ = '(.*?)'", f.read()).group(1) + +setup( + name='Lentil', + version=version, + install_requires=[ + 'numpy', + 'scipy' + ] +) diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/airy/__init__.py b/tests/airy/__init__.py new file mode 100644 index 0000000..b409914 --- /dev/null +++ b/tests/airy/__init__.py @@ -0,0 +1 @@ +from .airy import airy, airy2 diff --git a/tests/airy/airy.py b/tests/airy/airy.py new file mode 100644 index 0000000..17d050d --- /dev/null +++ b/tests/airy/airy.py @@ -0,0 +1,50 @@ +import numpy as np +from scipy import special + + +def airy(diameter, focal_length, wavelength, pixelscale, length, oversample=1): + # https://en.wikipedia.org/wiki/Airy_disk#Mathematical_Formulation + f_number = focal_length/diameter + length *= oversample + + c = (length-1)/2 + x = np.arange(length, dtype=np.float) + x -= c + + q = x * (pixelscale/oversample) + X = (np.pi*q)/(wavelength*f_number) + + # if length is odd, the center value will be zero which will throw a + # divide by zero error. To avoid this, we'll set any zeros to machine + # epsilon (eps) + X[X == 0] = np.finfo(X.dtype).eps + + return (2*special.jn(1, X)/X)**2 + + +def airy2(diameter, focal_length, wavelength, pixelscale, shape, oversample=1): + # https://en.wikipedia.org/wiki/Airy_disk#Mathematical_Formulation + + f_number = focal_length/diameter + + shape = np.asarray(shape) + shape *= oversample + + c = (shape-1)/2 + y, x = np.indices(shape, dtype=np.float) + + x -= c[1] + y -= c[0] + + x *= (pixelscale/oversample) + y *= (pixelscale/oversample) + + q = np.sqrt(x**2 + y**2) + X = (np.pi*q)/(wavelength*f_number) + + # if length is odd, the center value will be zero which will throw a + # divide by zero error. To avoid this, we'll set any zeros to machine + # epsilon (eps) + X[X == 0] = np.finfo(X.dtype).eps + + return (2*special.jn(1, X)/X)**2 diff --git a/tests/airy/test_airy.py b/tests/airy/test_airy.py new file mode 100644 index 0000000..3d9a121 --- /dev/null +++ b/tests/airy/test_airy.py @@ -0,0 +1,71 @@ +import numpy as np +from scipy import interpolate + +from tests.airy import airy, airy2 + + +def test_airy(): + diameter = 1 + focal_length = 10 + f_number = focal_length/diameter + wave = 650e-9 + pixelscale = 5e-6/1000 # divide by 1000 here to fake oversampling + length = 2**14 # an appropriately large number + oversample = 1 + + airy1 = airy(diameter, focal_length, wave, pixelscale, length, oversample) + + c = (length-1)/2 + x = np.arange(length, dtype=np.float) + x -= c + x *= pixelscale + + airy_interp = interpolate.interp1d(x, airy1) + + # TODO: move this in to the documentation and just point to that as a reference here + # derivation of airy FWHM expression + # ---------------------------------- + # the half-maximum of the central airy disk occurs at x_hwhm ~= 1.61633 [1] + # since x = (pi*q)/(wave*f_number), q = (x * wave * f_number)/pi where + # q is the radial distance from the optics axis in the observation + # (or focal) plane + # + # substituting in x_hwhm, + # q_hwhm = (1.61633/pi) * wave * f_number + # + # because we are more interested in FWHM, we multiply by 2 + # q_fwhm = 2*(1.61633/pi) * wave * f_number = 1.028987 * wave * f_number + # + # Refs: + # [1] https://en.wikipedia.org/wiki/Airy_disk#Mathematical_Formulation + + # verify the FWHM occurs at 1.029 * wave * f_number + j1_hwhm = 1.61633 + fwhm = 2*(j1_hwhm/np.pi)*wave*f_number # actual linear distance + assert(np.abs(airy_interp(fwhm/2) - 0.5) < 1e-5) + + # verify the first five zeros (as listed on Wikipedia) occur in the + # right places + j1_zeros = np.asarray([3.8317, 7.0156, 10.1735, 13.3237, 16.4706]) + for j1_zero in j1_zeros: + assert(airy_interp(j1_zero/np.pi * wave * f_number) < 1e-7) + + +def test_airy2(): + # evaluate the 2D Airy code against the 1D Airy code. since we've done + # some pretty exhaustive testing of the 1D Airy code, this simple + # comparison should be sufficient + + diameter = 1 + focal_length = 10 + wave = 650e-9 + pixelscale = 5e-6/10 # divide by 10 here to fake oversampling + npix = 511 + oversample = 1 + slice_index = npix//2 + + a1 = airy(diameter, focal_length, wave, pixelscale, npix, oversample) + a2 = airy2(diameter, focal_length, wave, pixelscale, (npix, npix), oversample) + + res = a2[:, slice_index] - a1 + assert(np.all(np.abs(res) < 1e-9)) diff --git a/tests/detector/test_detector_gain.py b/tests/detector/test_detector_gain.py new file mode 100644 index 0000000..90c0830 --- /dev/null +++ b/tests/detector/test_detector_gain.py @@ -0,0 +1,40 @@ +import numpy as np +import lentil + + +def test_saturation_capacity(): + gain = lentil.detector.Gain(gain=1, saturation_capacity=1) + img = 10 * np.ones((10, 10)) + assert np.array_equal(gain(img), np.ones((10, 10))) + + +def test_float_gain(): + g = np.random.uniform(size=1) + gain = lentil.detector.Gain(g, saturation_capacity=None) + img = 10*np.random.uniform(size=(10, 10)) + assert np.array_equal(gain(img), np.floor(g*img)) + + +def test_array_gain(): + g = np.random.uniform(size=(10, 10)) + gain = lentil.detector.Gain(g, saturation_capacity=None) + img = 10*np.random.uniform(size=(10, 10)) + assert np.array_equal(gain(img), np.floor(g*img)) + + +def test_nonlinear_gain(): + g = np.random.uniform(low=0.9, high=1.5, size=4) + gain = lentil.detector.PolynomialGain(g, saturation_capacity=None) + img = 10*np.ones((10, 10)) + assert np.isclose(gain(img)[0, 0], np.polyval(g, 10)) + + +def test_nonlinear_gain_cube(): + g = np.random.uniform(low=0.9, high=1.5, size=(10, 10, 4)) + gain = lentil.detector.PolynomialGain(g, saturation_capacity=None) + img = 10*np.ones((10, 10)) + index = np.random.uniform(low=0, high=9, size=2) + r = int(index[0]) + c = int(index[1]) + assert np.isclose(gain(img)[r, c], np.polyval(g[r, c, :], 10)) + diff --git a/tests/detector/test_windowable.py b/tests/detector/test_windowable.py new file mode 100644 index 0000000..2258d33 --- /dev/null +++ b/tests/detector/test_windowable.py @@ -0,0 +1,37 @@ +import pytest +import numpy as np + +from lentil.detector import Windowable + +data = np.diag(np.arange(1, 11)) +for i in np.diag(data): + data[i-1, i-1:] = data[i-1, i-1] + data[i-1:, i-1] = data[i-1, i-1] + +even = Windowable(data) +odd = Windowable(data[:-1, :-1]) + + +def test_even_window_shape(): + assert np.array_equal(even.window(shape=(2, 2)), np.array([[5, 5], [5, 6]])) + + +def test_even_window_window(): + assert np.array_equal(even.window(window=(0, 2, 0, 2)), np.array([[1, 1], [1, 2]])) + + +def test_odd_window_shape(): + assert np.array_equal(odd.window(shape=(2, 2)), np.array([[4, 4], [4, 5]])) + + +def test_odd_window_window(): + assert np.array_equal(odd.window(window=(0, 2, 0, 2)), np.array([[1, 1], [1, 2]])) + + +def test_window_shape_window(): + assert np.array_equal(even.window(shape=(2, 2), window=(8, 10, 8, 10)), np.array([[9, 9], [9, 10]])) + + +def test_window_shape_mismatch(): + with pytest.raises(AssertionError): + even.window(shape=(3, 3), window=(0, 2, 0, 2)) diff --git a/tests/fourier/test_fourier.py b/tests/fourier/test_fourier.py new file mode 100644 index 0000000..13deb24 --- /dev/null +++ b/tests/fourier/test_fourier.py @@ -0,0 +1,77 @@ +import numpy as np + +import lentil.fourier + + +def test_dft2_even(): + n = 10 + f = np.random.rand(n, n) + 1j * np.random.rand(n, n) + + F_dft = lentil.fourier.dft2(f, 1/n, unitary=False) + F_fft = np.fft.fftshift(np.fft.fft2(np.fft.ifftshift(f))) + + assert np.allclose(F_dft, F_fft) + + +def test_idft2_even(): + n = 10 + F = np.random.rand(n, n) + 1j * np.random.rand(n, n) + + f_dft = lentil.fourier.idft2(F, 1/n, unitary=False) + f_fft = np.fft.fftshift(np.fft.ifft2(np.fft.ifftshift(F))) + + assert np.allclose(f_dft, f_fft) + + +def test_dft2_odd(): + n = 11 + f = np.random.rand(n, n) + 1j * np.random.rand(n, n) + + F_dft = lentil.fourier.dft2(f, 1/n, unitary=False) + F_fft = np.fft.fftshift(np.fft.fft2(np.fft.ifftshift(f))) + + assert np.allclose(F_dft, F_fft) + + +def test_idft2_odd(): + n = 11 + F = np.random.rand(n, n) + 1j * np.random.rand(n, n) + + f_dft = lentil.fourier.idft2(F, 1/n, unitary=False) + f_fft = np.fft.fftshift(np.fft.ifft2(np.fft.ifftshift(F))) + + assert np.allclose(f_dft, f_fft) + + +def test_dft2_inverse(): + n = 10 + f = np.random.rand(n, n) + 1j * np.random.rand(n, n) + + F_dft = lentil.fourier.dft2(f, 1/n, unitary=False) + f_dft = lentil.fourier.idft2(F_dft, 1/n, unitary=False) + + assert np.allclose(f, f_dft) + + +def test_dft2_unitary(): + n = 10 + f = np.random.rand(n, n) + 1j * np.random.rand(n, n) + f_power = np.sum(np.abs(f)**2) + + F = lentil.fourier.dft2(f, 1/n, unitary=True) + F_power = np.sum(np.abs(F)**2) + + assert np.allclose(f_power, F_power) + + +def test_dft2_shift(): + n = 100 + shift = np.round(np.random.uniform(low=-25, high=25, size=2)) + f = np.ones((n, n)) + + F = lentil.fourier.dft2(f, 1/n, shift=shift) + + (xc, yc) = (np.floor(n/2), np.floor(n/2)) + (x, y) = lentil.util.centroid(np.abs(F)**2) + observed_shift = (x-xc, y-yc) + assert np.array_equal(shift, observed_shift) diff --git a/tests/fpa/test_fpa.py b/tests/fpa/test_fpa.py new file mode 100644 index 0000000..87d1427 --- /dev/null +++ b/tests/fpa/test_fpa.py @@ -0,0 +1,10 @@ +import numpy as np + +import lentil as le + + +def test_pixelate_unitary(): + + a = np.random.rand(100, 100) + b = le.FPA.pixelate(a, oversample=1) + assert np.isclose(np.sum(a), np.sum(b)) diff --git a/tests/modeltools/test_cached_property.py b/tests/modeltools/test_cached_property.py new file mode 100644 index 0000000..dfdedab --- /dev/null +++ b/tests/modeltools/test_cached_property.py @@ -0,0 +1,12 @@ +import lentil + + +def test_cached_property_no_cache(): + p = lentil.Pupil(diameter=1, focal_length=1, pixelscale=1, phase=5) + assert p.phase == 5 + + +def test_cached_property_cache(): + p = lentil.Pupil(diameter=1, focal_length=1, pixelscale=1, phase=5) + p.cache.set('phase', 12) + assert p.phase == 12 diff --git a/tests/modeltools/test_normalize_power.py b/tests/modeltools/test_normalize_power.py new file mode 100644 index 0000000..60c45ed --- /dev/null +++ b/tests/modeltools/test_normalize_power.py @@ -0,0 +1,16 @@ +import numpy as np +import lentil + +amp = lentil.util.circle((512, 512), 256) +# make sure we're not starting with an already normalized array! +assert np.sum(np.abs(amp)**2) != 1.0 + + +def test_normalize_power(): + amp_norm = lentil.modeltools.normalize_power(amp) + assert np.isclose(np.sum(np.abs(amp_norm)**2), 1.0) + + +def test_normalize_power_2(): + amp_norm = lentil.modeltools.normalize_power(amp, power=2) + assert np.isclose(np.sum(np.abs(amp_norm)**2), 2.0) diff --git a/tests/plane/test_plane.py b/tests/plane/test_plane.py new file mode 100644 index 0000000..cc932ba --- /dev/null +++ b/tests/plane/test_plane.py @@ -0,0 +1,34 @@ +import numpy as np + +import lentil +import lentil.wavefront + + +size = (10, 10) + + +class RandomPlane(lentil.Plane): + def __init__(self): + super().__init__(pixelscale=1, + amplitude=np.random.uniform(size=size), + phase=np.random.uniform(size=size)) + + +def test_default_plane(): + # Ensure that a default Plane creates an object that won't have any + # impact on an optical system (a perfect optic with no phase change and + # perfect optical and spectral transmission). + + p = lentil.Plane(pixelscale=1) + assert np.all(p.amplitude == 1) + assert np.all(p.phase == 0) + + +def test_wavefront_plane_multiply(): + p = RandomPlane() + w = lentil.wavefront.Wavefront(650e-9, p.shape) + + w1 = p.multiply(w) + phasor = p.amplitude * np.exp(1j*p.phase * 2 * np.pi / w.wavelength) + + assert np.array_equal(w1.data[0], phasor) diff --git a/tests/plane/test_pupil.py b/tests/plane/test_pupil.py new file mode 100644 index 0000000..76167ad --- /dev/null +++ b/tests/plane/test_pupil.py @@ -0,0 +1,24 @@ +import numpy as np + +import lentil +import lentil.wavefront + + +class CircularPupil(lentil.Pupil): + def __init__(self): + super().__init__(diameter=2, + focal_length=10, + pixelscale=2/256, + amplitude=lentil.util.circle((256, 256), 128), + phase=np.zeros((256, 256))) + + +def test_wavefront_pupil_multiply(): + p = CircularPupil() + w = lentil.wavefront.Wavefront(650e-9, shape=p.shape) + w = p.multiply(w) + phasor = p.amplitude * np.exp(1j*p.phase * 2 * np.pi / w.wavelength) + + assert np.array_equal(w.data[0], phasor) + assert w.planetype == 'pupil' + assert w.focal_length == p.focal_length diff --git a/tests/prop/test_propagate.py b/tests/prop/test_propagate.py new file mode 100644 index 0000000..2c2b3b4 --- /dev/null +++ b/tests/prop/test_propagate.py @@ -0,0 +1,213 @@ +import numpy as np +import lentil + +from tests.airy import airy2 + + +class TiltPupil(lentil.Pupil): + def __init__(self, npix, coeffs=None): + + amplitude = lentil.modeltools.normalize_power(lentil.util.circle((npix, npix), npix//2)) + mask = lentil.util.circlemask((npix, npix), npix//2) + + if coeffs is None: + coeffs = 5e-6 * np.random.uniform(low=-0.5, high=0.5, size=3) + coeffs[0] = 0 + + opd = lentil.zernike.zernike_compose(mask=mask, coeffs=coeffs) + + super().__init__(diameter=1, + focal_length=10, + pixelscale=1/npix, + amplitude=amplitude, + phase=opd, + mask=mask) + + self.coeffs = coeffs + + +class BasicDetector(lentil.Detector): + def __init__(self, pixelscale=5e-6, shape=(512, 512)): + super().__init__(pixelscale=pixelscale, shape=shape) + + +def test_amplitude_normalize_power(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf = lentil.propagate(planes, 650e-9, npix=(64, 64)) + assert (np.sum(psf) <= 1) and (np.sum(psf) >= 0.95) + + +def test_amplitude_normalize_power_oversample(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf = lentil.propagate(planes, 650e-9, npix=(64, 64), oversample=2, rebin=False) + assert (np.sum(psf) <= 1) and (np.sum(psf) >= 0.95) + + +def test_amplitude_normalize_power_oversample_rebin(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf = lentil.propagate(planes, 650e-9, npix=(64, 64), oversample=2, rebin=False) + assert (np.sum(psf) <= 1) and (np.sum(psf) >= 0.95) + + +def test_propagate_airy(): + # we set oversample = 1 and apply an "oversampling" factor of 25 to pixelscale + # so that we can more easily enforce an odd npix. having an odd npix enables + # comparison between numerical propagations via dft2() and the airy2() function + # since their DC pixels will be coincident. + p = TiltPupil(npix=512, coeffs=[0]) + d = BasicDetector(pixelscale=5e-6 / 25) + + airy = airy2(diameter=p.diameter, focal_length=p.focal_length, wavelength=650e-9, + pixelscale=d.pixelscale, shape=(511, 511), oversample=1) + airy = airy/np.max(airy) + + planes = [p, d] + psf = lentil.propagate(planes, wave=650e-9, npix=511, oversample=1) + psf = psf/np.max(psf) + + assert np.all(np.isclose(psf, airy, atol=1e-3)) + + +def test_propagate_tilt_angle_mono(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf_phase = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='phase') + psf_angle = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='angle') + + # threshold the PSFs so that the centroiding is consistent + psf_phase[psf_phase < 1e-5] = 0 + psf_angle[psf_angle < 1e-5] = 0 + + delta = np.abs(np.asarray(lentil.util.centroid(psf_phase)) - np.asarray(lentil.util.centroid(psf_angle))) + assert np.all(delta <= 1e-10) + + +def test_propagate_tilt_angle_poly(): + planes = [TiltPupil(npix=256), BasicDetector()] + wave = np.array([600e-9, 650e-9, 700e-9]) + psf_phase = lentil.propagate(planes, wave, npix=(128, 128), oversample=2, rebin=False, tilt='phase') + psf_angle = lentil.propagate(planes, wave, npix=(128, 128), oversample=2, rebin=False, tilt='angle') + + # threshold the PSFs so that the centroiding is consistent + psf_phase[psf_phase < 1e-5] = 0 + psf_angle[psf_angle < 1e-5] = 0 + + delta = np.abs(np.asarray(lentil.util.centroid(psf_phase)) - np.asarray(lentil.util.centroid(psf_angle))) + assert np.all(delta <= 1e-10) + + +def test_shape_invariance_propagate_phase(): + pupil_sm = TiltPupil(npix=256) + pupil_lg = TiltPupil(npix=512, coeffs=pupil_sm.coeffs) + + planes_sm = [pupil_sm, BasicDetector()] + psf_sm = lentil.propagate(planes_sm, 650e-9, npix=(64, 64), oversample=2, rebin=False, tilt='phase') + + planes_lg = [pupil_lg, BasicDetector()] + psf_lg = lentil.propagate(planes_lg, 650e-9, npix=(64, 64), oversample=2, rebin=False, tilt='phase') + + delta = np.abs(np.asarray(lentil.util.centroid(psf_sm)) - np.asarray(lentil.util.centroid(psf_lg))) + assert np.all(delta <= 0.1) # can't reliably do better than about 1/20th pixel so we''l score against 1/10th + + +def test_shape_invariance_propagate_angle(): + pupil_sm = TiltPupil(npix=256) + pupil_lg = TiltPupil(npix=512, coeffs=pupil_sm.coeffs) + + planes_sm = [pupil_sm, BasicDetector()] + psf_sm = lentil.propagate(planes_sm, 650e-9, npix=(512, 512), oversample=2, rebin=True, npix_chip=64, tilt='angle') + + planes_lg = [pupil_lg, BasicDetector()] + psf_lg = lentil.propagate(planes_lg, 650e-9, npix=(512, 512), oversample=2, rebin=True, npix_chip=64, tilt='angle') + + delta = np.abs(np.asarray(lentil.util.centroid(psf_sm)) - np.asarray(lentil.util.centroid(psf_lg))) + assert np.all(delta <= 0.5) # can't reliably do better than about 1/20th pixel so we''l score against 1/10th + + +def test_wavelength_invariance_propagate_phase(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf_650 = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='phase') + psf_900 = lentil.propagate(planes, 900e-9, npix=(128, 128), oversample=2, rebin=False, tilt='angle') + + psf_650 = psf_650/np.max(psf_650) + psf_900 = psf_900/np.max(psf_900) + + psf_650[psf_650 < 1e-2] = 0 + psf_900[psf_900 < 1e-2] = 0 + + delta = np.abs(np.asarray(lentil.util.centroid(psf_650)) - np.asarray(lentil.util.centroid(psf_900))) + assert np.all(delta <= 5e-2) # can't reliably do better than about 1/50th pixel so we''l score against 1/20th + + +def test_wavelength_invariance_propagate_angle(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf_650 = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='phase') + psf_900 = lentil.propagate(planes, 900e-9, npix=(128, 128), oversample=2, rebin=False, tilt='angle') + + psf_650 = psf_650/np.max(psf_650) + psf_900 = psf_900/np.max(psf_900) + + psf_650[psf_650 < 1e-2] = 0 + psf_900[psf_900 < 1e-2] = 0 + + delta = np.abs(np.asarray(lentil.util.centroid(psf_650)) - np.asarray(lentil.util.centroid(psf_900))) + assert np.all(delta <= 5e-2) + + +def test_propagate_tilt_phase_analytic(): + oversample = 10 + npix = np.array([64, 64]) + pupil = TiltPupil(npix=256) + detector = BasicDetector() + psf = lentil.propagate([pupil, detector], wave=650e-9, npix=npix, + oversample=oversample, rebin=False, tilt='phase') + psf = psf/np.max(psf) + psf[psf < 0.2] = 0 # threshold for centroiding + + center = npix//2 * oversample + centroid = np.asarray(lentil.util.centroid(psf)) + shift = centroid - center + + pupil_tilt = pupil.coeffs[1:3] + + # The factor of 4 gets you from RMS to PV + analytic_shift = -((pupil_tilt/pupil.diameter)*pupil.focal_length/detector.pixelscale) * oversample * 4 + + assert np.all((np.abs(shift - analytic_shift)/oversample) < 0.2) + + +def test_propagate_tilt_angle_analytic(): + oversample = 10 + npix = np.array([64, 64]) + pupil = TiltPupil(npix=256) + detector = BasicDetector() + psf = lentil.propagate([pupil, detector], wave=650e-9, npix=npix, + oversample=oversample, rebin=False, tilt='angle') + psf = psf/np.max(psf) + psf[psf < 0.2] = 0 # threshold for centroiding + + center = npix//2 * oversample + centroid = np.asarray(lentil.util.centroid(psf)) + shift = centroid - center + + pupil_tilt = pupil.coeffs[1:3] + + # The factor of 4 gets you from RMS to PV + analytic_shift = -((pupil_tilt/pupil.diameter)*pupil.focal_length/detector.pixelscale) * oversample * 4 + + assert np.all((np.abs(shift - analytic_shift)/oversample) < 0.2) + + +def test_propagate_tilt_angle_flatten(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf = lentil.propagate(planes, [650e-9, 700e-9], npix=(128, 128), rebin=False, tilt='angle', flatten=True) + psf_stack = lentil.propagate(planes, [650e-9, 700e-9], npix=(128, 128), rebin=False, tilt='angle', flatten=False) + + assert np.array_equal(psf, np.sum(psf_stack, axis=0)) + + +def test_propagate_tilt_phase_flatten(): + planes = [TiltPupil(npix=256), BasicDetector()] + psf = lentil.propagate(planes, [650e-9, 700e-9], npix=(128, 128), rebin=False, tilt='phase', flatten=True) + psf_stack = lentil.propagate(planes, [650e-9, 700e-9], npix=(128, 128), rebin=False, tilt='phase', flatten=False) + + assert np.array_equal(psf, np.sum(psf_stack, axis=0)) diff --git a/tests/prop/test_propagate_segmented.py b/tests/prop/test_propagate_segmented.py new file mode 100644 index 0000000..694f461 --- /dev/null +++ b/tests/prop/test_propagate_segmented.py @@ -0,0 +1,46 @@ +import numpy as np +import lentil + + +class SimpleSegmentedPupil(lentil.Pupil): + + def __init__(self, npix=256): + segmask1 = lentil.util.circlemask((npix, npix), 0.2 * npix, center=(-0.25 * npix, 0.2 * npix)) + segmask2 = lentil.util.circlemask((npix, npix), 0.2 * npix, center=(0.25 * npix, 0.2 * npix)) + segmask3 = lentil.util.circlemask((npix, npix), 0.2 * npix, center=(0, -0.2 * npix)) + segmask = np.stack((segmask1, segmask2, segmask3)) + mask = np.sum(segmask, axis=0) + + zern = np.random.uniform(-0.5, 0.5, size=2) * 2e-6 + seg_zern = np.random.uniform(-0.5, 0.5, size=6) * 4e-6 + + opdp = lentil.zernike.zernike_compose(mask, np.concatenate(([0], zern))) + opd1 = lentil.zernike.zernike_compose(segmask[0], np.concatenate(([0], seg_zern[0:2]))) + opd2 = lentil.zernike.zernike_compose(segmask[1], np.concatenate(([0], seg_zern[2:4]))) + opd3 = lentil.zernike.zernike_compose(segmask[2], np.concatenate(([0], seg_zern[4:6]))) + opd = opdp + opd1 + opd2 + opd3 + + super().__init__(diameter=1, focal_length=10, pixelscale=1/npix, + amplitude=lentil.modeltools.normalize_power(mask), phase=opd, + mask=mask, segmask=segmask) + + +class SimpleDetector(lentil.Detector): + def __init__(self, pixelscale=5e-6, shape=(256, 256)): + super().__init__(pixelscale, shape) + + +def test_propagate_tilt_angle_mono(): + planes = [SimpleSegmentedPupil(npix=256), SimpleDetector()] + psf_phase = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='phase') + psf_angle = lentil.propagate(planes, 650e-9, npix=(128, 128), oversample=2, rebin=False, tilt='angle') + + # Normalize and threshold the PSFs so that the centroiding is consistent + psf_phase /= np.max(psf_phase) + psf_phase[psf_phase < 0.2] = 0 + + psf_angle /= np.max(psf_angle) + psf_angle[psf_angle < 0.2] = 0 + + delta = np.abs(np.asarray(lentil.util.centroid(psf_phase)) - np.asarray(lentil.util.centroid(psf_angle))) + assert np.all(delta <= 0.2) diff --git a/tests/radiometry/test_blackbody.py b/tests/radiometry/test_blackbody.py new file mode 100644 index 0000000..c9b7f64 --- /dev/null +++ b/tests/radiometry/test_blackbody.py @@ -0,0 +1,32 @@ +import numpy as np + +import lentil + + +def test_blackbody_planck_radiance(): + b = lentil.radiometry.Blackbody(wave=np.arange(500, 5000), temp=3000, waveunit='nm', + valueunit='photlam') + + planck_radiance = lentil.radiometry.planck_radiance(wave=np.arange(500, 5000), + temp=3000, waveunit='nm', + valueunit='photlam') + + assert np.array_equal(b.value, planck_radiance) + + +def test_blackbody_add(): + b = lentil.radiometry.Blackbody(wave=np.arange(500, 5000), temp=3000, waveunit='nm', + valueunit='wlam') + r = b + 10 + assert isinstance(r, lentil.radiometry.Spectrum) + assert not isinstance(r, lentil.radiometry.Blackbody) + assert np.array_equal(r.value, b.value + 10) + + +def test_blackbody_mul(): + b = lentil.radiometry.Blackbody(wave=np.arange(500, 5000), temp=3000, waveunit='nm', + valueunit='photlam') + r = b * 3 + assert isinstance(r, lentil.radiometry.Spectrum) + assert not isinstance(r, lentil.radiometry.Blackbody) + assert np.array_equal(r.value, b.value * 3) diff --git a/tests/radiometry/test_spectrum.py b/tests/radiometry/test_spectrum.py new file mode 100644 index 0000000..9dca42f --- /dev/null +++ b/tests/radiometry/test_spectrum.py @@ -0,0 +1,185 @@ +import pytest +import numpy as np + +from lentil.radiometry import Spectrum + + +def test_spectrum_wave_value_shape_match(): + wave = [1, 2, 3] + value = [4, 5, 6, 7] + with pytest.raises(ValueError): + s = Spectrum(wave, value) + + +def test_spectrum_add_scalar(): + s = Spectrum([1, 2, 3], [1, 1, 1]) + r = s + 5 + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [6, 6, 6]) + + +def test_spectrum_add_spectrum(): + s1 = Spectrum([1, 2, 3], [1, 1, 1]) + s2 = Spectrum([1, 2, 3], [2, 3, 4]) + r = s1 + s2 + assert np.array_equal(r.wave, s1.wave) + assert np.array_equal(r.value, [3, 4, 5]) + + +def test_spectrum_add_array(): + s = Spectrum([1, 2, 3], [1, 1, 1]) + r = s + [5, 6, 7] + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [6, 7, 8]) + + +def test_spectrum_subtract_scalar(): + s = Spectrum([1, 2, 3], [3, 3, 3]) + r = s - 2 + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [1, 1, 1]) + + +def test_spectrum_subtract_spectrum(): + s1 = Spectrum([1, 2, 3], [2, 3, 4]) + s2 = Spectrum([1, 2, 3], [1, 1, 1]) + r = s1 - s2 + assert np.array_equal(r.wave, s1.wave) + assert np.array_equal(r.value, [1, 2, 3]) + + +def test_spectrum_subtract_array(): + s = Spectrum([1, 2, 3], [5, 6, 7]) + r = s - [1, 1, 1] + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [4, 5, 6]) + + +def test_spectrum_mul_scalar(): + s = Spectrum([1, 2, 3], [1, 2, 3]) + r = s * 5 + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [5, 10, 15]) + + +def test_spectrum_mul_spectrum(): + s1 = Spectrum([1, 2, 3], [2, 2, 2]) + s2 = Spectrum([1, 2, 3], [2, 3, 4]) + r = s1 * s2 + assert np.array_equal(r.wave, s1.wave) + assert np.array_equal(r.value, [4, 6, 8]) + + +def test_spectrum_mul_array(): + s = Spectrum([1, 2, 3], [2, 2, 2]) + r = s * [5, 6, 7] + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [10, 12, 14]) + + +def test_spectrum_truediv_scalar(): + s = Spectrum([5, 10, 15], [5, 10, 15]) + r = s / 5 + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [1, 2, 3]) + + +def test_spectrum_truediv_spectrum(): + s1 = Spectrum([1, 2, 3], [4, 6, 8]) + s2 = Spectrum([1, 2, 3], [2, 3, 4]) + r = s1 / s2 + assert np.array_equal(r.wave, s1.wave) + assert np.array_equal(r.value, [2, 2, 2]) + + +def test_spectrum_truediv_array(): + s = Spectrum([1, 2, 3], [10, 12, 14]) + r = s / [5, 6, 7] + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [2, 2, 2]) + + +def test_spectrum_rmul_scalar(): + s = Spectrum([1, 2, 3], [1, 2, 3]) + r = 5 * s + assert np.array_equal(r.wave, s.wave) + assert np.array_equal(r.value, [5, 10, 15]) + + +def test_spectrum_pow(): + s = Spectrum([1, 2, 3], [2, 3, 4]) + r = s**2 + assert(np.array_equal(r.wave, s.wave)) + assert(np.array_equal(r.value, s.value**2)) + + +def test_spectrum_sample(): + s = Spectrum([1, 2, 3], [2, 3, 4]) + r = s.sample([1.5, 2.5]) + assert np.array_equal(r, [2.5, 3.5]) + + +def test_spectrum_resample(): + s = Spectrum([1, 2, 3], [2, 3, 4]) + s.resample([1.5, 2.5]) + assert np.array_equal(s.wave, [1.5, 2.5]) + assert np.array_equal(s.value, [2.5, 3.5]) + + +def test_spectrum_asarray(): + s = Spectrum([1, 2, 3], [2, 3, 4]) + r = s.asarray() + assert np.array_equal(r, np.array([[1, 2, 3], [2, 3, 4]])) + + +def test_spectrum_bin_preserve_power_true(): + s = Spectrum([1, 2, 3, 4, 5], [2, 2, 2, 2, 2]) + assert np.array_equal(s.bin([2, 3]), [0.5, 1.5]) + + +def test_spectrum_bin_preserve_power_false(): + s = Spectrum([1, 2, 3, 4, 5], [2, 2, 2, 2, 2]) + assert np.array_equal(s.bin([2, 3], preserve_power=False), [1, 3]) + + +def test_spectrum_integrate_no_bounds(): + s = Spectrum([1, 2, 3, 4, 5], [2, 2, 2, 2, 2]) + assert s.integrate() == 8.0 + + +def test_spectrum_integrate_bounds(): + s = Spectrum([1, 2, 3, 4, 5], [2, 2, 2, 2, 2]) + assert s.integrate(2, 4) == 4.0 + + +def test_spectrum_ends(): + s = Spectrum([1, 2, 3, 4, 5], [0.1, 1, 100, 1, 0.1]) + assert np.array_equal(s.ends(tol=0.001), [1, 3]) + + +def test_spectrum_trim(): + s = Spectrum([1, 2, 3, 4, 5], [0.1, 1, 100, 1, 0.1]) + s.trim(tol=0.001) + assert np.array_equal(s.wave, [2, 3, 4]) + assert np.array_equal(s.value, [1, 100, 1]) + + +def test_spectrum_trim_value_all_zeros(): + s = Spectrum([1, 2, 3, 4, 5], [0, 0, 0, 0, 0]) + s.trim(tol=0.0001) + assert np.array_equal(s.wave, [1, 2, 3, 4, 5]) + assert np.array_equal(s.value, [0, 0, 0, 0, 0]) + + +def test_spectrum_crop(): + s = Spectrum([1, 2, 3, 4, 5], [0.1, 1, 100, 1, 0.1]) + s.crop(2, 5) + assert np.array_equal(s.wave, [2, 3, 4, 5]) + assert np.array_equal(s.value, [1, 100, 1, 0.1]) + + +def test_spectrum_crop_outside_wave_limits(): + s = Spectrum([1, 2, 3, 4, 5], [0.1, 1, 100, 1, 0.1]) + s.crop(2, 10) + assert np.array_equal(s.wave, [2, 3, 4, 5]) + assert np.array_equal(s.value, [1, 100, 1, 0.1]) diff --git a/tests/util/test_util.py b/tests/util/test_util.py new file mode 100644 index 0000000..c9f3d9d --- /dev/null +++ b/tests/util/test_util.py @@ -0,0 +1,28 @@ +import numpy as np +import scipy + +from lentil.util import * + + +def test_rebin(): + img = np.array([[1, 1, 2, 2], [1, 1, 2, 2], [3, 3, 4, 4], [3, 3, 4, 4]]) + factor = 2 + img_rebinned = rebin(img, factor) + assert np.array_equal(img_rebinned, np.array([[4, 8], [12, 16]])) + + +def test_rebin_cube(): + img = np.zeros((2, 4, 4)) + img[0] = np.array([[1, 1, 2, 2], [1, 1, 2, 2], [3, 3, 4, 4], [3, 3, 4, 4]]) + img[1] = np.array([[2, 2, 4, 4], [2, 2, 4, 4], [6, 6, 8, 8], [6, 6, 8, 8]]) + factor = 2 + img_rebinned = rebin(img, factor) + img_rebinned_expected = np.zeros((2, 2, 2)) + img_rebinned_expected[0] = np.array([[4, 8], [12, 16]]) + img_rebinned_expected[1] = np.array([[8, 16], [24, 32]]) + assert np.array_equal(img_rebinned, img_rebinned_expected) + + +def test_mesh_nonsquare(): + xx, yy = mesh((256, 512)) + assert xx.shape == (256, 512) diff --git a/tests/wavefront/test_wavefront.py b/tests/wavefront/test_wavefront.py new file mode 100644 index 0000000..1b70064 --- /dev/null +++ b/tests/wavefront/test_wavefront.py @@ -0,0 +1,255 @@ +import numpy as np + +from lentil.wavefront import Wavefront +from lentil.util import centroid, circle +from tests.airy import airy2 + + +diameter = 1 +focal_length = 10 +pupil_pixelscale = diameter/512 +amplitude = circle((512, 512), 256) +wavelength = 650e-9 + +image_pixelscale = 5e-6 +npix = 128 +oversample = 10 + + +def test_propagate_dft_airy(): + + # we set oversample = 1 and apply an "oversampling" factor of 25 to pixelscale + # so that we can more easily enforce an odd npix. having an odd npix enables + # comparison between numerical propagations via dft2() and the airy2() function + # since their DC pixels will be coincident. + image_pixelscale = 5e-6/25 + npix = 511 + oversample = 1 + + # numerical result + w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) + w.data *= amplitude + w.focal_length = focal_length + w.propagate_dft(image_pixelscale, npix, oversample) + psf = np.abs(w.data[0])**2 + psf = psf/np.max(psf) + + # analytical result + airy = airy2(diameter, focal_length, wavelength, image_pixelscale, (npix, npix), oversample) + airy = airy/np.max(airy) + + assert np.all(np.isclose(psf, airy, atol=1e-3)) + + +def test_propagate_dft_shift(): + shift = np.random.uniform(low=-25, high=25, size=2) + w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) + w.data *= amplitude + w.focal_length = focal_length + w.propagate_dft(image_pixelscale, npix, oversample, shift) + + psf = np.abs(w.data[0])**2 + psf = psf/np.max(psf) + + psf[psf < 1e-2] = 0 + + center = np.array([(npix*oversample)//2, (npix*oversample)//2]) + psf_centroid = np.asarray(centroid(psf)) + psf_shift = psf_centroid - center + + assert np.all(np.isclose(shift, psf_shift, atol=1e-2)) + +# TODO: get rid of these unused (and covered in test_propagate) tests +# def test_propagate_dft_int_shift(): +# shift = np.random.randint(low=-100, high=100, size=2) +# shift_m = shift * (image_pixelscale/oversample) +# +# w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) +# w.data *= amplitude +# w.focal_length = focal_length +# w.tilt = [Shift(x=shift_m[0], y=shift_m[1])] +# w.propagate_dft(image_pixelscale, npix, oversample) +# +# psf = np.abs(w.data[0])**2 +# psf = psf/np.max(psf) +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift = psf_centroid - center +# +# assert np.all(psf_shift < 1e-8) +# assert np.all(np.equal(shift, w.shift)) +# +# +# def test_propagate_dft_float_shift(): +# shift = np.random.uniform(low=-100, high=100, size=2) +# shift_m = shift * (image_pixelscale/oversample) +# +# w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) +# w.data *= amplitude +# w.focal_length = focal_length +# w.tilt = [Shift(x=shift_m[0], y=shift_m[1])] +# w.propagate_dft(image_pixelscale, npix, oversample) +# +# psf = np.abs(w.data[0])**2 +# psf = psf/np.max(psf) +# +# fix_shift = np.fix(shift) +# res_shift = shift - fix_shift +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_shifted_center = center + res_shift +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift_error = psf_centroid - psf_shifted_center +# +# assert np.all(psf_shift_error < 1e-3) +# assert np.all(np.equal(fix_shift, w.shift)) +# +# +# def test_propagate_dft_angle(): +# shift = np.random.uniform(low=-100, high=100, size=2) +# angle = shift * (image_pixelscale/oversample) / focal_length +# +# w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) +# w.data *= amplitude +# w.focal_length = focal_length +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft(image_pixelscale, npix, oversample) +# +# psf = np.abs(w.data[0])**2 +# psf = psf/np.max(psf) +# +# fix_shift = np.fix(shift) +# res_shift = shift - fix_shift +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_shifted_center = center + res_shift +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift_error = psf_centroid - psf_shifted_center +# +# assert np.all(psf_shift_error < 1e-3) +# assert np.all(np.equal(fix_shift, w.shift)) + + +# def test_propagate_dft_shift(): +# shift = np.random.uniform(low=-100, high=100, size=2) +# angle = (shift*pupil_pixelscale)/focal_length +# +# # propagate_dft result +# w = Wavefront(wavelength, shape=amplitude.shape, pixelscale=pupil_pixelscale) +# w.data *= amplitude +# w.focal_length = focal_length +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft(image_pixelscale, npix, oversample) +# psf = np.abs(w.data[0])**2 +# psf = psf/np.max(psf) +# +# # threshold the PSF so that the centroid calculation makes sense +# psf[psf < 0.5] = 0 +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift = psf_centroid - center +# assert np.all(np.isclose(shift, psf_shift, atol=0.1)) +# +# +# def test_propagate_dft_coarse_int_shift(): +# shift = np.round(np.random.uniform(low=-100, high=100, size=2)) +# angle = (shift*pixelscale)/p.focal_length +# +# # propagate_dft_coarse result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft_coarse(pixelscale, npix, npix, oversample) +# psf = np.abs(w.data)**2 +# psf = psf/np.max(psf) +# +# # threshold the PSF so that the centroid calculation makes sense +# psf[psf < 0.5] = 0 +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift = psf_centroid - center +# assert np.all(np.isclose(shift, psf_shift, atol=0.1)) +# +# +# def test_propagate_dft_coarse_float_shift(): +# shift = np.random.uniform(low=-100, high=100, size=2) +# angle = (shift*pixelscale)/p.focal_length +# +# # propagate_dft_coarse result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft_coarse(pixelscale, npix, npix, oversample) +# psf = np.abs(w.data)**2 +# psf = psf/np.max(psf) +# +# # threshold the PSF so that the centroid calculation makes sense +# psf[psf < 0.5] = 0 +# +# center = np.array([(npix*oversample)//2, (npix*oversample)//2]) +# psf_centroid = np.asarray(centroid(psf)) +# psf_shift = psf_centroid - center +# assert np.all(np.isclose(shift, psf_shift, atol=0.1)) +# +# +# def test_propagate_dft_coarse_huge_shift(): +# # A shift so large the chip falls entirely out of the desired area +# shift = np.asarray([20000, 20000]) +# angle = (shift*pixelscale)/p.focal_length +# +# psf = np.zeros([npix, npix], dtype=np.complex128) +# +# # propagate_dft_coarse result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft_coarse(pixelscale, npix, npix, oversample) +# psf_coarse = np.abs(w.data)**2 +# # This should return zeros so top avoid a divide by zero warning, we won't normalize +# +# assert np.all(np.isclose(psf, psf_coarse, atol=5e-4)) +# +# +# def test_propagate_dft_vs_propagate_dft_coarse_no_shift(): +# +# # propagate_dft result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.propagate_dft(pixelscale, npix, oversample) +# psf = np.abs(w.data)**2 +# psf = psf/np.max(psf) +# +# # propagate_dft_coarse result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.propagate_dft_coarse(pixelscale, npix, npix, oversample) +# psf_coarse = np.abs(w.data)**2 +# psf_coarse = psf_coarse/np.max(psf_coarse) +# +# assert np.all(np.isclose(psf, psf_coarse, atol=5e-4)) +# +# +# def test_propagate_dft_vs_propagate_dft_coarse_shift(): +# shift = np.random.uniform(low=-100, high=100, size=2) +# angle = (shift*pixelscale)/p.focal_length +# +# # propagate_dft result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft(pixelscale, npix, oversample) +# psf = np.abs(w.data)**2 +# psf = psf/np.max(psf) +# +# # propagate_dft_coarse result +# w = Wavefront(wavelength, shape=p.shape, pixelscale=p.pixelscale) +# w = p.multiply(w) +# w.tilt = [Angle(x=angle[0], y=angle[1])] +# w.propagate_dft_coarse(pixelscale, npix, npix, oversample) +# psf_coarse = np.abs(w.data)**2 +# psf_coarse = psf_coarse/np.max(psf_coarse) +# +# assert np.all(np.isclose(psf, psf_coarse, atol=5e-4))

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 Bxi|m- literal 0 HcmV?d00001 diff --git a/docs/_static/img/black_box.png b/docs/_static/img/black_box.png new file mode 100644 index 0000000000000000000000000000000000000000..aa76fbf917ceb75090cfbb9f6dc9c94ddec197f3 GIT binary patch literal 27908 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 UFqhN&MZQeWTAe99?Q#460DWo*761SM literal 0 HcmV?d00001 diff --git a/docs/_static/img/circle_amplitude.png b/docs/_static/img/circle_amplitude.png new file mode 100644 index 0000000000000000000000000000000000000000..aa7a307b7b7077c425d10292183e56672e4533ab GIT binary patch literal 17455 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 D(&Y1` literal 0 HcmV?d00001 diff --git a/docs/_static/img/circle_focus.png b/docs/_static/img/circle_focus.png new file mode 100644 index 0000000000000000000000000000000000000000..93213ed1466f7a734d93bb52fe1531942abda791 GIT binary patch literal 66881 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 literal 0 HcmV?d00001 diff --git a/docs/_static/img/circle_mask.png b/docs/_static/img/circle_mask.png new file mode 100644 index 0000000000000000000000000000000000000000..ffadde2f95e283e6dd761b9791db10c97814fb84 GIT binary patch literal 10962 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 KboMFRJO2fu-Po%D literal 0 HcmV?d00001 diff --git a/docs/_static/img/detector_model.png b/docs/_static/img/detector_model.png new file mode 100644 index 0000000000000000000000000000000000000000..ca4ace9a8105af40e9d68a7fb85be3acccd5c5b0 GIT binary patch literal 54568 zcmeFZcR1T!+&D~iTTNS4yXCG`tJGdq)LpYmj3TJjBGiaIt3_+IwRh2?iB)QoXwAk5 zRWl?tV+TPHz3Q9f&>65@aLKni0QBhr?x~ryQ=##NDP8%)cAH=nRZ>&uzy3ktf%6aSQ)O**b z$2&l7mIBY4+GAa8EAUbG|P<*pJ+nGDCSB%tvlp1X`X^T%`xCO#u%a z8_y%RpC3IChOs)ajb(>Q9H7IzY1HOla^&VBj-_lN2Fos zFk{OaD7}#XZuQLdym(|=5RNvT0b9Wpl(b(>V)w8A`jL4HpC4=nypvC~bUbKF)tGy# zH#{`L{bzx6sZ0M5xz_<(l(nV^TGIfaT|C%~+}^2jFWsv{mWIS`w?%FbB1@lT?YQzx zGHwN4^L%FGdMLB?rQe^A`#=YqV|-w%7T|z4zOAQIA965%gxq#(uR7Q!B~p;jp9xmRQ-?B+7E^i}Nc!;dk_SaM?D)!4>y z!Z0m`5MQ~!ZcwGq7l<5g%U%Q~-+)?-ldXYi3ly{!&)yvxV0oE)bvsAG{A>8>q@4fr zOf@HIt@+Q3w?oeaj==djLLe9NkNx zFv(_j&s6oEyGgY2SC5ZT?A}Av4Q|V>&eojp-U+efHCy}WX3wn74Tzhre>~RxTh7cc zw!O`JCNMFzLdx}0G_2KWZg_I|r3%oDVbx;v7T9ak{NT{>^JFGdA{`$~iNaSgTuFj; zZ+-6V8Q#p<9ZTD5T@(({DJkvsy`B7t*|+I*4*)v|j3$VG|7>X7huc&R^5(+v0eJO^ zV^;ONBa%>Asxp6RmPY{{SEhVVGI%fNT)kK$kT>dC1sWc!gddyNX{O+$gd~3B&0($S z;}=hNf3UvcxECRR&dcSXH2BibVlQ^>%gBE7Bx?rOY5Y`fn*MYv4ncRLYT3x`6&QABhiKg=yjqv& z#k+IRS*KW(loRB(s}wO`u9)u2M0Km$^Sz)QGnnvw>fy*8UnB*BH)i++K!l2&X5FNc z>WgaixhJf*8hYAsolj=uWpOuse2wdW$YX9Q_@*+y$aZ+LHXeZK=WeNm-|gwly+z