Zimmerman en Space podcast

De banen van (exo)planeten

0:00
23:01
15 Sekunden vorwärts
15 Sekunden vorwärts

Naar aanleiding van een aantal vragen van luisteraar Bas, kijken we in deze ietwat lange aflevering naar hoe planeten rond sterren cirkelen.

The mass-period distribution of close-in exoplanets:

https://www.aanda.org/articles/aa/full_html/2011/04/aa15774-10/aa15774-10.html

Halting Planet Migration In The Evacuated Centers Of Protoplanetary Disks:

https://iopscience.iop.org/article/10.1086/342370/pdf

Orbital migration of the planetary companion of 51 Pegasi to its present location:

https://pages.astro.umd.edu/~dcr/reprints/lin_nature380,606.pdf

Connecting the dots II: Phase changes in the climate dynamics of tidally locked terrestrial exoplanets:

https://arxiv.org/pdf/1508.00419

The climate and habitability of planets with eternal day and night sides:

https://serious-science.org/the-climate-and-habitability-of-planets-with-eternal-day-and-night-sides-5289

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

a  = 1.0   # semi-major axis (AU)
M2 = 1.0   # mass of the central body

# M1: mass of the orbiting body, from 0 to 1
M1 = np.linspace(0, 1, 500)

# Newton's law
T = np.sqrt(a**3 / (M1 + M2))

fig, ax = plt.subplots(figsize=(9, 5.5))
fig.patch.set_facecolor("#0d1117")
ax.set_facecolor("#0d1117")

# Gradient-ish line via a LineCollection
from matplotlib.collections import LineCollection
points = np.array([M1, T]).T.reshape(-1, 1, 2)
segments = np.concatenate([points[:-1], points[1:]], axis=1)
norm = plt.Normalize(T.min(), T.max())
lc = LineCollection(segments, cmap="cool", norm=norm, linewidth=2.5, zorder=3)
lc.set_array(T)
ax.add_collection(lc)

ax.scatter([0], [np.sqrt(a**3 / M2)], color="#ff6b9d", s=70, zorder=5,
           label=f"Test-particle limit  (M₁→0,  T={np.sqrt(a**3/M2):.3f} yr)")

T_eq = np.sqrt(a**3 / (M2 + M2))
ax.scatter([M2], [T_eq], color="#ffd166", s=70, zorder=5,
           label=f"Equal masses  (M₁=M₂={M2},  T={T_eq:.3f} yr)")

for spine in ax.spines.values():
    spine.set_edgecolor("#30363d")

ax.tick_params(colors="#8b949e", labelsize=10)
ax.xaxis.label.set_color("#c9d1d9")
ax.yaxis.label.set_color("#c9d1d9")

ax.set_xlabel("M₁  — Mass of orbiting body  (M☉)", fontsize=12, labelpad=10)
ax.set_ylabel("Orbital Period  T  (years)", fontsize=12, labelpad=10)
ax.set_title("Orbital Period vs. Mass of Orbiting Body\n"
             r"$T = \sqrt{\,a^3\,/\,(M_1+M_2)\,}$"
             f"       [a = {a} AU,  M₂ = {M2} M☉]",
             color="#e6edf3", fontsize=13, pad=14)

ax.set_xlim(-0.01, 1.01)
ax.set_ylim(T.min() * 0.97, T.max() * 1.03)

ax.grid(color="#21262d", linestyle="--", linewidth=0.7, zorder=0)
ax.legend(facecolor="#161b22", edgecolor="#30363d",
          labelcolor="#c9d1d9", fontsize=10, loc="upper right")

plt.tight_layout()
plt.show()


De Zimmerman en Space podcast is gelicenseerd onder een Creative Commons CC0 1.0 licentie.

http://creativecommons.org/publicdomain/zero/1.0


Weitere Episoden von „Zimmerman en Space“