[Numpy-discussion] Solving a NLLSQ Problem by Pieces?

Wayne Watson sierra_mtnview@sbcglobal....
Sat Jun 26 12:12:25 CDT 2010


The context here is astronomy and optics. The real point is in the last 
paragraph.

I'm looking at a paper that deals with 5 NL (nonlinear) equations and 8 
unknown parameters.
A. a=a0+arctan((y-y0)/(x-x0)
B. z=V*r+S*e**(D*r)
    r=sqrt((x-x0)**2+(y-y0)**2)
and
C.  cos(z)=cos(u)*cos(z)-sin(u)*sin(ep)*cos(b)
     sin(a-E) = sin(b)*sin(u)/sin(z)


He's trying to estimate parameters of a fisheye lens which has taken 
star images on a photo plate. For example, x0,y0 is the offset of the 
center of projection from the zenith (camera not pointing straight up in 
the sky.) Eq. 2 expresses some nonlinearity in the lens.

a0, xo, y0, V, S, D, ep, and E are the parameters. It looks like he uses 
gradient descent (NLLSQ is nonlinear least squares in Subject.), and 
takes each equation in turn using the parameter values from the 
preceding one in the next, B. He provides reasonable initial estimates.

A final step uses all eight parameters. He re-examines ep and E, and 
assigns new estimates. For all (star positions) on the photo plate, he 
minimizes SUM (Fi**2*Gi) using values from the step for A and B, except 
for x0,y0. He then does some more dithering, which I'll skip.

What I've presented is probably a bit difficult to understand without a 
good optics understanding, but my question is something like is this 
commonly done to solve a system of NLLSQ? It looks a bit wild. I guess 
if one knows his subject well, then bringing some "extra" knowledge to 
the process helps. As I understand it, he solves parameters in A, then 
uses them in B, and so on. I guess that's a reasonable way to do it.

-- 
            Wayne Watson (Watson Adventures, Prop., Nevada City, CA)

              (121.015 Deg. W, 39.262 Deg. N) GMT-8 hr std. time)
               Obz Site:  39° 15' 7" N, 121° 2' 32" W, 2700 feet

               Air travel safety Plus Three/Minus 8 rule. Eighty %
               of crashes take place in the first 3 minutes and
               last 8 minutes. Survival chances are good in you're
               paying attention. No hard drinks prior to those
               periods. No sleeping pills either. Sit within 5 rows
               of an exit door. --The Survivors Club, Ben Sherwood


                     Web Page:<www.speckledwithstars.net/>



More information about the NumPy-Discussion mailing list