Skip to content

Useful resources

Miren Radia edited this page Jun 23, 2023 · 28 revisions

GRChombo

Several members of our collaboration completed their PhDs whilst working on GRChombo, and their theses are a useful source of information about the code and how it is used in research:

The collaboration meets semi-regularly for a catch up and to plan future work. Once a year this includes a "Learn the code" day where more experienced members give training sessions on key aspects of the code. Some slides from previous meetings are provided below:

April 2020

April 2022

(Note that some of the advice in these may now be out of date, so in cases of conflict with the wiki, you should consider the wiki the most accurate.)

Numerical Relativity (NR)

There are many useful introductions to NR, but we recommend in particular the following open source resources:

The textbooks of Alcubierre, Baumgarte & Shapiro, and Shibata are also bookcase essentials for anyone working in NR.

Useful C++ resources

Style guide for C++ https://google.github.io/styleguide/cppguide.html

Basic guide to C++ https://www.tutorialspoint.com/cplusplus/index.htm

One should review in particular the sections on classes and templating, which are both used extensively in the code.

Courses about C++/ cluster usage

All these places offer courses relevant for scientific programming, best check them regularly

HPC cluster usage

Most machines have their own webpages which give a guide to usage, and tell you things particular to each machine, like compilers available, the job submission system, where to store your data etc.

The Rosetta stone of job submission commands is here: https://slurm.schedmd.com/rosetta.pdf

Some useful commands:

- 'passwd' can be used to change your login password.
- 'grep' to search for text in your files 

Git guide

A comprehensive guide to git:

https://www.tutorialspoint.com/git/git_quick_guide.htm

in particular, a useful guide to "rebase a branch to master" is

https://www.theserverside.com/blog/Coffee-Talk-Java-News-Stories-and-Opinions/How-to-Git-rebase-a-branch-to-master-example

VisIt

The VisIt wiki is here:

http://www.visitusers.org/index.php?title=Main_Page

and the user manual is here:

http://visit-sphinx-user-manual.readthedocs.io/en/latest/

yt

The yt package is also useful for analysing data, and has an excellent cookbook containing examples:

http://yt-project.org/doc/index.html

Miscellaneous

A very useful GUI tool to compare two directories is Meld:

https://meldmerge.org/

Clone this wiki locally