-
Oliver Sander authored
[[Imported from SVN: r10027]]
Oliver Sander authored[[Imported from SVN: r10027]]
inverse-stereographic-projection.py 585 B
# The inverse stereographic projection through the north pole, and its derivative
def f(x):
normSquared = x[0]*x[0]+x[1]*x[1]
return [2*x[0] / (normSquared+1), 2*x[1] / (normSquared+1), (normSquared-1)/ (normSquared+1)]
def df(x):
normSquared = x[0]*x[0]+x[1]*x[1]
denominator = (1+normSquared)*(1+normSquared)
return (( (2*(1+normSquared) - 4*x[0]*x[0]) / denominator, (-4*x[0]*x[1]) / denominator),
( (-4*x[1]*x[0]) / denominator, (2*(1+normSquared) - 4*x[1]*x[1]) / denominator),
(4*x[0]/denominator,4*x[1]/denominator))
fdf = (f, df)