Ground Repeating Orbits
A ground repeating orbit is any orbit in which the number of revolutions per day is a rational number:
\[R_d = I + \frac{N}{D}\ ,\]
where $I, N, D \in \mathbb{N}$. Hence, this type of orbit repeats its ground track after $D$ (solar) days, which is called the orbit cycle. Those orbits are largely used in remote sensing missions because the satellite revisits the same regions periodically.
Since the ground track repeats, the distance between two adjacent ground tracks at the Equator is constant. This information is paramount to design the payload of a remote sensing mission: if the swath is smaller than this distance, there will be gaps in the coverage.
Adjacent Track Distance
We can compute the distance between two adjacent ground tracks at the Equator using the function ground_repeating_orbit_adjacent_track_distance:
SatelliteAnalysis.ground_repeating_orbit_adjacent_track_distance — Function
ground_repeating_orbit_adjacent_track_distance(a::T1, e::T2, i::T3, orbit_cycle::Integer; kwargs...) where {T1 <: Number, T2 <: Number, T3 <: Number} -> TCompute the adjacent track distance [m] at Equator in a ground repeating orbit. The orbit is described by its semi-major axis a [m], eccentricity e [ ], inclination i [rad], and orbit cycle orbit_cycle [day].
Internally, this function uses the precision obtained by promoting T1, T2, and T3 to a floating-point number T.
Keywords
perturbation::Symbol: Symbol to select the perturbation terms that will be used. It can be:J0,:J2, or:J4. (Default::J2)m0::Number: Standard gravitational parameter for Earth [m³ / s²]. (Default:GM_EARTH)J2::Number: J₂ perturbation term. (Default:EGM_2008_J2)J4::Number: J₄ perturbation term. (Default:EGM_2008_J4)R0::Number: Earth's equatorial radius [m]. (Default:EARTH_EQUATORIAL_RADIUS)we::Number: Earth's angular speed [rad / s]. (Default:EARTH_ANGULAR_SPEED)
Extended help
A ground repeating orbit is any orbit that the number of revolutions per day is a rational number. Hence, this type of orbit repeats its ground trace after a finite number of days.
The information orbit_cycle is redundant given that we have a, e, and i. However, it is necessary to improve the algorithm precision. Otherwise, the orbit_cycle must be obtained by computing the orbit period using a, e, and i and then converting it to a rational number, leading to numerical problems.
Throws
ArgumentError: Iforbit_cycleis not positive.
Adjacent Track Angle
The angle between two adjacent ground tracks at the Equator measured from the satellite position is also useful to design the payload because it defines the required field of view of a camera, for example. We can compute it using the function ground_repeating_orbit_adjacent_track_angle:
SatelliteAnalysis.ground_repeating_orbit_adjacent_track_angle — Function
ground_repeating_orbit_adjacent_track_angle(a::T1, e::T2, i::T3, orbit_cycle::Integer; kwargs...) where {T1 <: Number, T2 <: Number, T3 <: Number} -> TCompute the adjacent track angle [rad] at Equator in a ground repeating orbit measured from the satellite position. The orbit is described by its semi-major axis a [m], eccentricity e [ ], inclination i [rad], and orbit cycle orbit_cycle [day].
Internally, this function uses the precision obtained by promoting T1, T2, and T3 to a floating-point number T.
Keywords
perturbation::Symbol: Symbol to select the perturbation terms that will be used. It can be:J0,:J2, or:J4. (Default::J2)m0::Number: Standard gravitational parameter for Earth [m³ / s²]. (Default:GM_EARTH)J2::Number: J₂ perturbation term. (Default:EGM_2008_J2)J4::Number: J₄ perturbation term. (Default:EGM_2008_J4)R0::Number: Earth's equatorial radius [m]. (Default:EARTH_EQUATORIAL_RADIUS)we::Number: Earth's angular speed [rad / s]. (Default:EARTH_ANGULAR_SPEED)
Extended help
A ground repeating orbit is any orbit that the number of revolutions per day is a rational number. Hence, this type of orbit repeats its ground trace after a finite number of days.
The information orbit_cycle is redundant given that we have a, e, and i. However, it is necessary to improve the algorithm precision. Otherwise, the orbit_cycle must be obtained by computing the orbit period using a, e, and i and then converting it to a rational number, leading to numerical problems.
Throws
ArgumentError: Iforbit_cycleis not positive.
Examples
The Sun-synchronous orbit of the Amazonia-1 mission repeats its ground track after 5 days with 14 + 2/5 revolutions per day. The distance [km] between two adjacent ground tracks at the Equator is:
julia> a = 7130.982e37.130982e6julia> e = 0.0011110.001111julia> i = 98.410 |> deg2rad1.7175785168876196julia> ground_repeating_orbit_adjacent_track_distance(a, e, i, 5) / 1000543.812020223504
Hence, the swath of the camera must be larger than this value to avoid gaps in the coverage. The angle [°] between two adjacent ground tracks measured from the satellite is:
julia> ground_repeating_orbit_adjacent_track_angle(a, e, i, 5) |> rad2deg39.42560168754063
The function design_sun_sync_ground_repeating_orbit lists all the Sun-synchronous, ground-repeating orbits in a range of orbit cycles together with those two quantities. See Sun-Synchronous Orbits for more information.