30-04-2021



By: Shawn Gano

SGP4 is a Simplified General Perturbations mathematical model, which is used to calculate the position of satellites relative to the Earth. The most frequently used model is SGP4, which is used with Two-Line Element (TLE) sets provided by NORAD and NASA. In this video i give a small introduction to SGP4,TLE and how a satellite orbit can be visualized.Code is available at https://pyfiddle.io/fiddle/f6240a0e-a. SGP4 Orbit Determination David A. Vallado† Center for Space Standards and Innovation, Colorado Springs, Colorado, 80920 Paul Crawford‡ University of Dundee, Dundee, UK In 2006, an updated version of SGP4 was presented for general use. The propagation routine relies.

The SGP4 algorithm, ported to Rust from the reference Celestrak implementation. The code was entirely refactored to leverage Rust's algebraic data types and highlight the relationship between the implementation and the reference mathematical equations. The numerical predictions are almost identical to those of the Celestrak implementation.

JSatTrak is a Satellite tracking program written in Java. It allows you to predict the position of any satellite in real time or in the past or future. It uses advanced SGP4/SDP4 algorithms developed by NASA/NORAD or customizable high precision solvers to propagate satellite orbits. The program also allows for easy updating of current satellite tracking data via CelesTrak.com. Because this application was written in Java, it should run on almost any operating system or directly off the web using java web start!

To help get you started: (new v4.1.5 demo files) some older demo screenshots and saved files.

New Features in Version 4.2

  • 2D Map: added options for drawing line widths (default = 2.0) and font size for labels (default = 12)
  • 2D Map: Changed 2D image map scaling default to smooth (looks a lot better)
  • 2D Map: Added 4 new higher resolution 2D Earth image maps: Earth_bathymetry_4k.jpg, Earth_no_clouds_8k.jpg, Earth_with_clouds_4k.jpg, Earth_no_ice_or_clouds_4k.jpg
  • 2D Map: Change default 2D Earth image map to: Earth_bathymetry_4k.jpg
  • 2D Map: Change default night fill color to full black
  • 2D Map: Change default night fill alpha level to 0.6f
  • 2D Map: change default background color to full black
  • (beta) add ability to go full screen exclusive mode for 2D map. Added option in the windows menu (for currently selected selected 2d window). Known issues: problems escaping from full screen. Escape key listener/binding doesn't seem to be working.
  • Satellite Browser: Added 9 new sub categories (TLE data sets) (v4.2.2)

New Features in Version 4.0/4.1 (Screen shot on Left)

  • ECI plane grid visualization (3D) (v4.1)
  • Custom Satellite node to load ephemeris from a file (v4.1)
  • Many bug fixes (v4.0/4.1)
  • Increased accuracy in coordinate system transformations (v4.0)
  • New SGP4 Propagator based on the Center for Space Standards & Innovation (CSSI) version [ref: Vallado 2008] (v4.0)
  • 3D sun shading effects (World Wind) (v4.0)
  • More 3D view options
  • Coordinate system selection for the satellite information dialog (J2000, TEME, MOD, TOD) (v4.0)
  • Relicenced under LGPL v3 (v4.0)
  • Saved files use zip compression resulting in significantly smaller file sizes (v4.0)
  • NOTE: File format has changed, this version will not open the saved scenarios from older versions.
Vallado sgp4

Features

Sgp4 xp

Requires Java 1.6 - and uses NASA's World Wind Java SDK (included) and JOGL for 3D rendering (included for win).

  • Real-time and non-real time tracking modes
  • Orbital elements for over 3,000 satellites which are easily updated
  • Ground stations: 800+ built in and the ability to create custom locations
  • Tracking tool - includes tracking angles, polar plotting, and pass predictions (visible and radar) with elevation constraints
  • 2D ground track display
  • 3D globe with streamable high resolution imagery via NASA's World Wind SDK
  • Capture 3D animations
  • Custom Satellites using a mission designer interface with solver loops to allow for modeling of maneuvers
  • Custom high precision propagation - 4th, 8th, and adaptive 7-8th order Runge-Kutta methods
  • XML saving/loading of scenarios
  • Command console using BeanShell
  • Plugin capabilities using bean shell scripts
  • Remote command server (and client) for sending commands to the application remotely over a TCP/IP connection
  • Earth Coverage Analysis (screenshot, movie) (v3.2)
  • Create movies of any window or entire app (v3.2)
  • 3D model loader and new model centered view mode (ISS example) (v3.5)
  • Full screen exclusive mode for 3D windows (v3.5)
  • Nimbus look and feel support (screenshot) for java 1.6 update 10 or greater (v3.5)
  • More 2D map images and ability to load customized maps (v3.5)
  • Added 2D Earth lights night image effect (v3.5)
  • Run script without displaying GUI (v3.6)
  • TLE data importing and user defined datasets (see the readme in data/tle_user) (v3.7)

Current Version

  • Version 4.2.2 (30 July 2019 - Added new TLE sets): Any OS Executable jar [old: Web Start(v4.0)]

For windows if you have a 32-bit version of Java installed - copy the files in the 'win32' directory into the main directory (overwriting the files) to get the 3D windows to work properly.

For windows just download the above file, unzip, and run the .exe. To run the executable jar on any other OS download and install JOGL for your OS and run the jar with the following command line options: java -Djava.library.path='/path/to/jogl/Libraries/' -jar JSatTrak.jar

Note: the executable download contains the JOGL binaries for 64-bit windows and for Mac OSX, if you are using a different platform please download the corresponding JOGL binaries and place them in the main folder (mac JOGL binaries).

Note: For mac / OSX (Mavericks,Yosemite) to get the 3D view to work you must use Apple's version of Java (which gets uninstalled after upgrading the OS). After installing that just use the included launcher (JSatTrak_Mac.app) to run JSatTrak.

Note: for Linux (or other Systems):
(1) download the JOGL file for your architecture from https://jogamp.org/deployment/archive/master/jogl-old-1.1.1/
(2) download the gluegen file for your architecture from https://jogamp.org/deployment/archive/master/gluegen-old-1.0b6/
(3) unzip the files 'jogl-natives-linux-.jar' and 'gluegen-rt-natives-linux-.jar'
(4) move the following files to the JSatTrack main folder: libjogl_awt.so, libjogl_cg.so, libjogl.so, libgluegen-rt.so

Old Versions

  • Version 4.2.1 (7 Nov 2018 - removed Shuttle TLEs): Windows Exe/Any OS Executable jar
  • Version 4.2.0 (16 Aug 2018 - 2D map updates): Windows Exe/Any OS Executable jar
  • Version 4.1.11 (21 Feb 2017 - Added Iridium NEXT TLE data, updates for java 7/8, bug fixes): Windows Exe/Any OS Executable jar
  • Version 4.1 (10 July 2009): Web Start, Windows Exe/Any OS Executable jar
  • Version 4.0 (21 June 2009): Web Start, Windows Exe/Any OS Executable jar
  • Version 3.7.6 (24 Mar 2009): Web Start, Windows Exe/Any OS Executable jar
  • Version 3.6.2 (11 Jan 2009): Web Start, Windows Exe/Any OS Executable jar
  • Version 3.5.0 (7 August 2008): Web Start, Windows Exe/Executable jar
  • Version 3.2.0 (9 May 2008): Web Start, Windows Exe, Executable jar
  • Version 3.1.0 (22 Mar 2008): Web Start, Windows Exe, Executable jar
  • Version 3.0.2 (13 Feb 2008): Web Start, Windows Exe, Executable jar
  • Version 2.0: Web Start, Windows Exe, Executable jar (any OS - needs Jogl)
  • Version 1.1: Web Start, Windows Exe, Executable jar (any OS)

Apache License v2.0: JSatTrak Version 4.1.4 and up are now maintained on GitHub: https://github.com/sgano/JSatTrak (started 27 Feb 2013)

Sgp4 Equations

Sgp4 code

JSatTrack-4.0-src.zip, JSatTrack-4.1-src.zip

JSatTrack-3.7.6-src.zip, JSatTrack-3.5.0-src.zip, JSatTrack-3.2.0-src.zip, JSatTrack-3.1.1-src.zip

(Created using the NetBeans IDE)

(old version 4.1.3 and lower) Get the latest source from SourceForge using a Subversion client.

If you like this program or have questions drop me a line:
e-mail: shawn[at]gano.name
My homepage

Sgp4 Vallado

  • LATEST v4.1.5 - Interface (A-Train Constellation)
  • LATEST v4.1.5 - Interface (ISS)
  • Earth Coverage Analysis (screenshot, movie)

Sgp4 Propagator

  • Hohmann Transfer (Coming Soon!)