This program allows the user to enter an arbitrary surface z = f(x,y) and numerically computes geodesics on it. The geodesic equation is derived automatically from the induced metric using symbolic differentiation. By adjusting starting positions and directions, one can explore how the curvature of different surfaces affects shortest paths. The math.js library handles symbolic expression parsing and evaluation.
Controls: Click and drag to orbit, scroll to zoom.