Skip to main content

a model for the mass of an exoplanet given the radius

Project description

ExoRM

PyPI Downloads

Author: Kevin Zhu

NOTE: As of May 27, 2025, the optimal SMOOTHING parameter is ~284, and it will only increase. A rough estimate you may use is: (Length of dataset / 1500) * 280 Feel free to change this number if you find it is not smooth / too smooth.

Features

  • continuous radius-mass relationship
  • smooth with lower residuals
  • simple usage, log10 and linear
  • best-fit for Terran, Neptunian, and Jovian

Installation

To install ExoRM, use pip: pip install ExoRM.

However, many prefer to use a virtual environment.

macOS / Linux:

# make your desired directory
mkdir /path/to/your/directory
cd /path/to/your/directory

# setup the .venv (or whatever you want to name it)
pip install virtualenv
python3 -m venv .venv

# install ExoRM
source .venv/bin/activate
pip install ExoRM

deactivate # when you are completely done

Windows CMD:

# make your desired directory
mkdir C:path\to\your\directory
cd C:path\to\your\directory

# setup the .venv (or whatever you want to name it)
pip install virtualenv
python3 -m venv .venv

# install ExoRM
.venv\Scripts\activate
pip install ExoRM

deactivate # when you are completely done

Usage

To first begin using ExoRM, the data and model must be initialized. This is due to the constant discovery of new exoplanets, adding to the data.

Furthermore, this requires periodic updating to include the most recent information.

Simply run get_data() and initialize_model(). Note: import those by using from ExoRM.get_data import get_data() and from ExoRM.initialize_model() import initialize_model(). initialization requires a smoothing amount, which is set to 280 but should be increased when there is more data. A plot of the model will be shown for you to see. Both are stored in your OS's Application Data for ExoRM. ExoRM provides built in functions to retrieve from this folder.

To use the model, call ExoRM.load_model() which returns the model from the filepath. If you wish, you may use model.save(...) to save it to your own directory.

The model supports log10 and linear scale in earth radii. When using the model(), .__call__(), or .predict(), the log10 scale is used. Linear predictions are used in .predict_linear().

The high amount of uncertainty can be accessed from ExoRM. There is only log10 uncertainty due to the linear scale's differences, which may be accessed through .calculate_error() for the most recent values or .error for the value calculated at initialization.

ExoRM's data limitations required overrides for certain areas. By default, override_min() and override_max() are set to the inverse power law relationship found by Chen and kipping (2017). The transition points to those are smooth and are calculated to be the closest intersection between the model and the relationship.

An example is seen in the example.ipynb.

License

The License is an MIT License found in the LICENSE file.

Project details


Download files

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

Source Distribution

exorm-1.1.3.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

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

exorm-1.1.3-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file exorm-1.1.3.tar.gz.

File metadata

  • Download URL: exorm-1.1.3.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for exorm-1.1.3.tar.gz
Algorithm Hash digest
SHA256 eb328cae824dd5e22774c951ce93131b94d5320016d26ed1e7bebdb623af0fe0
MD5 6606f7b07b2370a71a803cf92ebc2fdd
BLAKE2b-256 f72722b7a0510f07771ffa58675e870a3bbbf0b1897fda61fe17c2b979cc229a

See more details on using hashes here.

File details

Details for the file exorm-1.1.3-py3-none-any.whl.

File metadata

  • Download URL: exorm-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for exorm-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d5d0c9a4f2905a04f6f6ff7dacba57681a3e328a12523fe5e4c6a9f8a225b5fd
MD5 157a2f611724ce98b483f55cb5f86953
BLAKE2b-256 a1c8b399f3c9c89b827ab5502c0b65089cfa960194bebf411cf50887da173575

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page