Date of Award

Spring 1-1-2018

Document Type


Degree Name

Doctor of Philosophy (PhD)

First Advisor

Hanspeter Schaub

Second Advisor

John Evans

Third Advisor

Daniel Kubitschek

Fourth Advisor

Steven Nerem

Fifth Advisor

Christoffer Heckman


Computer simulations of spacecraft dynamics are widely used in industry and academia to predict how spacecraft will behave during proposed mission concepts. Current technology and performance requirements have placed pressure on simulations to be increasingly more representative of the environment and the physics that spacecraft will encounter. This results in increasingly complex computer simulations. Designing the software architecture in a modular way is a crucial step to allow for ease of testing, maintaining, and scaling of the software code base. However, for complex spacecraft modeling including flexible or multi-body dynamics, modularizing the software is not a trivial task because the resulting equations of motion are fully-coupled nonlinear equations. In this dissertation, a software architecture is presented for creating complex fully-coupled spacecraft simulations with a modular framework.

One obstacle when attempting to modularize spacecraft dynamics formulations is that depending on the method used to derive the equations of motion, the state variables chosen, the choice of coordinate frames, and the assumptions made dictate the final form. Therefore, there can be an infinite number of ways to describe the equations of motion for a particular dynamics problem. This poses a problem when implementing in software because determining a pattern to modularize the equations can be difficult or sometimes impossible. This dissertation provides a solution to this problem by defining a systematic approach and a general form for developing equations of motion of spacecraft that will enable agreement between different dynamics problems and the final form of the equations of motion. The development makes minimal assumptions to make the solution applicable to a wide variety of problems commonly seen by spacecraft. Additionally, the approach is shown to be applicable to Newtonian/Eulerian mechanics and Kane's Method.

In addition to the general form for the equations of motion, this dissertation introduces a back-substitution method that analytically modularizes the equations of motion. A major issue with dynamics problems from an software architecture standpoint, is that the second order state derivatives are coupled resulting a non-diagonal system mass matrix. Breaking a part this coupling while retaining the fully-couple nature of the problem is solved by analytically manipulating the equations to solve the system mass matrix in a two-step process called the back-substitution method which allows the math to computed in a modular fashion. Additionally, energy and momentum conservation is a key tool to verify the equations of motion and software implementation are correct, and this dissertation provides a modular form for the energy and momentum calculations.

Since the development of the equations of motion can result in an infinite number of solutions, the literature is lacking on common dynamics problems solutions seen by spacecraft that agree with a common form. This results in the necessity to re-derive the equations of motion for complex problems which can be a time consuming task and is susceptible to analytical development errors. This dissertation provides ready-to-implement solutions to prevalent spacecraft dynamics problems that all conform to the general equation of motion form presented. Some examples are flexing appended bodies, fuel slosh, and imbalanced VSCMGs.

The final contribution of this dissertation is introducing a modular software architecture using the general equation of motion form, the back-substitution method, and the modularized energy/momentum calculations. This architecture is introduced by UML class diagrams and pseudo code to help explain the software implementation. The architecture allows for ease of testing, maintaining and scaling that is usually cumbersome with regards to dynamics problems. This architecture is implemented in the Basilisk astrodynamics so