Swab: A.K.A. FORTRAN on Rails

June 13, 2013

As part of consultant work on a project for the School of Mechanical, Aerospace and Civil Engineering(MACE) at the University of Manchester, we took a piece of FORTRAN code and put it on the web.

FORTRAN? What is this arcane magic?

FORTRAN is a great language for writing scientific software. It's easy to express things such as array manipulations, in a similar way to Python and Matlab/Octave (it may-have/probably-did inspire them).

It's also fun to look back at early languages and see how far we have (or haven't) come. The GNU Fortran compiler features some amusing backwards compatibility features such as options to enforce punch card layouts, e.g. first column is for flagging whether the card is a comment or not.

The project

Our mission was to take existing code FORTRAN code written by researchers at MACE, and make a user-friendly web interface for it.

The simulation code implements the SWAB Model 1-D nearshore wave simulation

A splash in a wave tank

It was originally a command line tool and we created web interface which wrapped the FORTRAN in Python and allowed for simulation jobs to be queued and their execution distributed.

For more details peruse the slides.