[Scipy-svn] r3172 - trunk/Lib/optimize
scipy-svn at scipy.org
scipy-svn at scipy.org
Wed Jul 18 08:31:20 EDT 2007
Author: dmitrey.kroshko
Date: 2007-07-18 07:29:42 -0500 (Wed, 18 Jul 2007)
New Revision: 3172
Modified:
trunk/Lib/optimize/optimize.py
Log:
bugfix in _cubicmin (ticket 344)
Modified: trunk/Lib/optimize/optimize.py
===================================================================
--- trunk/Lib/optimize/optimize.py 2007-07-18 11:38:43 UTC (rev 3171)
+++ trunk/Lib/optimize/optimize.py 2007-07-18 12:29:42 UTC (rev 3172)
@@ -21,7 +21,7 @@
'line_search', 'check_grad']
import numpy
-from numpy import atleast_1d, eye, mgrid, argmin, zeros, shape, \
+from numpy import atleast_1d, eye, mgrid, argmin, zeros, shape, empty, \
squeeze, isscalar, vectorize, asarray, absolute, sqrt, Inf, asfarray, isinf
import linesearch
@@ -306,7 +306,12 @@
dc = c-a
if (db == 0) or (dc == 0) or (b==c): return None
denom = (db*dc)**2 * (db-dc)
- [A,B] = numpy.dot([[dc**2, -db**2],[-dc**3, db**3]],[fb-fa-C*db,fc-fa-C*dc])
+ d1 = empty((2,2))
+ d1[0,0] = dc**2
+ d1[0,1] = -db**2
+ d1[1,0] = -dc**3
+ d1[1,1] = db**3
+ [A,B] = numpy.dot(d1,asarray([fb-fa-C*db,fc-fa-C*dc]).flatten())
A /= denom
B /= denom
radical = B*B-3*A*C
More information about the Scipy-svn
mailing list