Chapter 3: The Geostationary Orbit

Example 3.1, Page 71

In [1]:
import math
#Variable Declaration

Pss=-90   #Location of geostationary satellite(degrees)
PE=-100   #Longitude of the earth station antenna(degrees)
LE=35     #Latitude of the earth station antenna(degrees)

#Calculation

B=PE-Pss   #Angle between planes containing a and c(degrees)
b=math.acos(math.cos(B)*math.cos(LE)) #Angle of plane containing b(radians)
A=math.asin(math.sin(abs(B*3.142/180))/math.sin(b)) #Angle between planes containing b and c (radians)

A=A*180/3.142  #Converting A into degrees
#LE>0 and B<0 by observation
Az=round(180-A,2)  #Azimuth angle(degrees)

#Result

print "The azimuth angle for the given earth station antenna is", Az,"degrees"
The azimuth angle for the given earth station antenna is 164.55 degrees

Example 3.2, Page 73

In [2]:
#Variable Declaration

R=6371  #Radius of earth (km)
aGSO= 42164  #Circumference of earth(km)
b=0.632 #values of b from Example 3.1 (radians)
#Calculation
import math
d=math.sqrt(R**2+aGSO**2-2*R*aGSO*math.cos(b)) #Range of earth station antenna (km)
El=math.acos(aGSO*math.sin(b)/d)*180/math.pi  #Elevation angle(degrees)
d=round(d)
El=round(El)
#Results

print "The range of earth station antenna is", d,"km"
print "Elevation angle is", El,"degrees"
The range of earth station antenna is 37214.0 km
Elevation angle is 48.0 degrees

Example 3.3, Page 77

In [1]:
import math
#Variable Declaration

LE=49  #Latitude of earth station(degrees)
aGSO=42164  #Circumference of earth(km)
R=6371  #Radius of earth(km)

#Calculation
d=(R**2+aGSO**2-2*R*aGSO*math.cos(LE*3.142/180))**0.5  #Range of earth station antenna

El0=math.acos(aGSO*math.sin(LE*3.142/180)/d)  #Elevation angle(radians)

El0=El0*180/3.142  #Converting El0 to degrees

delta=round(90-El0-LE)  #Angle of tilt required for polar mount

#Results


print "The Angle of tilt required for polar mount is", delta,"degrees"
The Angle of tilt required for polar mount is 7.0 degrees

Example 3.4, Page 78

In [2]:
import math
#Variable Declaration

LE=48.42  #Latitude of earth station(degrees)
PE=-89.26 #Longitute of earth station(degrees)
Elmin=5  #Minimum angle of elevation(degrees)
aGSO=42164  #Circumference of earth(km)
R=6371  #Radius of earth(km)

#Calculation

Smin=90+Elmin
S=math.asin(R*math.sin(Smin*3.142/180)/aGSO)*180/math.pi  #Angle subtended at the satellite(degrees)

b=180-Smin-S   #Angle of plane containing b(degrees)
B=math.acos(math.cos(b*3.142/180)/math.cos(LE*3.142/180))*180/math.pi#Angle between the planes containing a and c(degrees)

#Results

print "The satellite limit east of the earth station is at", round(PE+B),"Degrees approximately"
print "The satellite limit west of the earth station is at", round(PE-B),"Degrees approximately"
The satellite limit east of the earth station is at -20.0 Degrees approximately
The satellite limit west of the earth station is at -158.0 Degrees approximately

Example 3.5, Page 80

In [1]:
import math
#Variable Declaration
y=2000       #year
d=223.153    #day
n=1.002716   #mean motion(1/day)
w=272.5299   #rate of regression of nodes(degrees)
e=0.000352   #Eccentricity
W=247.9161   #Rate of regression of line of apsides(degrees)
M=158.0516   #Mean Anomaly at given time
JD00=2451543.5  #Julian days for Jan 0.0 2000

#Calculation

JD=JD00+d  #Julian days for given day
JDref=2415020   #Reference Julian days
JC=36525
T=round((JD-JDref)/JC,4)  #Time in julian Centuries
UT=d-223  #Universal Time, fraction of the day
GST=(99.6910+36000.7689*T+0.004*T**2)*3.142/180  #GST(radians)
UT=2*math.pi*UT #Universal time converted to fraction of earth rotation (radians)

GST=(GST+UT)*180/3.1421


GST=(math.fmod(GST,360))#using fmod multiplr revolutions are removed (degrees)
GST=round(GST,3)
v=M+2*e*M  #True Anomaly(degrees)

Pssmean=W+w+M-GST #longitude for INTELSAT(degrees)
Pssmean=math.fmod(Pssmean,360) #fmod removes multiple revolutions
Pss=w+W+v-GST#longitude for INTELSAT(degrees)
Pss=math.fmod(Pss,360)#fmod removes multiple revolutions

#Results
print "The longitude of INTELSAT 805 is", round(Pss,3),"Degrees"
print "The average longitude of INTELSAT 805 is", round(Pssmean,3),"Degrees"
The longitude of INTELSAT 805 is 304.625 Degrees
The average longitude of INTELSAT 805 is 304.514 Degrees