Moon trajectory1
▇ orbital path of the Earth
▇ orbital path of the Moon
- Used parameters
import numpy as np import matplotlib.pyplot as plt rEM = 38 # SVG pixel per |Earth-Moon|; we're going to round to int. rSE = rEM*389.168 # pixel per |Sun-Earth| n = 10 # polygon segments per quarter month; with cubic splines, n = 1 would probably suffice. p = 12.4 # synodic months per year; 4*n*p segments per year. θ = 2*np.pi*np.arange(-n-1, 3*n)/(4*n*p) # one month xE = rSE*np.sin(θ) yE =-rSE*np.cos(θ) xM = rSE*np.sin(θ) + rEM*(np.sin(p*θ)*np.cos(θ) + np.cos(p*θ)*np.sin(θ)) # Rotate rM vector by Earth's arc angle. yM =-rSE*np.cos(θ) - rEM*(np.cos(p*θ)*np.cos(θ) - np.sin(p*θ)*np.sin(θ)) fig, ax = plt.subplots(figsize=(19,2.5)) ax.plot(xE, yE, 'b-', linewidth=.5) ax.plot(xM, yM, 'k-') ax.plot(xE[1::n], yE[1::n], 'bo', markersize=5) ax.plot(xM[1::n], yM[1::n], 'ko', markersize=2) fig.tight_layout() fig.show() xE = xE.astype(int) yE = yE.astype(int) xM = xM.astype(int) yM = yM.astype(int) rM = 8; rE = 20 # radii, not to scale (would be 0.17 and 0.63) open('out.svg', 'w').write(f<?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" width="1600" height="{1600*(rSE+rEM+rM+yM[-1])/(xE[-1]-xE[0])}" viewBox="{xE[0]} {-(rSE+rEM+rM)} {xE[-1]-xE[0]} {rSE+rEM+rM+yM[-1]}"> <defs> <marker id="E" overflow="visible"><circle r="{rE}" fill="blue"/></marker> <marker id="M" overflow="visible"><circle r="{rM}" fill="black"/></marker> </defs> <path fill="none" stroke="blue" stroke-width="2" d="M{'L'.join([x+' '+y for x,y in zip(xE.astype(str), yE.astype(str))])}"/> <path fill="none" stroke="black" stroke-width="4" d="M{'L'.join([x+' '+y for x,y in zip(xM.astype(str), yM.astype(str))])}"/> <path fill="none" stroke="none" marker-start="url(#M)" marker-mid="url(#M)" marker-end="url(#M)" d="M{'L'.join([x+' '+y for x,y in zip(xM[1::n].astype(str), yM[1::n].astype(str))])}"/> <path fill="none" stroke="none" marker-start="url(#E)" marker-mid="url(#E)" marker-end="url(#E)" d="M{'L'.join([x+' '+y for x,y in zip(xE[1::n].astype(str), yE[1::n].astype(str))])}"/> </svg>
)Relevante Bilder
Relevante Artikel
MondbahnAls Mondbahn wird die genähert elliptische Umlaufbahn des Mondes um die Erde bezeichnet. Eine exakte Keplerellipse wäre nur zu erwarten, wenn lediglich die Anziehungskraft einer kugelförmigen Erde auf den Mond wirken würde. .. weiterlesen