photoevolver is a Python module that simulates the atmospheric escape of extrasolar planets and their evolution.
It can evolve the gaseous atmosphere of a planet backwards and forwards in time, taking into account its internal structure and cooling rate, atmospheric mass loss processes, and the stellar emission history.
import photoevolver as ph
import Mors as mors # For the stellar model
import matplotlib.pyplot as plt
planet = ph.Planet(mass = 5.0, radius = 2.0, period = 5.0)
# M_earth, R_earth, days
planet.set_models(
core = ph.models.core_otegi20,
env = ph.models.envelope_chen16,
mloss = ph.models.massloss_energy_limited,
star = mors.Star(Mstar = 1.0, percentile = 50.0)
)
# Returns pandas dataframe
evo = planet.evolve(
start = 10.0, end = 1000.0, step = 1.0, # Myr
progressbar = True
)
plt.plot(evo['age'], evo['radius'])
plt.xlabel("Age (Myr)")
plt.ylabel("Radius (Earth radii)")
plt.show()Check out the folder examples for jupyter notebooks with examples.
Download and install the repository with pip:
pip install git+https://github.com/jorgefz/photoevolver.gitInstall the following dependencies:
numpy
uncertainties
scipy
astropy
pandas
tqdm
Alternatively, run pip install -r requeriments.txt to install them automatically.
Import the module and use it straight away:
>>> import photoevolver as phIn the past few decades, thousands of extrasolar planets have been discovered. Many of these planets are small, between Earth and Neptune in size, and orbit very close to their stars, well within the orbit of Mercury in the Solar System. As a result, these planets receive large amounts of radiation from their stars, particularly X-rays and UV, which can "erode" the large atmospheres of these planets. Over time, some of these planets can even be completely stripped of their atmospheres, down to barren rocky worlds.
photoevolver simulates the atmospheric escape from these planets across their lifetime and determines whether their atmospheres survive or are completely stripped by radiation from their host star.
See Fernández Fernández et al. (2023) for more information.
This repository uses datasets and models from the following sources:
- Mass loss model by Kubyshkina & Fossati (2021), whose grid is available at this Zenodo repository, which is licensed under the Creative Commons Attribution-NonCommercial 4.0 International Public License.
- Envelope structure model by Owen & Campos Estrada (2020), available at this GitHub repository.
- Stellar sequences by Eric Mamajek, available at this link.
- Internal structure models by Zeng et al. (2019) available at this link.
- Stellar evolution models by Spada et al. (2013)
For the stellar emission history, it is recommended to use the models by Johnstone et al. (2021), which you can install from this GitHub repository.