You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Project

This exercise aims to provide a flavor of the expertise required for the SPIN project as well as giving you an idea of the work expected of you. If you choose to apply to work with me on this project then I will ask you to work through the exercise and send in your results before applying. I will not consider you for the project unless I have received the exercise results. please keep in mind that the exercise mostly serves to give you an idea of the skills required to avoid signing up for more than you can handle.

Modern scientific simulations have enabled us to study non-linear phenomena that are impossible to study otherwise. Among the most challenging problems is the study of Einstein's theory of relativity which predicts the existence of gravitational waves detected very recently be the LIGO collaboration. The Einstein Toolkit is a community driven framework for astrophysical simulations. I am interested in recruiting a student interested in improving the quality of gravitational waveform templates describing colliding black holes produced with the in the Einstein Toolkit.

CarpetX, a new driver for the Einstein Toolkit based on AMReX, is now available for testing. A driver in the Einstein Toolkit is responsible for basic computational algorithms such as adaptive mesh refinement, parallelism, inter-processes communication, or GPU offloading. Thorns can then implement the physics bits and discretization methods, relying on the driver to stitch everything together into a single application. CarpetX offers a range of new features for the Einstein Toolkit that are interesting for hydrodynamics or magnetic fields (staggered grids, refluxing), improved performance (multi-threading, GPUs, scalability, I/O), and additional safety features that prevent or catch programming errors (uninitialized grid points, inconsistent definitions). It uses the openPMD file format for 3D output during simulation and checkpointing.

This project will be to implement a reader plugin for the 3D visualization package VisIt for use with Carpet and openPMD.

The successful applicant will be involved with both the Gravity Group at NCSA and will be invited to participate in the weekly group meetings and discussions of their research projects.

 Preferred skills:

  • Familiarity with Linux, git, make
  • Strong working knowledge of C++ in application development and using STL. No experience using OpenGL or 3D rendering is required.
  • Working knowledge of Python, matplotlib

Prerequisites

Setup

TBD

Exercise

  • TBDer

Sending in results

Once done, please send me the code and the output produced to rhaas@illinois.edu as an email attachment

Solution

TBD


  • No labels