Rouge Planet Habitability#

S. Karthik Yadavalli (Harvard University)

Description: An investigation into whether a rogue planet could receive habitable levels of energy flux from galactic supernovae.

Intended Audience: Intermediate to Advanced Undergraduate

tags: libraries:numpy, sampling-positions, supernovae, habitability, planets

Requirements: requirements.txt

Last Updated: July 23, 2024

Learning Objectives

  1. Learn how to uniformly sample coordinate locations from a cylindrical coordinate space.

  2. Successfully calculate distances in cylindrical coordinates.

  3. Be able to calculate flux from luminosity and use it to determine the habitability of a given coordinate, assuming a uniform distribution of SNe explosions.

Introduction#

How many supernovae need to be continuously going off in a region of space for most of that space to be habitable? Imagine you have a rogue planet: one that has been ejected from its host star and is floating around its host galaxy in interstellar space. Imagine it is far enough away from its host star and from all other stars that the flux it receives from stars is negligible. As it floats around in its galaxy, is it possible that the planet can remain habitable just from the light and heat emitted by supernovae going off in the galaxy? How many supernovae would need to be going off in this galaxy so that such a rogue planet could actually be habitable?

In these exercises, you’ll create a region of space shaped like a disk (approximating a spiral galaxy) and randomly sample locations in that space where there are planets and where there are supernovae going off. Then, you’ll calculate how much energy each planet receives from all the supernovae going off. Finally, you’ll calculate how many of those planets are habitable.

On Habitability

In this exercise, we only briefly explore planet habitability. We assume a planet will be habitable if the flux it receives is larger than the flux Mars receives from the Sun and smaller than the flux received by Venus from the Sun. However, habitability is far more complex than this, and depends on more factors, including the atmosphere of the planet and how regularly the flux received by the planet changes.

On Units

Note that all luminosities in this notebook will be in cgs units. Therefore, luminosity will need to be calculated in \(\rm{ergs}/\rm{s}\), and fluxes in \(\rm{erg}/\rm{s}/\rm{cm^2}\). We will use \(\rm{kpc}\) to represent distances within the galaxy, but make sure to convert those distances to \(\rm{cm}\) for the sake of calculating fluxes.

Part 1: Helper Functions#

We’ll stary by importing some packages we will need.

import numpy as np
import matplotlib.pyplot as plt
import math

First, we need a function that will allow us to retrieve “N” random locations within our cylindrical disk space.

We will also need a function to compute the distance between any two points within our disk.

Additionally, we need to be able to compute the flux received at a specific distance from a supernova, given its luminosity.

Finally, we need a helper function which returns whether a value of flux corresponds to a below-habitable (0), habitable (1) or above-habitable (2) level.

Part 2: Main Function#

This next cell is the workhorse of our calculation. In this function, we will create the galaxy, generate locations in it for both supernovae and planets, and calculate how many of those planets will be habitable.

Part 3: Fraction of Habitable Planets#

Finally we can investigate whether a typical rogue planet could survive in our hypothetical galaxy.