MJ Rutter's Computing Page

This page contains computing-related stuff produced by me. Those searching for evidence that I have a life outside of computing need to look elsewhere, and there is also a more formal profile and an academic page. I may enjoy a schizophrenic existance as mjr and mjr19, but my email address is always the latter. The correct University (not Departmental) domain is not hard to guess.


Notes on the integration of 1D functions with sharp peaks (PDF) (Feb 2014).

Notes, benchmarks and sources for Linpack in Fortran, C, python and Java (Jan 2016).

Notes on the linear congruential random number generator, with particular reference to stepping the generator in log2N time, and thus getting results independent of the number of threads after parallelisation with OpenMP. Fortran and C examples included.


A separate page now exists for my notes on CASTEP.


I am the author and maintainer of c2x, a pre- and post-processor for Castep and other DFT codes, offering a range of format conversions, unit cell transformations, and analysis of densities, structures and bands.


Those programs which I have written and distribute fairly freely, which include bmp2eps, psimages and eps2gif, are all found on MJR's Software Page.

Notes on IT topics

MPhil/CDT Lectures and other Graduate Seminars

I have lectured on both MPI and Computer Architecture for the Centre for Scientific Computing at the Cavendish. They have some on-line course material.

One-off graduate seminars are generally more fun. TCM users can find them on the relevant bit of TCM's computing pages, but a few are also available on the above courses page.

And an undergraduate course on Fortran 90 is also found on the above page.

C and Fortran

My infamous C vs Fortran document. Yes, I should probably update it to cover C99, F2003, etc.

But instead, I also offer PDF vs PostScript.

An Introduction to UNIX

Everyone has to write one once. So this is mine.

A Thesis

Everyone has to write one once. So here is mine: The Growth and Stability of Silicon Carbide Polytypes.