# Would a lower LEO ISS orbit really have a shorter eclipse duration than a higher one?

This comment says

Lower orbit also mean shorter ones; for observations (one of the ISS missions) it is an advantage. It also have shorter night times (ie smaller batteries)..

and the likely thinking is that for a point-source Sun at infinity the width of the Earth's shadow is constant, and so the lower the orbit, the the faster the velocity (shorter the period) and so the less time in the shadow.

but is that actually even true, or is it more complicated?

The context of the question Does the ISS still “need” to be at around 400 km? there is that the ISS' available orbits are between roughly 300 and 700 km (limited by drag, radiation respectively). Within that range, is the shorter eclipse duration really at the low end?

Use the simplifying assumptions of spherical earth in circular orbit without axis tilt or atmosphere. You're welcome to add them in later, but it gets complicated quickly.

"bonus points" for the the altitude of minimum duration (same assumptions, but ignore the 300-700 km).

The diagram might be helpful. $f$ is the fraction of the orbit in the Earth's shadow, $GM_E$ is the standard gravitational parameter of the Earth and is about 3.986E+05 km^3/s^2 and $T$ is the period of one orbit (from this answer).

• It's also more complicated because of the nodal precession :) This answer gives some elements of response: space.stackexchange.com/questions/4686/… – Antzi Aug 27 '18 at 6:53
• This is probably too basic an observation, but R^3/T^2 is constant for any object orbiting the Earth, so lower R means lower T. However, as you note, this doesn't necessarily mean less time in shadow. – user7073 Aug 27 '18 at 17:17
• @uhoh: A spherical Earth, in a vacuum... – Vikki - formerly Sean May 10 '19 at 3:52
• @uhoh: It was a play on the joke of "a spherical cow in a vacuum". – Vikki - formerly Sean May 10 '19 at 3:59
• @Sean ;-) :O etc. – uhoh May 10 '19 at 4:00

Would a lower LEO ISS orbit really have a shorter eclipse duration than a higher one?

No it definitely would not!

Using the equations in the question:

$$f = \frac{1}{2} - \frac{1}{\pi}\arccos \left(\frac{R_E}{R_E+h} \right)$$

$$T = 2 \pi \sqrt{ \frac{(R+h)^3}{GM_E}}$$

where $$f$$ is the fraction of the orbit in eclipse, T is the period of an Earth orbit at altitude $$h$$, $$GM_E$$ is Earth's standard gravitational parameter and $$R_E$$ is Earth's equatorial radius, then the period of eclipse is a local maximum at the lowest possible orbit and only decreases as altitude increases until almost 1400 km.

note: the following assumes a circular orbit, either equatorial or if inclined, then passing through the antisolar point. Of course a few times a year the ISS experiences no eclipses at all, and neither would some Sun-synchronous orbits designed for continuous solar power or solar-illuminated Earth observation.

It's 42.24 minutes at zero altitude, 37.28 at 200 km, and 36.11 at 400 km. There is a very broad minimum at about 1370 km altitude with an eclipse duration of only 34.82 minutes. Above that the eclipse duration increases again.

def T_and_f(h):
T  = twopi * np.sqrt((R+h)**3/GMe)
f  = 0.5 - np.arccos(R/(R+h))/pi
return T, f

import numpy as np
import matplotlib.pyplot as plt

halfpi, pi, twopi = [f*np.pi for f in (0.5, 1, 2)]
GMe               = 3.986E+14 # m^3/s^2
R                 = 6378137.  # meters

h = np.arange(0, 1001, 10) * 1000. # altitude in meters

T, f = T_and_f(h)

plt.figure()
plt.subplot(3, 1, 1)
plt.plot(h/1000., f, '-k')
plt.title('Eclipse fraction', fontsize=16)
plt.subplot(3, 1, 2)
plt.plot(h/1000., T/2/60., '--k')
plt.plot(h/1000., T*f/60., '-k')
plt.title('Eclipse duration (-- half-period) 0-1000km', fontsize=16)
plt.ylabel('minutes', fontsize=16)

plt.subplot(3, 1, 3)

h = np.arange(0, 10001, 10) * 1000. # altitude in meters
T, f = T_and_f(h)

plt.plot(h/1000., T/2/60., '--k')
plt.plot(h/1000., T*f/60., '-k')
plt.xlabel('altitude (km)', fontsize=16)
plt.ylabel('minutes', fontsize=16)
plt.title('Eclipse duration (-- half-period) 0-10000km', fontsize=16)
plt.ylim(None, 60.)
plt.show()

• Awesome. I intuitively predicted the rebounce but I would not have thought about the initial dip. I wonder if we could show that in an animation to make it easier to understand intuitively – Antzi Nov 21 '19 at 6:52
• @Antzi that should be straightforward; let's wait and see which one of "we" has the time to do it first! btw for me 0-1000km vs 0-10000km are hard for me to read and distinguish without a comma or the space that belongs between a number and its units. I forget that there are some people who don't examine a plots axes labels right away. – uhoh Nov 21 '19 at 7:14
• Also, I prefer inline image links because doing that way prevents the SE post editor from eating my urls – uhoh Nov 21 '19 at 7:19