Contribute to Tudat#
Any contribution you have to Tudat is very welcome! This can come in the form of code contributions in C++ or Python, additions to our website, extensions to the API documentation, the writing of example applications, etc. Also, any general advice, ideas, comments, feature request are most welcome! You can use any of the following to work on Tudat and/or reach out:
Send an e-mail to get in touch. We’re always open and eager to discuss contributions to and use of Tudat!
Post an issue on one of our Github repositories:
Tudatpy code (C++ and Python) where our functionality is implemented, and the C++ functionality is exposed to Python using pybind11
Tudatpy examples code (Python/Jupyter) where the Examples of our project are located
Tudat space (sphinx) where the markup language that generates this website is located
Part of our development workflow is documented on our developer docs.
Ongoing and planned developments#
Below is a (not entirely comprehensive) list of features and functionalities that are under active development, or or our near(ish)-term wishlist. For some of them, the required development would be Python-only. If you’re interested in the status of these points, in contributing, or in proposing additional ones, please feel free to contact us!
Extension of Tudat estimation functionality for real tracking data analysis, with a focus on planetary missions
Reading additional typical radio tracking data files (TDF) into Tudat-compatible data structures (in addition to ODF, TNF, IFMS files, which are currently supported)
Adding albedo and surface temperature models for specific solar system bodies
Flexible and automated setup for high-fidelity propagation and estimation of planetary spacecraft
…
Adding better functionality to automate the plotting of numerical propagation results (Python)
Linking the preliminary mission design module to the numerical propagation, including automated differential corrections
Supporting events during the propagation (i.e. modify models when a specific condition is met)
Implementing regularized propagators (e.g. Dromo)
Extend CR3BP propagation and mission design functionality (including differential correction to account for perturbations)
Rigorous relativistic effects for orbit propagation (e.g. acceleration derived from metric tensor)
…
We’re also always looking for new example applications, and good ideas for example applications, please feel free to share any ideas and code you may have!
Contributor list#
Below, there is a list of contributors to Tudat. Mostly, these have been staff and students of TU Delft who have worked on Tudat as part of their research project(s) and/or as TAs. Many of them have put a lot of their free time and research time into making Tudat what it is. If you think your name is missing here, please let us know!
Currently and recently active contributors
Riva Alkahal
Kevin Cowan
Sam Fayolle
Valerio Filice
Jonas Hener
Lars Hinüber
Luigi Gisolfi
Nicolò Maistri
Andrea Minervino Amodio
Michael Plumaris
Markus Reichel
Alfonso Sanchez Rodriguez
Tudat Alumni Hall-of-fame
Kartik Kumar - For starting it all, developing numerous core features, and leading the project through the crucial first few years with huge passion and commitment
Jacco Geul - For supporting Tudat for the duration of his Ph.D. project, resolving more bugs and answering more questions than we can count and professionalizing the setup of the project
Jeroen Melman - For helping to build up the Tudat project in its very first years with code development and project setup, without which it may never have survived
Miguel Avillez - For developing the current loading and processing functionality allowing Tudat to handle real radio tracking data
Geoffrey Garrett - For setting up the Python interface of Tudat, the building of the conda packages, and making an important step in professionalizing the project
Past Contributors
Sean Cowan
Fabien Dahmani
Tristan Dijkstra
Carlos Fortuny Lombrana
Jeremie Gaffarel
Jonas Hener
Antonio Lopez Rivera
Gregorio Marchesini
Jorge Martinez
Maarten van Nistelrooij
Filippo Oggionni
Simon Van Hulle
Rens van der Zwaard