Systems Tool Kit
STK 10 GUI screenshot | |
Developer(s) | Analytical Graphics, Inc. |
---|---|
Stable release | 10.0 / November 2012 |
Operating system | Windows |
Type | Technical computing |
License | Proprietary |
Website | STK product page |
Systems Tool Kit (formerly Satellite Tool Kit), often referred to by its initials STK, is a physics-based software package from Analytical Graphics, Inc. that allows engineers and scientists to perform complex analyses of ground, sea, air, and space assets, and share results in one integrated solution. At the core of STK is a geometry engine for determining the time-dynamic position and attitude of objects ("assets"), and the spatial relationships among the objects under consideration including their relationships or accesses given a number of complex, simultaneous constraining conditions. STK has been developed since 1989 as a commercial off the shelf software tool. Originally created to solve problems involving Earth-orbiting satellites, it is now used in the aerospace and defense communities and for many other applications.
AGI states that STK has more than 40,000 installations at more than 800 global organizations such as NASA, ESA, CNES, DLR, Boeing, JAXA, ISRO, Lockheed Martin, Northrop Grumman, EADS, DOD, and Civil Air Patrol.
AGI posts Case Studies here of its customers in the areas of:
- Space situational awareness
- Space missions
- Aircraft missions (including UAVs commonly known as drones)
- Missile defense
- ISTAR/ISR/C4ISR
- Electronic systems and communications
STK can be downloaded for free and has paid upgrade modules for more complex capability. As of release 10, the free version of STK includes 3D visualization, previously a paid upgrade module.
History
In 1989, the three founders of Analytical Graphics, Inc. - Paul Graziani, Scott Reynolds and Jim Poland, left GE Aerospace to create Satellite Tool Kit (STK) as an alternative to bespoke, project-specific aerospace software.
The original version of STK ran only on Sun Microsystems computers, but as PCs became more powerful, the code was converted to run on Windows.
STK was first adopted by the aerospace community for orbit analysis and access calculations (when a satellite can see a ground-station or image target), but as the software was expanded, more modules were added that included the ability to perform calculations for communications systems, radar, interplanetary missions and orbit collision avoidance.
The addition of 3D viewing capabilities led to the adoption of the tool by military users for real-time visualization of air, land and sea forces as well as the space component. STK has also been used by various news organizations to graphically depict current events to a wider audience, including the deorbit of Russia's Mir Space Station, the Space Shuttle Columbia diasaster, the Iridium/Cosmos collision, the asteroid 2012 DA14 close approach and various North Korea missile tests.
As of version 10, the software underwent a name change from Satellite Tool Kit to Systems Tool Kit.
Interface
The STK interface is a standard GUI display with customizable toolbars and dockable maps and 3D viewports. All analysis can be done through mouse and keyboard interaction.
In addition, there is a scripting interface named Connect that enables STK to act within a client/server environment (via TCP/IP) and is language independent. Users on Windows have the option of using STK programatically via OLE automation.
Each analysis or design space within STK is called a scenario. Within each scenario any number of satellites, aircraft, targets, ships, communications systems or other objects can be created. Each scenario defines the default temporal limits to the child objects, as well as the base unit selection and properties. All of these properties can be overridden for each child object individually, as necessary. Only one scenario may exist at any one time, although data can be exported and reused in subsequent analyses.
For each object within a scenario, various reports and graphics (both static and dynamic) may be created. Relative parameters, between one object and another can also be reported and the effect of real-world restrictions (constraints) enabled so that more accurate reporting is obtained. Through the use of the constellation and chains objects, multiple child objects may be grouped together and the multipath interactions between them investigated.
AGI also offers software development kits for embedding STK capabilities into third-party applications or creating new applications based on AGI technology.
Modules
STK is a modular product, in much the same way as MATLAB allows users to add modules to the baseline package to enhance specific functions.
Integration
STK can be embedded within another application (as an ActiveX component) or controlled from an external application (through TCP/IP or Component Object Model (COM)). Both integration techniques can make use of the connect scripting language to accomplish this task. There is also an object model for more "programmer oriented" integration methodologies. STK can be driven from a script that is run from the STK internal web browser in the free version of the tool. To control STK from an external source, or embed STK in another application requires the STK/Integration module.
Connect
Since connect is a messaging format, it has the advantage of being completely language independent. This allows applications and client tools to be created in the programming language of the user's or developer's choice. In practice, as long as it is possible to create a socket connection, send information through that socket and then receive information that way then STK can be controlled with connect using that language.
Applications have been developed in C, C++, C#, Perl, Visual Basic, VBScript, Java, JavaScript and MATLAB. Examples can also be found in the STK help files or downloaded from the AGI website.