Bug fix in geodesic.f90 to avoid multiplying very small double precision numbers together (eg 1e-157*1e-157), which caused floating point exception.