Re: satellite orbit computation in IDL [message #38449 is a reply to message #38329] |
Fri, 05 March 2004 15:42   |
Roberto Monaco
Messages: 11 Registered: August 2002
|
Junior Member |
|
|
Cedric,
I took an existing C implementation of the SGPSDP orbital model by NORAD (I
can't remember the link now) and wrapped it into a DLL, so that I could use
from IDL (under Windows). I don't have this in an FTP server, but if you are
interested I can send you the DLL, DLM, and a test IDL program (that shows how
to use it).
To get meaningful information you need an actualized TLE file for the
satellite or satellites you are interested in, which you can get from
http://www.celestrak.com
There are two main functions from IDL:
- SGPSDP_INIT(tle_file, satellite_ID)
- SGPSDP_GETSAT (date_time, satellite_structure)
You call the SGPSDP_INIT to load the satellite orbital parameters from the TLE
file (for a certain satellite), and to do some initializations. After this you
call SGPSDP_GETSAT as many times as needed, to get the geographical position
of the satellite (latitude, longitude, altitude) for a certain time (Julian
date). This last function assumes a satellite structure which is shown in the
IDL test program. SGPSDP_GETSAT also copies the previous time and position in
the structure for convenience of use (I thought it was good to keep both,
previous call and current call data together). You need to call SGPSDP_INIT
again only if you change satellite, or TLE file, or both.
There is a third function that defines the position of an observer, needed to
determine if the satellite is eclipsed or under sun light from the observer's
position (if you care about this):
- SGPSDP_SETOBS(observer_data)
I don't have a documentation page (sorry), but I think all the parameters are
shown in the test program.
I tested this against data provided in NORAD documentation, also using Dr.
Kelso TrakStar program (http://www.celestrak.com), and finally with STK. It
looks OK, but I can't honestly say that I have tested it thoroughly.
Regards,
Roberto Monaco
rmonaco@coresw.com
|
|
|