1 INTRODUCTION
In trying to characterise a satellite in geosynchronous orbit from light curves it is usually necessary to know the direction from which the Sun is shining on the satellite. This document shows how this may be computed.
2 SUN VECTORS
With reference to the diagram below it can be seen that the needed vectors are (1) the vector from the centre of the Earth to the Sun (centre) and (2) the vector from the satellite to the centre of the Earth. Vector addition will then give us the vector from the Sun to the satellite.
The reference frame will be the Earth equatorial frame with unit vectors i in the equatorial plane pointing from Earth centre along the zero longitude direction, j also in the equatorial plane pointing from Earth centre toward the 90 degree longitude and k along the Earth polar axis pointing toward the north.
3 ALGORTIHMS TO COMPUTE THE EARTH SUN VECTOR
The Astronomical Almanac provides low precision formula for the Sun's coordinates. The precision is 0.01 degrees between the years 1950 to 2050. The time argument in these formulae is, the number of days from 00UT on 01 January 2000. This is commonly written as n = J2000.0
We then have the apparent coordinates of the Sun given by:
Mean longitude of the Sun corrected for aberration:
Mean anomaly:
Then put L and g in 0 to 360 degrees by adding multiples of 360 degrees.
Ecliptic longitude:
Ecliptic latitude:
Obliquity of the ecliptic:
Distance of the Sun from the Earth in AU:
Equatorial coordinates of the Sun in AU:
A simple QBASIC program to implement the above algorithm is given in the
code below:
The vector from the geosynchronous satellite to the centre of the Earth is:
The figure below shows the relationship between the three vectors involved in the problem.
'Solar Equatorial Rectangular Coordinates
DECLARE FUNCTION J2000! (yr!, m!, d!, T!)
pi = 3.14159265#
dr = pi / 180! 'degrees to radians
f$ = " ## ##.#### ##.#### ##.#### " 'print format
INPUT "YEAR"; yr
INPUT "MONTH NUMBER"; m
PRINT "SOLAR EQUATORIAL RECTANGULAR COORDINATES"
PRINT USING "Year - #### Month - ## Time - 0000 UT"; yr; m
PRINT "Day X-coord Y-coord Z-coord"
Compute:
T = 0 '0000 UT
FOR d = 1 TO 31 'cycle through days of the month
n = J2000(yr, m, d, T) 'days since 01 Jan 2000
L = 280.461 + .9856474 * n
L = L - INT(L / 360) * 360
g = (357.528 + .9856003 * n) * dr
g = g - INT(g / 2 / PI) * 2 * PI
la = L + 1.915 * SIN(g) + .02 * SIN(2 * g)
lar = la * dr
ep = (23.439 - .0000004 * n) * dr
R = 1.00014 - .01671 * COS(g) - .00014 * COS(2 * g)
x = R * COS(lar)
y = R * COS(ep) * SIN(lar)
z = R * SIN(ep) * SIN(lar)
PRINT USING f$; d; x; y; z
NEXT d
END
FUNCTION J2000 (yr, m, d, T)
n = INT(yr + FIX((m - 9) / 7))
n = -INT(3 * (INT(n / 100) + 1) / 4)
n = n - INT(7 * (INT((m + 9) / 12) + yr) / 4)
J2000 = n - 730516.5 + d + 367 * yr + INT(275 * m / 9) + T / 24
END FUNCTION
5 THE GEOSAT VECTOR
Ge = -r cos λ i - r sin λ j
where r = 42.164 km
i is a unit vector in the direction from the centre of the Earth to the zero degree longitude point on the Earth's equator.
j is a unit vector at right angles to i at a longitude of 90 degrees
6 PUTING IT TOGETHER

The Sun-Geosat vector is given by
where Rs = Xi + Yj + Zk
and X,Y,Z are the coordinates given by the QB program.
Australian Space Academy