See http://www.brunel.ac.uk/~eesrjjn/grid