Code for the SGP4/SDP4 satellite motion model, and for manipulating TLEs (Two-Line Elements).
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore New code to extract TLEs for a specific date/time from my set of asso… Dec 18, 2017
LICENSE Initial commit Mar 16, 2016
README.md Dependence on 'lunar' library was not noted. Now it is. Thanks to you… May 4, 2018
basics.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
common.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
deep.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
dynamic.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
elem2tle.cpp Marked as being mostly obsolete. Jul 8, 2018
get_el.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
get_high.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
makefile Removed special code for parsing MPC data, in favor of using 'standar… Aug 2, 2018
mergetle.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
msvc.mak Now creates a 'sat_code.lib' and uses it for the various utilities Aug 3, 2016
msvc_dll.mak Changed DOS-style CR/LF endings to LF only Jul 1, 2016
norad.h Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
norad_in.h Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
obs_tes2.cpp Renamed 'lat_alt_to_parallax' to avoid a conflict with a similar func… Aug 2, 2018
obs_test.cpp Renamed 'lat_alt_to_parallax' to avoid a conflict with a similar func… Aug 2, 2018
obs_test.txt Input file for 'obs_test.cpp' (q.v.) Mar 16, 2016
observe.cpp Renamed 'lat_alt_to_parallax' to avoid a conflict with a similar func… Aug 2, 2018
observe.h Renamed 'lat_alt_to_parallax' to avoid a conflict with a similar func… Aug 2, 2018
out_comp.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sat_code.def Added function to convert J2000 coords to mean epoch of date, and com… Feb 26, 2017
sat_id.cpp Added option for a brief summary of which object(s) matched which art… Sep 18, 2018
sat_id2.cpp Now provides an error message if 'cgi_func.h' isn't found, directing … Jun 19, 2018
sdp4.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sdp8.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sgp.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sgp4.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sgp8.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
sm_sat.def MSVC .DEF (definition) file for building a DLL from the satellite cod… Mar 16, 2016
test.tle TLEs used in 'test2.cpp' and 'test3.cpp' (q.v.) for unit testing Mar 16, 2016
test2.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
test2.txt Expected output from 'test2.cpp' (q.v.) Mar 16, 2016
test3.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
test_out.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
test_sat.cpp Added GPL notice to headers of all source files that lacked one (most… Mar 4, 2018
tle_date.c Changed DOS/Windows-style CR/LF endings to LF only. No other changes. Jun 5, 2018
tle_out.cpp Changed DOS-style CR/LF endings to LF only Jul 1, 2016
watcom.mak Added a 'clean' section, and removed redundant 'tle_out.obj' (we link… Sep 19, 2017

README.md

sat_code

C/C++ code for the SGP4/SDP4 satellite motion model, and for manipulating TLEs (Two-Line Elements). Full details at http://www.projectpluto.com/sat_code.htm.

The only dependency is on the lunar (basic astronomical ephemeris/time functions) library. Make and make install that library before attempting to build this code.

On Linux, run make to build the library and various test executables. (You can also do this with MinGW under Windows.) In Linux, you can then run make install to put libraries in /usr/local/lib and some include files in /usr/local/include. (You will probably have to make that sudo make install.) For BSD, and probably OS/X, run gmake CLANG=Y (GNU make, with the clang compiler), then sudo gmake install.

On Windows, run nmake -f msvc.mak with MSVC++. Optionally, add -BITS_32=Y for 32-bit code.