Skip to main content

CINEMAS :clapper:

Constraining INclinations of Exoplanets and their MAsses by Stability

PyPI version Python 3.10+ License: MIT Ruff

CINEMAS

CINEMAS is a Bayesian framework for constraining the inclinations, and hence the true masses, of exoplanets in compact multi-planet systems detected with the radial velocity (RV) method.

The true mass $M$ of an exoplanet is not measured with the RV method, only the minimum mass $M_{\rm min}=M\sin i$, where $i$ is the (generally unknown) inclination angle. However, if $i$ were too low, this would mean the true masses of the planets ($M_j=M_{{\rm min}, j} / \sin i$) would be so big that the system would be dynamically unstable.

Assuming isotropy, the prior probability distribution on $i$ is $\pi(i)=\sin i$. The probability that a compact system with a given inclination (and hence given masses) is dynamically stable can be calculated quickly using the spock package. CINEMAS uses MCMC to calculate posterior distributions for the inclination, and thus the true masses of these exoplanets in inclined multi-planet systems. The result? Absolute cinema(s).

Installation

Install CINEMAS directly from PyPI:

pip install cinemas

Or, for development, clone the repository and install in editable mode:

git clone https://github.com/xbyrne/cinemas
cd cinemas
pip install -e ".[dev]"

(Note that there is sometimes a bug in SPOCK where its pre-integration step only does one step. You may need to install SPOCK from my fork, or look at this pull request. Sorry I can't ship this updated version of SPOCK directly with the pip package; PyPI doesn't like dependencies from git repos)

Quickstart

Loading observational data

Observational data is loaded from the NASA Exoplanet Archive, using their TAP service. It is then loaded into a SystemObservations object, which includes all the observational data needed for a prior on the configuration parameters.

import cinemas

# Load observational constraints for a system
catalogue = cinemas.download_multiplanet_systems()
system_obs = cinemas.load_system_observations(
    star_name="Barnard's star",
    exoplanet_catalogue=catalogue
)

Running MCMC sampling

import cinemas

# Run MCMC to constrain the inclination and true masses
samples, tau, acceptance_fraction = cinemas.run_mcmc_sampling(
    system_obs,
    nsteps=5000,
    nwalkers=None  # By default, 2*number of params
)

print(f"Autocorrelation time: {tau}")
print(f"Acceptance fraction: {acceptance_fraction}")

References

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cinemas-1.0.0.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cinemas-1.0.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file cinemas-1.0.0.tar.gz.

File metadata

  • Download URL: cinemas-1.0.0.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for cinemas-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ac2bd703eee6ce9093ea43534433f3c4bd345f17fdbb225e1b6646de6da675a5
MD5 b326ed5b30685cd3c4ac4346bd47a663
BLAKE2b-256 b96b41a6e221b76cfd2cdf1316dc4ab1ed3c7eee1a57443be1ad26f5b2a9eaea

See more details on using hashes here.

File details

Details for the file cinemas-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cinemas-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for cinemas-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 29f2a317404b46dd0df4e888a8779f1d32d22fbaea9dc96e336a0021e3504b48
MD5 c1c9e41a873d9e66a7d0ac1b028e7d4f
BLAKE2b-256 8f3df618bf3488e18500bb85645457a8ecaed51f5cd500dca25389de1b1b6951

See more details on using hashes here.

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