Problem Set 3#

Question 1#

In November \(1998\), a satellite was discovered orbiting the \(215\) \(km\) diameter asteroid (\(45\)) Eugenia. The measured orbital radius and period of the satellite’s orbit, assumed circular, was \(1200\) \(km\) and \(4.7\) days respectively.

  • Assuming the satellite to be massless, compute a mass estimate for Eugenia and hence derive an estimate of its density assuming it is spherical.

  • For a measurement error of 0.1 days in the orbital period, what is the resulting percent relative error in the estimated mass?

Solution 1#

Part a: Eugenia estimates of mass and density#

From Kepler’s third law we have $\( \mu = n^2a^3. \)$

As the probe is massless we can make the simplification \(\mu \approx mG\). As a result we have $\( m = \mu/G = n^2a^3/G\\ \)\( \)\( m = \frac{4\pi^2 \times 1200^3}{4.7^2 \times 86400^2 \times 6.672 \times 10^{-20}} = 6.2 \times 10^18 kg. \)$

Similarly, for the volume we have $\( V = \frac{4}{3}\pi R^3 \)\( where \)R\( is Eugenia’s radius and is \)107.5\( \)km\(. The above equation then gives \)V = 5.2 \times 10^{15}\( \)m^3$.

Then, we can compute the density, \(\rho = m/V = 1200 kg/m3 = 1.2 g/cm3\).

# Your coded answers here (and create more Code cells if you wish to)
from math import pi
diameter_of_Eugenia = 215
radius_of_Eugenia = diameter_of_Eugenia/2
n_Eugenia = 2 * pi
a_Eugenia = 1200
mu_Eugenia = n_Eugenia**2 * a_Eugenia**3
G_eugenia = 4.7**2 * 86400**2 * 6.672 * 10**-20

mass_of_Eugenia = mu_Eugenia / G_eugenia
print("Eugenia's mass is", mass_of_Eugenia, "kg")

volume_of_Eugenia = 4/3 * pi * radius_of_Eugenia**3
rho_Eugenia = mass_of_Eugenia/volume_of_Eugenia
print("Eugenia's density is", rho_Eugenia, "kg/m^3")
Eugenia's mass is 6.200464657880706e+18 kg
Eugenia's density is 1191544412161.9224 kg/m^3

Part b: % error in mass estimate#

Di↵erentiating Kepler’s third law with respect to the orbital period gives $\( \lvert{\delta\mu}\rvert = 8\pi^2\bigg(\frac{a}{T}\bigg)^{3} \Delta T. \)\( The percent relative error is then computed to be \)\( \frac{\delta\mu}{\mu} \times 100 = 8\pi^2\bigg(\frac{1200}{4.7 \times 86400}\bigg)^{3} \frac{0.1 \times 86400}{0.4137} \times 100 \approx 4%. \)$

error_in_Mass_Estimate = 8* pi**2 * (1200/(4.7 * 86400))**3 * 0.1 * 86400/0.4137 * 100
print("percentage error is", error_in_Mass_Estimate, "%")
percentage error is 4.255267739227219 %

Question 2#

In a geocentric equatorial coordinate system the location of a satellite is \({\bf r} = (1165.77, -3016.32, -6364.18)\) \(km\). The satellite is travelling with a velocity vector \({\bf v} =  (9.63, 1.92, 0.44)\) \(kms^{-1}\). Compute the specific energy and the semi-major axis of the orbit.

Solution 2#

We compute the magnitudes of \(\bf r\) and \(\bf v\) as \(r\) and \(v\) as $\( r = 7.1386 \times 10^3 km \)$

\[ v = 9.83 \quad km s^-1 \]

respectively.

Then, the specific energy is given by $\( E = \frac{v^2}{2} - \frac{\mu}{r} = -7.5286 \quad km^2s^{-2} \)$

and the semi-major axis of this orbit is $\( a = -\frac{\mu}{2E} = 26472.3 \quad km. \)$

# Your coded answers here (and create more Code cells if you wish to)
from math import sqrt
# Data
r = (1165.77, -3016.32, -6364.18)
v = (9.63, 1.92, 0.44)
R_Earth = 6378.14 # in km
mu_Earth = 3.986 * 10**5 # in km**3 s**(-2)

# Magnitude of r and v
r_magnitude = sqrt(r[0]**2 + r[1]**2 + r[2]**2)
v_magnitude = sqrt(v[0]**2 + v[1]**2 + v[2]**2)

specific_Orbital_Energy = v_magnitude**2/2 - mu_Earth/r_magnitude
print("the specific orbital energy is", specific_Orbital_Energy, "km^2/s^2")
a = - mu_Earth/(2*specific_Orbital_Energy)
print("the semi-major axis is", a, "km")
the specific orbital energy is -7.528619108874395 km^2/s^2
the semi-major axis is 26472.31811276974 km

Question 3#

For the same satellite as in the previous question, compute the components of the angular momentum and the inclination of the orbit.

Solution 3#

\[ H_x = y \dot z - z \dot y = 10892.045 \quad km^2s^{-1} \]
\[ H_y = z \dot x - x \dot z = -61799.045 \quad km^2s^{-1} \]
\[ H_z = x \dot y - y \dot yx = 31285.44 \quad km^2s^{-1} \]

Hence total angular momentum is \(H = 70118.86\) \(km^2s^{-1}\) and \(\cos(I) = H_z/H \rightarrow I = 63.5^o\).

# Your coded answers here (and create more Code cells if you wish to)
H_x = r[1]*v[2] - r[2]*v[1]
H_y = r[2]*v[0] - r[0]*v[2]
H_z = r[0]*v[1] - r[1]*v[0]
print("the components of angular momentum are", H_x, ",", H_y, "and", H_z)
H_magnitude = sqrt(H_x**2 + H_y**2 + H_z**2)
print("the magnitude of angular momentum is", H_magnitude, "km^2/s")

from math import acos
i = acos(H_z/H_magnitude)
print("the inclination is", i * 180/pi, "degrees.")
the components of angular momentum are 10892.0448 , -61799.99220000001 and 31285.440000000002
the magnitude of angular momentum is 70118.85931644117 km^2/s
the inclination is 63.50131632892303 degrees.

Question 4#

A LEO satellite is in a circular orbit of altitude 650 km. How long does it take to go round the Earth? How many orbits will it complete in one day? If we want the satellite to perform exactly 16 orbits per day, what altitude would the satellite need to be at? Earth data $\( R_{Earth} = 6378.14 km \)\( \)\( \mu = 3.986 \times 10^5 km^3s^{-2} \)$

Solution 4#

Part a#

\(a = R_{Earth} + 650 = 7028.14\) \(km\). Hence \(n = \sqrt{\mu/a^3} = 0.00107\) \(s^{-1}\). Hence T, the orbital period, is \(1.628\) hours or \(1^h 37^m 40.8^s\).

Part b: Orbits in one day#

THe satellite will complete \(24/T = 14.73\) orbits in one day.

Part c: Altitude for 16 orbits/day#

For exactly \(16\) orbits, we need a period of \(24/16\) hours, i.e. \(90\) minutes or \(5400\) secs.

\(n = 2\pi/5400 = 0.00116\) \(s^{-1}\). From this, we can determine \(a = 6652.55\) \(km\); so the altitude of the orbit would be \(274.413\) \(km\).

# Your coded answers here (and create more Code cells if you wish to)
h_orbit = 650 # in km 
a = R_Earth + h_orbit
n = sqrt(mu_Earth/a**3)

T = 2 * pi * sqrt(a**3/mu_Earth) # seconds
print("The orbital period is", T/3600 , "hours")

number_of_orbits_in_one_day = 24 * (3600 / T)
print("the number of orbits in one day is", number_of_orbits_in_one_day)

T_for_16_orbits_per_day = 24/16*3600
n_for_16_orbits_per_day = 2*pi/T_for_16_orbits_per_day
a_for_16_orbits_per_day = (mu_Earth/n_for_16_orbits_per_day**2)**(1/3)
h_for_16_orbits_per_day = a_for_16_orbits_per_day - R_Earth
print("the altitude for 16 orbits per day is", h_for_16_orbits_per_day, "km")
The orbital period is 1.628805872407306 hours
the number of orbits in one day is 14.734720942851844
the altitude for 16 orbits per day is 274.4132434776084 km