Speaker
Description
The history of the creation of the Draper Semi-analytical Satellite Theory (DSST) started at the Computer Sciences Corporation, with support from the NASA Goddard Space Flight Center (GSFC), in the early 1970s. Then, its development continued at the Draper Laboratory in the 1980s and 1990s. Since 2001, some enhancements to the DSST have been achieved by the technical staff at the Massachusetts Institute of Technology (MIT) Lincoln Laboratory. The original DSST Fortran-77 code exists both as part of the Goddard Trajectory Determination System (GTDS) suite and as the DSST Standalone program. In addition, it can also be executed remotely through the Astrodynamics-Web-Tools service at the University of La Rioja. More recently, DSST has been re-implemented in Java, in the Orekit flight dynamics library. The open-source concept applied to the space domain attempts to provide free access to the software tools needed to operate safely and efficiently in space to all spacecraft and space-system operators. In this work, we address one of the tasks from the list proposed in the paper entitled: ''Open Source Software Suite for Space Situational Awareness and Space Object Catalog Work'' (Cefola et al., 2010): the migration of the original Fortran-77 DSST code to C/C++. In the initial stage, the original design of DSST has been maintained as much as possible, with the aim of taking full advantage of the validation and verification process developed over DSST during the last decades. Then, the parallelization of the semi-analytical theory for multicore and GPU technologies, by using the commonly available parallel programming environments, will be analyzed. We will also consider the development of a parallel DSST orbit propagator based on the Picard-Chebyshev concept. Finally, we will take into account the complexities associated with applying the new DSST C/C++ version to orbits with arbitrary central bodies, including lunar, planetary, natural-satellite, and asteroid orbiters. Part of the validation and verification process of the DSST C/C++ version will be presented here. The resolution of the incompatibilities discovered during this process is an important advance for the following stages of this project.