J. Stark wrote:
Can someone point me to the correct syntax for optimize.fmin_powell when the objective function takes side arguments. I have tried every possibility I can think of, most of which work fine for optimize.fmin, but keep getting error messages, mainly due to an incorrect number of arguments. I have looked at the source, but that hasn't helped.
I am typically trying to something like
def test_arg((x,y),(a,b)): return (x-a)**2 + (y-b)**2
min = optimize.fmin_powell(test_arg,(1.0,2.0), ((5.0,6.0),))
This works with optimize.fmin, but fails with optimize.fmin_powell.
Works for me. In [2]: def test_arg((x,y),(a,b)): ...: return (x-a)**2 + (y-b)**2 ...: In [3]: min = optimize.fmin_powell(test_arg,(1.0,2.0), ((5.0,6.0),)) Optimization terminated successfully. Current function value: 0.000000 Iterations: 2 Function evaluations: 22 -- Robert Kern rkern@ucsd.edu "In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter