Improving Swift

Improving Swift

David Kaufmann, Southwest Research Institute
Hal Levison, Southwest Research Institute

We describe progress made to date in our effort to develop SWIFTER, a significantly redesigned and enhanced version of the SWIFT software package. SWIFT has been developed over the last decade by PI Hal Levison and CoI Martin Duncan to perform long-term simulations of planetary systems. Such systems consist of a dominant central body, a set of mutually gravitationally interacting smaller bodies, and a set of test particles that feel the gravitational influence of the massive bodies but do not affect each other or the massive bodies. SWIFT includes a number of symplectic integrators based on various algorithms such as the mapping method of Wisdom and Holman (WHM), the Regularized Mixed Variable Symplectic (RMVS) method of Levison and Duncan, the fourth-order T+V Symplectic (TU4) method of Candy and Rozmus, and the Symplectic Massive Body Algorithm (SyMBA) of Duncan, Levison, and Lee. It also includes a non-symplectic integrator based on the method of Bulirsch and Stoer.

Because SWIFT was originally developed only for the authors' personal use, no special effort was made to design a general-purpose tool for the astronomical community. Its adoption by the community is an unexpected byproduct of the success of SWIFT. Further, the authors did not have the resources to optimize the code. One of the main goals of this project is to rewrite SWIFT to address these issues. This rewrite is largely complete. We have chosen to implement the new software, called SWIFTER, in Fortran 90. This has allowed us to reorganize the internal storage of program data into structures that not only maintain (and in some cases improve on) the efficiency of the original SWIFT but also will permit effective parallelization of the code in the next year of the project. Further, the choice of Fortran 90 minimizes any language difficulties for the current user base in the transition to SWIFTER from SWIFT, which is implemented in Fortran 77. Other enhancements include more user-friendly input and output and the inclusion of the widely-used 15th-order RADAU integrator. The final step in the rewrite process will be to complete the new version of SyMBA.

We are currently testing a new version of SyMBA based on a set of canonical coordinates that holds promise in eliminating a problem the current version of SyMBA has handling close encounters between zero (or very low) mass test particles and the Sun. Inclusion of these types of particles is important in simulating planet formation scenarios, for example. Pending successful testing, this new SyMBA is likely to become the standard version in SWIFTER.

Finally, we present an early version of the Java-based graphical data mining and visualization tool written by CoI Mark Lewis. The choice of Java for this purpose is based largely on two factors. First, the Java language provides mechanisms for easily creating graphical content that works well across multiple platforms without source code modification. Second, the ability of Java to dynamically load in and use new classes allows users to write small routines in Java that adhere to specific interfaces and can be easily loaded into the analysis program to be used for their unique analysis requirements.

Contact Info: David Kaufmann, Southwest Research Institute
kaufmann@boulder.swri.edu