.gitignore
.pre-commit-config.yaml
.readthedocs.yml
CHANGES.rst
CITATION.cff
MANIFEST.in
README.rst
pyproject.toml
setup.cfg
setup.py
tox.ini
.github/dependabot.yml
.github/workflows/ci_cron_weekly.yml
.github/workflows/ci_tests.yml
.github/workflows/publish.yml
docs/Makefile
docs/conf.py
docs/index.rst
docs/make.bat
docs/refs.bib
docs/_static/example.ecsv
docs/_static/example.gif
docs/_static/css/risk_table.css
docs/design/index.rst
docs/design/milp.rst
docs/dev/changes.rst
docs/dev/contributing.rst
docs/dev/index.rst
docs/dev/npr7150.rst
docs/dev/related.rst
docs/dev/testing.rst
docs/guide/cli.rst
docs/guide/constraints.rst
docs/guide/dynamics.rst
docs/guide/fov.rst
docs/guide/index.rst
docs/guide/milp.rst
docs/guide/missions.rst
docs/guide/observer.rst
docs/guide/skygrid.rst
docs/guide/synphot.rst
docs/guide/utils.rst
docs/install/cplex.rst
docs/install/deploy.rst
docs/install/gurobi.rst
docs/install/index.rst
docs/scenarios/dorado.rst
docs/scenarios/index.rst
docs/scenarios/sedmachine.rst
docs/scenarios/ztf.rst
licenses/DORADO_LICENSE.txt
licenses/LICENSE.rst
licenses/README.rst
licenses/TEMPLATE_LICENCE.rst
src/m4opt/__init__.py
src/m4opt/_compiler.c
src/m4opt/_version.py
src/m4opt/conftest.py
src/m4opt/milp.py
src/m4opt/py.typed
src/m4opt.egg-info/PKG-INFO
src/m4opt.egg-info/SOURCES.txt
src/m4opt.egg-info/dependency_links.txt
src/m4opt.egg-info/entry_points.txt
src/m4opt.egg-info/requires.txt
src/m4opt.egg-info/scm_file_list.json
src/m4opt.egg-info/scm_version.json
src/m4opt.egg-info/top_level.txt
src/m4opt/_cli/__init__.py
src/m4opt/_cli/animate.py
src/m4opt/_cli/core.py
src/m4opt/_cli/prime.py
src/m4opt/_cli/schedule.py
src/m4opt/_cli/tests/__init__.py
src/m4opt/_cli/tests/conftest.py
src/m4opt/_cli/tests/test_core.py
src/m4opt/_cli/tests/test_end_to_end.py
src/m4opt/_cli/tests/data/800.fits
src/m4opt/constraints/__init__.py
src/m4opt/constraints/_airmass.py
src/m4opt/constraints/_atnight.py
src/m4opt/constraints/_body_separation.py
src/m4opt/constraints/_core.py
src/m4opt/constraints/_earth_limb.py
src/m4opt/constraints/_galactic.py
src/m4opt/constraints/_logical.py
src/m4opt/constraints/_positional.py
src/m4opt/constraints/_radiation.py
src/m4opt/constraints/tests/__init__.py
src/m4opt/constraints/tests/test_body_separation.py
src/m4opt/constraints/tests/test_earth_limb.py
src/m4opt/constraints/tests/test_galactic.py
src/m4opt/constraints/tests/test_positional.py
src/m4opt/dynamics/__init__.py
src/m4opt/dynamics/_roll.py
src/m4opt/dynamics/_slew.py
src/m4opt/dynamics/tests/__init__.py
src/m4opt/dynamics/tests/test_roll.py
src/m4opt/dynamics/tests/test_slew.py
src/m4opt/extern/__init__.py
src/m4opt/fov/__init__.py
src/m4opt/fov/_core.py
src/m4opt/missions/__init__.py
src/m4opt/missions/_core.py
src/m4opt/missions/_uvex.py
src/m4opt/missions/_rubin/__init__.py
src/m4opt/missions/_rubin/data/LICENSE.txt
src/m4opt/missions/_rubin/data/README.rst
src/m4opt/missions/_rubin/data/lsstCamSim.yaml
src/m4opt/missions/_ultrasat/__init__.py
src/m4opt/missions/_ultrasat/data/AllSS_grid_361.txt
src/m4opt/missions/_ultrasat/data/LCS_nonoverlapping_grid.csv
src/m4opt/missions/_ultrasat/data/README.rst
src/m4opt/missions/_ultrasat/tests/__init__.py
src/m4opt/missions/_ultrasat/tests/test_detector.py
src/m4opt/missions/_ztf/__init__.py
src/m4opt/missions/_ztf/data/LICENSE.txt
src/m4opt/missions/_ztf/data/README.rst
src/m4opt/missions/_ztf/data/ZTF_Fields.txt
src/m4opt/missions/tests/__init__.py
src/m4opt/missions/tests/test_detector.py
src/m4opt/missions/tests/test_uvex.py
src/m4opt/observer/__init__.py
src/m4opt/observer/_core.py
src/m4opt/observer/_earth_fixed.py
src/m4opt/observer/_spice.py
src/m4opt/observer/_tle.py
src/m4opt/skygrid/__init__.py
src/m4opt/skygrid/_geodesic.py
src/m4opt/skygrid/_healpix.py
src/m4opt/skygrid/_sinusoidal.py
src/m4opt/skygrid/_spiral.py
src/m4opt/skygrid/tests/__init__.py
src/m4opt/skygrid/tests/test_geodesic.py
src/m4opt/skygrid/tests/test_skygrid.py
src/m4opt/synphot/__init__.py
src/m4opt/synphot/_bandpass.py
src/m4opt/synphot/_detector.py
src/m4opt/synphot/_extrinsic.py
src/m4opt/synphot/_math.py
src/m4opt/synphot/background/__init__.py
src/m4opt/synphot/background/_core.py
src/m4opt/synphot/background/_galactic.py
src/m4opt/synphot/background/_cerenkov/__init__.py
src/m4opt/synphot/background/_cerenkov/_electron_loss.py
src/m4opt/synphot/background/_cerenkov/_refraction_index.py
src/m4opt/synphot/background/_cerenkov/data/LICENSE.txt
src/m4opt/synphot/background/_cerenkov/data/README.rst
src/m4opt/synphot/background/_cerenkov/data/__init__.py
src/m4opt/synphot/background/_cerenkov/data/suprasil_2a_refractive_index.csv
src/m4opt/synphot/background/_cerenkov/data/suprasil_2a_transmission.csv
src/m4opt/synphot/background/_cerenkov/tests/__init__.py
src/m4opt/synphot/background/_cerenkov/tests/test_cerenkov.py
src/m4opt/synphot/background/_cerenkov/tests/data/Cerenkov_output.xml
src/m4opt/synphot/background/_cerenkov/tests/data/LICENSE.txt
src/m4opt/synphot/background/_cerenkov/tests/data/README.rst
src/m4opt/synphot/background/_cerenkov/tests/data/__init__.py
src/m4opt/synphot/background/_skybright/__init__.py
src/m4opt/synphot/background/_skybright/data/10FebZen.txt
src/m4opt/synphot/background/_skybright/data/10JunZen.txt
src/m4opt/synphot/background/_skybright/data/10Nog.txt
src/m4opt/synphot/background/_skybright/data/10Nwh.txt
src/m4opt/synphot/background/_skybright/data/10Phx.txt
src/m4opt/synphot/background/_skybright/data/10Tuc.txt
src/m4opt/synphot/background/_skybright/data/10Zen.txt
src/m4opt/synphot/background/_skybright/data/README.rst
src/m4opt/synphot/background/_skybright/data/__init__.py
src/m4opt/synphot/background/_zodiacal/__init__.py
src/m4opt/synphot/background/_zodiacal/data/__init__.py
src/m4opt/synphot/background/_zodiacal/data/leinert_zodi.txt
src/m4opt/synphot/background/_zodiacal/data/stis_zodi_high.ecsv
src/m4opt/synphot/extinction/__init__.py
src/m4opt/synphot/extinction/_dust.py
src/m4opt/synphot/extinction/tests/__init__.py
src/m4opt/synphot/extinction/tests/test_dust.py
src/m4opt/synphot/tests/__init__.py
src/m4opt/synphot/tests/test_detector.py
src/m4opt/tests/__init__.py
src/m4opt/tests/hypothesis.py
src/m4opt/tests/test_milp.py
src/m4opt/tests/plugins/__init__.py
src/m4opt/tests/plugins/problem_size_limits.py
src/m4opt/utils/__init__.py
src/m4opt/utils/_numpy.c
src/m4opt/utils/console.py
src/m4opt/utils/functional.py
src/m4opt/utils/interp.py
src/m4opt/utils/numpy.py
src/m4opt/utils/optimization.py
src/m4opt/utils/resource.py
src/m4opt/utils/setup_package.py
src/m4opt/utils/sympy.py
src/m4opt/utils/pybtex/__init__.py
src/m4opt/utils/pybtex/styles/__init__.py
src/m4opt/utils/pybtex/styles/short_alpha.py
src/m4opt/utils/tests/__init__.py
src/m4opt/utils/tests/conftest.py
src/m4opt/utils/tests/test_console.py
src/m4opt/utils/tests/test_interp.py
src/m4opt/utils/tests/test_numpy.py
src/m4opt/utils/tests/test_optimization.py
src/m4opt/utils/tests/test_pybtex.py
src/m4opt/utils/tests/sphinx_roots/test-pybtex/conf.py
src/m4opt/utils/tests/sphinx_roots/test-pybtex/index.rst
src/m4opt/utils/tests/sphinx_roots/test-pybtex/refs.bib