8000 GitHub - PeterBartram/TES: Terrestrial Exoplanet Simulator public repository
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Terrestrial Exoplanet Simulator public repository

License

Notifications You must be signed in to change notification settings

PeterBartram/TES

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Terrestrial Exoplanet Simulator (TES)

TL;DR

Look at the Apophis file under experiments to see a worked example of how to run experiments with TES using our experiment manager. Afterwards, look at the Apophis file under plotting to see how to load and plot the experiment data. Output data is stored under "experiment manager/results" and should be cleared periodically along with the temporary data in "experiment_manager/temp".

If you use TES in your research then please cite this paper: https://doi.org/10.1093/mnras/stab896

Introduction

TES is an n-body integration package for modelling the evolution of exoplanet systems that I developed during my PhD with my supervisor Alexander Wittig at the University of Southampton. This TES distribution comes in two parts:

  1. The C++ TES source code.
  2. The python based experiment manager for running experiments and plotting the results.

We recommend that the experiment manager be used as the interface to TES as it handles temporary data storage and allows for experiment results to be saved and then loaded later on for plotting. The experiment manager can automatically use multiple threads to run independent experiments in parallel using the mpi4py package. We have designed the experiment manager specifically to enable HPC to be performed as easily as possible.

Dependencies

TES has no dependencies but the experiment manager does. Generally, we only use the standard python scientific programming libraries: numpy and matplotlib. However, we have one less common requirement: mpi4py which can be installed using "pip install mpi4py".

Experiment Manager

The experiment manager is designed to make saving and loading data from experiments easier.

The folder structure is as follows:

drivers: contains the drivers for running TES including bash files for recompiling the code and automatically copying it to the appropriate location. Also contains scripts for extracting output data into a single python dictionary for plotting. You can also include drivers here for other tools - Rebound and MERCURY drivers are available on request.

experiments: contains experiments to be run, an example showing the Apophis encounter in 2029 is included and is well documented to enable the structure to be adapted to create other experiments.

plotting: contains scripts for plotting data generated by the experiments. The Apophis plotting example in here is well documented and should serve as a basis for your own plotting. Also, it shows how to load previously run experiment data for plotting.

results: this is where the experiment manager will place your experiment output data once it has finished running. This folder ensures that no results are ever lost but will often fill up with data as a result and need clearing periodically.

temp: temporary data file storage. Clear this periodically.

tools: utilities scripts.

TES Native

TES uses .json input files, the format is quite self-explanatory but I will be writing up a schema for it soon. The TES executable by default looks for "input.json" as the input file but also takes a command-line argument for an input file path.

The TES package is configured to compile with GCC and the src directory contains a makefile for building TES. When in the src directory, use one of the two following commands to build TES:

  • to build TES using double-precision floating-point throughout use the command: "make".
  • to build TES using extended precision in the Kepler solve use the command: "make long".

About

Terrestrial Exoplanet Simulator public repository

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0