Article View: sci.space
Article #132GPS orbital information
From: Shane Gustafson
Date: Fri, 30 Oct 1992 15:56
Date: Fri, 30 Oct 1992 15:56
104 lines
4614 bytes
4614 bytes
Hello, I am looking for an algorithm that while generate the orbital positions of a GPS satellite. I am trying to generate an ephemeris file. I have one algorithm but I can't not get the output data to match the values distributed by the U.S. Coast Guard. The information I have is as follows: the Epoch, the semi-major axis, the eccentricity, the right ascension, the argument of perigee, and the mean anomaly. The algorithm I am using is coming from the book ""Satellite Communications" byTimothy Pratt and Charles Bostian copyright 1986 John Wiley and Sons. 1. calculate the angular_velc angular_velc = 1/semi-major_axis * sqrt(MU/semi_major_axis)*Radians_to_Degrees. MU = 398601.352 2. find the time of perigee time_of_perigee = Epoch_date_converted_to_seconds - mean_anomaly/angular_velc 3. find the mean anomaly at the analysis date. mean_anomaly = angular_velc*(analysis_date - time_of_perigee) 4. find E - eccentric anomaly mean_anomaly = E - sin(E); solved in an iterative approach and is around mean_anomaly + or - 1 5. find r0 - radius from the origin of the coor-system to the satellite. r0 = semi-major_axis*(1.0 - eccentricity*cos(E)) 6. find the true_anomaly I solved this equation for the true_anomaly temp = ((semi-major_axis)/(r0*eccentricity))*(1.0 - eccentricity*eccentricity)) - 1.0/eccentricity true_anomaly = acos(temp) 7. find the x0 and y0 values. There is no z component because the equations are derived in the z plane x0 = r0*cos(phi) y0 = r0*sin(phi) the last part solves for the xi,yi,zi triplet. This is the triplet I am using to compare my results from the program called GSS. I am getting x and z values to be very close to the output from the program and I am not getting the y values close at all. The next part is complex because I had to solve the matrix to get the equations. I am going to use some shorthand to simplify the equations. a = cos(right_ascension) b = sin(right_ascension) c = cos(arg_of_perigee) d = sin(arg_of_perigee) e = cos(inclination) f = sin(inclination) a11 = a*c - b*e*d b11 = -a*d - b*e*c the matrix c11 = -b*d + b*e*c |xi| | a11 b11 na | |x0 | d11 = a*d + b*e*c |yi| = | c11 d11 na | |y0 | e11 = d*f |zi| | e11 f11 na | |z0 = 0| f11 = c*f xi = a11*xo + b11*y0 yi = c11*xo + d11*y0 zi = e11*x0 + f11*y0 after implementing the algorithm I ran the program I was getting out data that looked like the following x0 = 15254.499(km) y0 = -21551.16(km) xi = -17367.91923 yi = -829.09 zi = 15610.593 From the GSS program xi = -17207.79 yi = 12394.955 zi = 15732.192 I have compared this results with the U.S. Coast Guard and they seem close, so I can assume my algorithm has the problem. I solved for the c11 and d11 coefficient and should be getting results for c11 to be -.0057 and d11 to be-.57. After doing some manipulation of changing the equations the best I could do was to come up with a c11 = -.0047 and a d11 = - .642 and this brought my yi to be 13764.811 still far away from the expected. I have run with different data at different time and still get the same type of results. The x and z are good but the y is wrong. I need some help in figuring about a different algorithm that will work and give me close data are find out what I am doing wrong in this algorithm. Also, in the Yuma file format I need to know how to convert the Right Ascen at TOA which is from the GM(Greenwich meridian) to the right ascen from the Vernal Equinox. And how to convert the Mean anom in yuma format to the almanac format. In the case of the right ascension value it is 26.7 degrees different from the almanac file I am using and the Mean anon is about 59.9 degrees different. This causes a problem because the algorithms assume the angles from the VE not the GM. Any help these areas would be very useful. I am starting to run into deadlines and need all the help I can get. If you post the response to the net for the others to gain information, please email me also. I don't get the time to read much news and would not like the response to get lost. thank you shane gustafson korin@eng.umd.edu
Technical Details
Message-ID:
<1992Oct30.155600.20646@eng.umd.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!dtix!darwin.sura.net!mojo.eng.umd.edu!korinShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!dtix!darwin.sura.net!mojo.eng.umd.edu!korin From: korin@eng.umd.edu (Shane Gustafson) Newsgroups: sci.space,sci.physics Subject: GPS orbital information Message-ID: <1992Oct30.155600.20646@eng.umd.edu> Date: 30 Oct 92 15:56:00 GMT Organization: Project GLUE, University of Maryland, College Park Lines: 104