Skip to main content

mphot

mphot is a Python package to model photometry for ground or space-based astronomy. Exposure time calculator (ETC) built in.

example plots

How it works

Simply put,

  • it combines user submitted [telescope * filter * camera qe] efficiencies with generic stellar models and sky transmission/radiance models (for Paranal, 2400m) to generate integrable grids of stellar fluxes and sky radiances.

  • Then, mphot uses the grids to interpolate between different

    • atmospheric parameters (PWV, airmass)
    • target star parameters (effective temperature + distance)
  • using user submitted

    • telescope/site parameters (primary and secondary diameters, site seeing)
    • camera parameters (plate scale, dark current, read noise, well depth, target well fill, read time)
  • to calculate the ideal exposure time and expected precision for a given observation.

Please see the examples for more details on how to use mphot. For further details on the models used, please see https://doi.org/10.1117/12.3018320.

Note, it uses stellar parameters from "A Modern Mean Dwarf Stellar Color and Effective Temperature Sequence". Temperatures between 1278 K to 3042 K are calibrated for the SPECULOOS target list with 2MASS (see Figure 4.7 in "Optimised ground-based near-infrared instrumentation for robotic exoplanet transit surveys").

Installation

You can install mphot in a Python (>=3.11) environment with

pip install mphot

or from a local clone

git clone https://github.com/ppp-one/mphot
pip install -e mphot

You can test the package has been properly installed with

python -c "import mphot"

Web demo

mphot runs in the browser through Pyodide. No server does the work. To run it on your machine:

python web/build.py
python -m http.server --directory web 8000

Then open http://localhost:8000/. See web/README.md.

Attribution

If you find mphot useful for your research, please cite Pedersen et. al 2024. The BibTeX entry for the paper is:

@inproceedings{pedersen2024infrared,
  title={Infrared photometry with InGaAs detectors: First light with SPECULOOS},
  author={Pedersen, Peter P and Queloz, Didier and Garcia, Lionel and Schacke, Yannick and Delrez, Laetitia and Demory, Brice-Olivier and Ducrot, Elsa and Dransfield, Georgina and Gillon, Michael and Hooton, Matthew J and others},
  booktitle={Ground-based and Airborne Instrumentation for Astronomy X},
  volume={13096},
  pages={1146--1167},
  year={2024},
  organization={SPIE}
}

Metadata

Release files for mphot 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mphot 2.0.0
File Size Uploaded
mphot-2.0.0.tar.gz 19.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mphot 2.0.0
File Interpreter ABI Platform
mphot-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 36.5 MB

Release files / mphot-2.0.0.tar.gz

Download URL mphot-2.0.0.tar.gz
Size 19.0 MB
Tags Source
SHA-256 checksum
How to use checksums
3d69d64ccb338b3b80be08e0fae4d475a77acf47ae6ea4296309bdfa4d87a0f8
BLAKE2b-256 checksum
How to use checksums
41b42d0153aa5d4a10cb25d4f70a3c02adf473fcc9fcc1d510d99cb8c36b4b97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / mphot-2.0.0-py3-none-any.whl

Download URL mphot-2.0.0-py3-none-any.whl
Size 17.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
48991ea4c22c394bbcd128a5a0abd95b4daf44bd7d378c90b7a3c99c96f43588
BLAKE2b-256 checksum
How to use checksums
58a21a71909d64426f33cff329c683e6be02edcf48957f4114ad5f9bed324622
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page