slide1 n.
Download
Skip this Video
Download Presentation
Design of a modular and robust astrodynamics toolbox

Loading in 2 Seconds...

play fullscreen
1 / 32

Design of a modular and robust astrodynamics toolbox - PowerPoint PPT Presentation


  • 213 Views
  • Uploaded on

Design of a modular and robust astrodynamics toolbox New Trends in Astrodynamics and Applications VI 6th of June, 2011 Kumar, K., et al. Phd Candidate Astrodynamics & Space Missions Delft University of Technology. Assistant Specialist Center for Integrative Planetary Science

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Design of a modular and robust astrodynamics toolbox' - kelly-shelton


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Design of a modular and robust astrodynamics toolbox

New Trends in Astrodynamics and Applications VI

6th of June, 2011

Kumar, K., et al.

Phd Candidate

Astrodynamics & Space Missions

Delft University of Technology

Assistant Specialist

Center for Integrative Planetary Science

University of California-Berkeley

contents
Contents
  • Why another astrodynamics toolbox?
  • Applications
  • What is Tudat?
  • Software architecture
  • Example simulation
  • Conclusions

2

why another astrodynamics toolbox
Why another astrodynamics toolbox?
  • Need for generic, collaboratively developed astrodynamics toolbox within group
  • Current software is fragmented
  • Learning curve to start using existing software is steep
  • Lack of collaborative development = reinvention of the wheel
  • Many existing packages are available, but with limitations (e.g., application scope and licensing)

3

slide4

Applications

  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

4

applications
Applications
  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

5

applications1
Applications
  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

6

slide7

Applications

  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

7

slide8

Applications

  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

8

slide9

Applications

  • Interplanetary trajectories
  • Launcher ascent trajectories
  • Re-entry
  • Exoplanet orbits
  • Planetary rings
  • And many more …

9

what is tudat
What is Tudat?

TU Delft Astrodynamics Toolbox

10

what is tudat1
What is Tudat?
  • NOT AN END-TO-END TOOL!
  • C++ Library to aid astrodynamics simulations
  • Collaboratively developed by students and staff of A&S
  • Implementation of commonly used solutions for astrodynamics

11

software architecture
Software architecture
  • Many common elements for different applications
  • Common elements written generically
  • “Lego blocks”
  • A lot of time spent on software architecture – investment of time pays back in the long run!
  • Modularity is difficult to achieve; requires computer science knowledge

12

software architecture1
Software architecture

Shape

Body

Vehicle

CelestialBody

Spacecraft

Launchers

Re-entry Vehicles

Asteroids

Moons

Planets

13

software architecture2
Software architecture

ForceModel

Body

Encapsulation

14

software architecture3
Software architecture

Polymorphism

ForceModel

Body

Encapsulation

15

conclusions
Conclusions
  • Collaborative development is worth it!
  • Project management tools exist to aid development
  • Standardization is important
  • Talk to computer scientists!
  • Investing time in software architecture is time well spent
  • Astrodynamics lends itself well to sharing of modular code

20

slide21

TU Delft Astrodynamics Toolbox

Liban Abdulkadir

Luuk van Barneveld

Dominic Dirkx

Frank Engelen

Elisabetta Iorfida

Jonatan Leloux

Jeroen Melman

Erwin Mooij

Roon Noomen

Bart Römgens

why another astrodynamics toolbox1
Why another astrodynamics toolbox?
  • Many existing packages are available, including:
    • AGI’s Satellite Toolkit (STK)
    • Mercury
    • SWIFT
    • GEODYN
    • Custom-code that never gets used by anyone else
    • Etc etc …
  • Educational and research value in setting out a modular toolbox that has wider scope of applications.

B1

project setup
Project setup
  • Coding standards and protocols
  • Documentation standards and protocols
  • Code robustness
  • File repository
  • Website
  • Management team / working group

B2

project setup1
Project setup
  • Coding standards and protocols
    • All code in C++!
    • Important to standardize code to ensure longevity, modularity and robustness of project
    • Rules are “evil”! Important to strike a balance
    • “N-Commandments document” based on accepted industry standards and group choices

B3

project setup2
Project setup
  • Documentation standards and protocols
    • Without proper documentation, project will die for sure!
    • Tools exist to standardize, we use Doxygen
    • Tutorials / examples / manuals provided to reduce learning curve for new developers

B4

project setup3
Project setup
  • Code robustness
    • Thorough code-checking process: every piece of code in the repository is independently checked by at least one other person
    • Unit test framework
    • Performance reports

B5

project setup4
Project setup
  • File repository
    • Various applications available to run code repositories like Bazaar, Subversion, Git etc.
    • Decentralized code development
    • Ability to access code from anywhere in the world and to review history of developments of code
    • Controlled commits to repository

B6

project setup5
Project setup
  • Management team / working group
    • Management team maintains oversight and longevity of project (meetings once a month)
    • Working group discusses current and future code development (meetings once every two weeks)
    • Meeting minutes available to everyone to keep track of action items, discussions, and decisions

B7

project setup6
Project setup
  • Website
    • Many code development project management tools and applications available e.g., Redmine, Trac, Sourceforge etc.
    • Important to make a selection and start project
    • We use Redmine
    • Website is vital; provides central point of communcation for entire project

B8

software architecture6
Software architecture
  • Conservative policy towards external libraries – so far only Eigen used for linear algebra
  • Clear categorization of code, e.g., mathematics vs. astrodynamics vs. input handling etc.
  • Standard file formats for input and output handling
  • Internal standardization of units, reference systems etc.

B9

software architecture7
Software architecture
  • Bodies
  • Environment model
  • Force models
  • Propagators
  • Numerical integrators
  • Root-finding methods

B10

future plans
Future Plans

Multi-threading

External software

Ephemeris

Local optimization

Observation

Input/Output

Global optimization

Hybrid propagator

Statistics

Deep space manoeuvres

Event handling

TLE reader

Reference frame

transformations

Data handling

Low-thrust

Aerodynamic force

SGP4 propagator interface

Attitude propagator

Atmospheres

Backwards propagation

Dynamical systems theory

B11