Uses John Conway's lozenge algorithm to produce magic squares of odd order.
lozenge(m)
m
n=2m+1
Robin Hankin
magic.4np2
lozenge(4) all(sapply(1:10,function(n){is.magic(lozenge(n))}))