physicaloptix
Copyright (c) 2026 Corey Spohn, released under the MIT License (see LICENSE).

Third-party notices
===================

PROPER
------
Parts of physicaloptix are ports of routines from the PROPER optical propagation
library (John Krist, Jet Propulsion Laboratory; Python translation by Navtej Saini,
with Luis Marchen and Nikta Amiri):

- physicaloptix/instruments/_proper_ops.py: ellipse_mask (from prop_ellipse),
  cubic_conv_weights and resample_map (the prop_cubic_conv edge rule),
  szoom_weights (from prop_szoom_c).
- physicaloptix/instruments/_proper_beam.py: the pilot-beam schedule and its
  operations (from prop_propagate, prop_lens, prop_ptp, prop_stw and prop_wts).

PROPER carries the following notice, reproduced as its terms require:


© 2006-2019. California Institute of Technology ("Caltech").  This
software, including source and object code, and any accompanying documentation
("Software") is owned by Caltech.  Caltech has designated this Software as
Technology and Software Publicly Available ("TSPA"), which means that this
Software is publicly available under U.S. Export Laws. With the TSPA
designation, a user may use and distribute the Software on a royalty-free basis
with the understanding that:

(1)   THIS SOFTWARE AND ANY RELATED MATERIALS WERE CREATED BY THE CALIFORNIA
INSTITUTE OF TECHNOLOGY (CALTECH) UNDER A U.S. GOVERNMENT CONTRACT WITH THE
NATIONAL AERONAUTICS AND SPACE ADMINISTRATION (NASA). THE SOFTWARE IS
TECHNOLOGY AND SOFTWARE PUBLICLY AVAILABLE UNDER U.S. EXPORT LAWS AND IS
PROVIDED "AS-IS" TO THE RECIPIENT WITHOUT WARRANTY OF ANY KIND, INCLUDING ANY
WARRANTIES OF PERFORMANCE OR MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE OR
PURPOSE (AS SET FORTH IN UNITED STATES UCC §2312-§2313) OR FOR ANY PURPOSE
WHATSOEVER, FOR THE SOFTWARE AND RELATED MATERIALS, HOWEVER USED.

IN NO EVENT SHALL CALTECH, ITS JET PROPULSION LABORATORY, OR NASA BE LIABLE FOR
ANY DAMAGES AND/OR COSTS, INCLUDING, BUT NOT LIMITED TO, INCIDENTAL OR
CONSEQUENTIAL DAMAGES OF ANY KIND, INCLUDING ECONOMIC DAMAGE OR INJURY TO
PROPERTY AND LOST PROFITS, REGARDLESS OF WHETHER CALTECH, JPL, OR NASA BE
ADVISED, HAVE REASON TO KNOW, OR, IN FACT, SHALL KNOW OF THE POSSIBILITY.

RECIPIENT BEARS ALL RISK RELATING TO QUALITY AND PERFORMANCE OF THE SOFTWARE
AND ANY RELATED MATERIALS, AND AGREES TO INDEMNIFY CALTECH AND NASA FOR ALL
THIRD-PARTY CLAIMS RESULTING FROM THE ACTIONS OF RECIPIENT IN THE USE OF THE
SOFTWARE; and

(2)  Caltech is under no obligation to provide technical support for the
Software; and

(3)   all copies of the Software released by user must be marked with this
marking language, inclusive of the copyright statement, TSPA designation and
user understandings.

(4) License for the Python wrapper for Intel MKL FFT routines (https://github.com/LCAV/mkl_fft)

Copyright (c) 2016 Ivan Dokmanić, Robin Scheibler

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



Roman Preflight PROPER prescription
-----------------------------------
The Roman Coronagraph models in physicaloptix/instruments/roman.py and
roman_full.py, and the prescription helpers in _proper_ops.py (ffts, mft2,
noll_z6), follow the public version of the Roman Preflight PROPER prescription
(roman_preflight_proper, John Krist; Copyright 2019-2026 California Institute of
Technology). That prescription is distributed publicly by the Roman Coronagraph
team. No prescription source files or data files are included in physicaloptix;
the models take the prescription's masks, maps and DM data as inputs supplied by
the user.
