2. Download Tudat Bundle

The next step in the installation guide is to download the Tudat Bundle. This is a pre-configured setup that will allow us to get the libraries up and running in no time. The Tudat Bundle contains the following libraries:

  • Tudat
  • Boost (automatically downloaded and configured for your system when first building Tudat)
  • Eigen
  • cspice
  • json
  • nrlmsise-00
  • pagmo2
  • nlopt

Our recommended approach to download Tudat bundle is by using a terminal. Alternatively, a git-client with a GUI (such as SmartGit) can be used.

2.1. Cloning Tudat

For Linux or Mac, the regular terminal can be used directly. For Linux, you can use the command ctrl + alt + T, whereas for Mac, you can simply search for Terminal via spotlight (invoked with + space).

Windows users are recommended to use the tudat_shell.bat, located in tudatBundle/external/tools, here. Copy the contents into a plain text file, and save it as tudat_shell.bat. Running this script will open a Windows terminal, with the git, make and cmake commands available.

After opening a terminal, navigate to the directpry where you want to download tudatBundle. You can use the ls command to get a listing of the current directory. To navigate ‘up’ one level (from ..../directoryA/directoryB/ to ..../directoryA/), use the cd .. command. For the inverse (from ..../directoryA/ to ..../directoryA/directoryB/) use cd directoryB.


If you are working on a Windows system, it is highly recommended that you place the Tudat Bundle directly in your C:\ (or D:\, E:\, … ) drive, as failing to do so has been known to cause compilation errors, requiring the installation to be redone. Mac and Linux users are not constrained in where to place the bundle.

If you are a Windows user make sure to follow the warning above. In the directory where tudatBundle is to be downloaded, enter the command:

git clone https://github.com/tudat/tudatBundle.git

This will download the basic folder structure of the Tudat bundle. Once the process is complete, use the following commands:

cd tudatBundle
git submodule update --init --recursive

Note that the last command in particular can take some time, depending on the speed of your internet connection.


This whole process is known to be decidedly slower on Windows than on Mac/Linux.

2.2. Create a GitHub Account

For those users who want to push their Tudat code to Github (including students taking the AE4866 and AE4868 courses), a Github account is required. Create an account here, if you haven’t done so yet.

A GitHub account is completely free and provides you with hosting for your software projects. It also allows you to fork other repositories to create your own improved version of a piece of code.

As a student you can upgrade your free account to a personal account (normally $7/month). With a personal account you can have unlimited private repositories. Private repositories can be very helpful when developing new unreleased programs and/or writing your thesis. Applying for the free upgrade is easily done via this link and tick boxes: Student and Individual account. Then enter the requested information.