I have a surface defined as $z=\frac{-1}{r}$ where $r=\sqrt{x^2+y^2}$ and I'd like to know how to calculate a surface normal vector at a point $(x,y)$.
An approximation would be acceptable.
The normal vector of a surface implicitly defined by $F(x,y,z)=C$ (i.e. a level sets of $F$) is $\nabla F(a)$ at the point $x=a$. Your surface is $z+(x^2+y^2)^{-1/2}=0$...