Symbolic Generator-Based Efficient Multibody Dynamics Algorithm (SOMBAT) is a program that enables speedy and accurate computations that solve equations of motion of multiple bodies. Originally intended for space-based applications (i.e., solving equations for the dynamics of a cluster of flexible bodies in orbit in real time), SOMBAT can also be applied in designing drugs, enhancing and otherwise processing images, the automotive industry, and robotics. It can also be used by the Department of Defense. Its greatest strength is its ability to reduce computation time without sacrificing accuracy. Unlike programs modeled on *n*^{3} algorithms, SOMBAT accrues time savings overruns while satisfying short-turnaround requirements. Moreover, and vitally for the U.S. Space Program, the open and expandable format of SOMBAT will enable the tailoring of this program to upgrade add-on systems for new International Space Station (ISS) modules.

SOMBAT satisfies the specific need of NASA's International Space Station Program (ISSP) for a software tool to simulate the dynamics of multiple bodies with large articulating angles in orbit. Before the advent of SOMBAT, simulation software tools followed an order-of-*n*^{3} approach. One pre-SOMBAT software tool, TREETOPS (a generic configuration-independent program with an *n*^{3} algorithm) assembles equations of motion for all bodies in a configuration before solving for the dynamics at each time step. Because the size of the mass matrix (which size is an indicator of efficiency of com putation) in TREETOPS is equal to the sum of all active degrees of freedom, TREETOPS becomes prohibitively slow when the number of active coordinates increases. Clearly, TREETOPS cannot be used to perform real-time simulations for ISS applications. Once it was determined that the generic nature of such simulation software as TREETOPS was not suited to the ISSP, another solution was sought.

SOMBAT is that solution. SOMBAT uses the ISS configuration to develop a more efficient algorithm that acts as a "smart" program to optimize generated code for the configuration. Savings are realized through two innovations: (1) improved mathematics for solving equations and (2) software that implements the improved mathematics to optimize the simulation and avoid redundant calculations. The first innovation involves an order-of-*n* algorithm capable of exploiting the core-body/branch-body configuration to reduce all equations in terms of core-body degrees of freedom. Inasmuch as the inverted mass matrix generated by this algorithm is much smaller, the algorithm affords a substantial reduction in computation time.

The second innovation is a code-generator software tool — Codegen — that is able to develop a simulation based on active degrees of freedom. It does this by selecting equations of motion for a configuration without generating equations associated with degrees of freedom. Multiplication by zero is eliminated at the code-generation stage and the generated simulation is configuration-specific. As long as the configuration does not change, the same code can be used over and over again — a significant advancement. Codegen also simplifies equations by use of established mathematical relations, dot products, cross products, and linear algebraic relations; and it can take input from the user to optimize generated code. Together, these innovations ensure that SOMBAT achieves efficiencies unmatched by *n*^{3} algorithms.

The major advantage of using SOMBAT is the recurring savings in computation time it delivers. In some ISS tests, SOMBAT was found to be 80 times faster than such older programs as TREETOPS. Although the generated code is configuration-specific (if the configuration changes, the code must be regenerated), this is not a major problem for SOMBAT, because SOMBAT easily regenerates code within minutes. Inasmuch as it accrues a saving of time over each run, SOMBAT is ideally suited to test runs. Moreover, its open and expandable format makes SOMBAT tailorable for future updates to the space-shuttle or Russian control systems on the ISS — systems that may be added to the ISS in the form of new modules. Finally, SOMBAT meets or exceeds industrial standards when it is applied in the other technological disciplines mentioned above. When speed and accuracy are needed to simulate the dynamics of multiple bodies, SOMBAT is faster and more accurate than any other algorithm currently available.

*This work was done by Ramen Singh of Dynacs Engineering Company, Inc., for *Johnson Space Center. *MSC-22782 *

##### NASA Tech Briefs Magazine

This article first appeared in the April, 2000 issue of *NASA Tech Briefs* Magazine.

Read more articles from the archives here.