Find a Guide

Orbital Mechanics - Orbit Parameters

Orbit Parameters

All satellites, planets, moons, and stars move in ellipses. In order to uniquely describe the ellipse a body is in, we must obtain 6 parameters. Let's start with the first two.

The first two parameters deal with the size and shape of the orbit. The semi-major axis (a) and the eccentricity (e) of an ellipse give the half-length of the longest axis and the relation of how circular an ellipse is, respectively. The next two parameters describe the orientation of the orbit plane with respect to the Earth Centric Inertial (ECI); they are the inclination (i) of the orbit and the right ascension of the ascending node $ \Omega $ (RAAN). Inclination is the angle between an object's orbit and the equatorial plane of the orbited body and RAAN is the angle from a specified reference direction. The last two parameters are the argument of periapsis ($ \omega $) and the true anomaly ($ \nu $). The argument of periapsis is the orientation of the semi-major axis in the orbital plane and the true anomaly describes where the orbiting object is.

There is a process that can be followed to find these parameters given an orbiting satellite's initial longitude and latitudes are known.

  1. Calculate 2 unit position vectors in the orbital plane of the satellite.
  2. Compute a unit vector normal to the orbital plane by taking a cross product of the the unit position vectors from step 1.
  3. Solve for a unit vector spanning the axis of nodes by taking the cross product of the normal vector from step 2 and $ \hat{k}_{ECI} = [0; 0; 1] $, which is the unit vector in the z direction of the Earth Centric Inertial (ECI).
  4. Calculate the inclination by taking the dot product of the normal vector and the ECI unit vector in the z direction.
  5. Finally, the RAAN can be found by taking the dot product of the unit vector spanning the axis of nodes and the ECI unit vector in the z direction.

We will do an example of this, but first, I want to show how one obtains the x, y, z coordinates of an object given its longitude and latitude.

Image of the Earth with the ECI coordinates superimposed overtop.

Fig. 1 - ECI Frame

In Figure 1, this shows a point in the ECI frame using only two values: the longitude ( $ \lambda $ ) and the latitude ( $ \delta $ ). Using those two values, we can get the coordinates of the object in the ECI frame.

[ 1 ]

$$ x_{ECI} = r \cos \lambda \cos \delta $$ $$ y_{ECI} = r \cos \lambda \sin \delta $$ $$ z_{ECI} = r \sin \lambda $$

Example

Now that we have the building blocks for finding these parameters, let's do an example to solidify this understanding.

A satellite was observed at $ \delta_1 = 10 W $, $ \lambda_1 = 10 N $ and $ \delta_2 = 45 E $, $ \lambda_2 = 30 N $. We must find the inclination and RAAN.

One thing that should be noted is if a longitude/latitude is north or east, it is considered positive, whereas if it is south or west, it is negative. With that in mind, we can start off by using Eqs. (1) to calculate the two unit position vectors, $ \vec{v_1} $ and $ \vec{v_2} $.

$$ v_1 = \begin{Bmatrix} 0.9698 \\ -0.1710 \\ 0.1736 \end{Bmatrix} $$
$$ v_2 = \begin{Bmatrix} 0.6124 \\ 0.6124 \\ 0.5000 \end{Bmatrix} $$

Then the normal unit vector can be calculated by taking the cross product of these vectors.

$$ N = v_1 \times v_2 = \begin{Bmatrix} -0.1918 \\ -0.3786 \\ 0.6986 \end{Bmatrix} $$

Next, the spanning axis of nodes must be solved for by taking the cross product of the ECI unit vector in the z direction and the normal unit vector.

$$ N_{an} = \begin{Bmatrix} 0 \\ 0 \\ 1 \end{Bmatrix} \times \begin{Bmatrix} -0.1918 \\ -0.3786 \\ 0.6986 \end{Bmatrix} = \begin{Bmatrix} 0.3786 \\ -0.1918 \\ 0 \end{Bmatrix} $$

We can now solve for the inclination of the orbit.

[ 2 ]

$$ i = \cos^{-1} \frac{N•\{0,0,1\}}{\text{norm}(N)} $$
$$ i = 31.27° $$

Lastly, we can solve for RAAN.

[ 3 ]

$$ \Omega = \tan^{-1} \frac{N_{an}(2)}{N_{an}(1)} $$
$$ \Rightarrow \tan^{-1} \frac{-0.1918}{0.3786} $$
$$ \Omega = -26.87° $$

MATLAB Code

You can write a function to calculate inclination and RAAN like the problem above, and you can use the following function below as a guide!
Note the function below uses the MATLAB package containing the function cprintf() which allows you to color command window outputs. This package can be found for free here.

matlab

or_orin.m

In the Flight Vehicle Dynamics guide, there will be some MATLAB code integrated within for enhanced learning. If you are new to MATLAB or would like a refresher, I recommend checking out the Ian's Guide on Intro to MATLAB! MATLAB is not needed to understand the material, but it will make things certainly easier if you have it available.

Find a Guide