Java Astrodynamics Toolkit (JAT)

Overview

JAT is a is a library of components to help users create their own application programs to solve problems in Astrodynamics, mission design, spacecraft navigation, guidance and control using Java or Matlab. It is not an application program, although there are a number of demo programs included. You have to be able to write Java or Matlab programs to use JAT.

Demo programs are available to demonstrate the capabilities of JAT as well as to allow new users to quickly learn how to make use of the built -in features of JAT.

JAT is an open source project hosted by SourceForge.net: JAT SourceForge Project Page

Introduction

After using COTS Astrodynamics software, we have learned that no one application can satisfy all the needs of a researcher in the field of Astrodynamics. Therefore, we decided that JAT should be a software component library so that the users could have flexibility to create their own applications. However, since we are asking users to develop their own applications, the software components must be easy to integrate and use.

The choice of the programming language is usually a design time issue. However, in this project, the Java programming language was chosen for the following reasons:

  1. Java is the preferred programming language of the initiators of the project
  2. The initiators of the project already have a significant amount of source code in Java for the project
  3. Java microchips might enable use of this software for spacecraft control in the future.
  4. Java is faster than Matlab.
  5. Java is portable. There is no need to modify source code to run on different platforms.
  6. Java is object oriented, making it easier to reuse and maintain code.
  7. It is easier to write bug-free code in Java because there is no pointer arithmetic and the Java compiler prevents a lot of errors.
  8. Javadoc provides an easy way to document the code so that it can easily be used by others.
  9. Everything needed to develop Java is available for free!

Features

bullet

Astrodynamics constants

bullet

Time transformations

bullet

Coordinate transformations

bullet

Quaternions

bullet

Orbit element conversions

bullet

Gravity models: Two-body, Restricted three body problem, JGM-3

bullet

Attitude Dynamics

bullet

Third body effects due to sun and moon

bullet

Atmospheric drag models: Harris-Priester density model

bullet

Solar radiation pressure

bullet

Lambert Problem

bullet

Kepler Equation solver

bullet

Accurate orbit propagation

bullet

Integrators: fixed and adaptive step-size Runge-Kutta

bullet

JPL Ephemerides

bullet

Linear equation solver

bullet

Unconstrained optimization (BFGS)

bullet

Non-linear equation solvers, including Newton-Raphson and Regula Falsi

bullet

Linear Algebra (based on JAMA and JMAT)

bullet

Ground Tracks

bullet

3-D Visualization for orbits and trajectories

bullet

GPS, INS and integrated GPS/INS simulation

Planned Features

bullet

Constrained nonlinear optimization

bullet

Gravity models: N-body

bullet

Orbit estimation: batch and Kalman filter methods

bullet

Trajectory optimization: Direct and indirect methods for continuous thrust

bullet

General Utility classes for optimal control using thrust vectors and state-space models

bullet

General Utility class for Mission Design with multiple maneuvers and launch windows

bullet

Flyby trajectory design

bullet

Genetic algorithm for optimization

bullet

N-body impulsive transfer problems.

bullet

Optimal attitude dynamics

bullet

Station-keeping

Licensing

            JAT is free software distributed under the terms of the GNU General Public License. You can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. The one thing we ask is if you use JAT software to help you write a thesis, dissertation, journal article or conference paper or presentation, please remember to acknowledge the JAT Project.

Copyright (c) 2002  The JAT Project. All rights reserved.

 

SourceForge.net Logo