Two Published Flight Dynamics Models Rewritten in Rust and Structured as an ECS

Abstract

This thesis explores using the Entity-Component System (ECS) architecture to implement a Flight Dynamics Model (FDM) by re-implementing two published versions in the Rust programming language using the Specs Parallel ECS (SPECS) for military simulation advancement. One FDM is based on Grant Palmer's published textbook titled Physics for Game Programmers, and another is based on David Bourg's textbook titled Physics for Game Developers. Furthermore, this thesis uses these models within an interactive flight simulator. The ECS architecture is based on the Data-Oriented Design (DOD) paradigm, where Components contain the data and the Systems implement the behavior which transforms data. The specific ECS selected for this research is the Rust-based SPECS framework. One goal of this research is to define the Components and the Systems of an ECS for the two FDMs and use them to build a flight simulator by creating additional Systems and Components to read keyboard inputs and send User Datagram Protocol (UDP) packets to the FlightGear application for visualization [4].The ECS Systems used to calculate the equations of motion both for the Palmer-based and Bourg-based FDMs functionality were tested against the original code and were found to work as expected within a floating-point tolerance. A benchmark comparison between both FDMs determined that the Palmer model is faster on average than the Bourg model. Moreover, the re-implemented FDMs were successfully used to create interactive flight simulators using FlightGear for visualization.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Mar 25, 2021
Accession Number
AD1135200

Entities

People

  • Chad A. Willis

Organizations

  • Air Force Institute of Technology

Tags

Communities of Interest

  • Air Platforms
  • Biomedical
  • Cyber

DTIC Thesaurus Topics

  • Aircrafts
  • C Programming Language
  • Computational Science
  • Computer Programming
  • Computer Programs
  • Computer Simulations
  • Computers
  • Equations Of Motion
  • Fixed Wing Aircraft
  • Flight Simulators
  • Graphical User Interface
  • Language
  • Object Oriented Programming
  • Programming Languages
  • Simulations
  • Simulators
  • Software Testing

Fields of Study

  • Computer science

Readers

  • Computational Modeling and Simulation
  • Database Systems and Applications
  • Marine Ecological Systems Migration