Zimmerman en Space podcast

De banen van (exo)planeten

0:00
23:01
Spola tillbaka 15 sekunder
Spola framåt 15 sekunder

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


Fler avsnitt från "Zimmerman en Space"