[Scipy-svn] r5544 - trunk/scipy/optimize/Zeros
scipy-svn at scipy.org
scipy-svn at scipy.org
Wed Feb 11 22:38:53 EST 2009
Author: charris
Date: 2009-02-11 21:38:50 -0600 (Wed, 11 Feb 2009)
New Revision: 5544
Modified:
trunk/scipy/optimize/Zeros/brenth.c
trunk/scipy/optimize/Zeros/ridder.c
Log:
Fix ticket #860, function calls miscounted in ridder.
Clean up indentation in brenth.c
Modified: trunk/scipy/optimize/Zeros/brenth.c
===================================================================
--- trunk/scipy/optimize/Zeros/brenth.c 2009-02-12 03:23:57 UTC (rev 5543)
+++ trunk/scipy/optimize/Zeros/brenth.c 2009-02-12 03:38:50 UTC (rev 5544)
@@ -48,14 +48,12 @@
if (fcur == 0) return xcur;
params->iterations = 0;
for(i = 0; i < iter; i++) {
-
params->iterations++;
-
- if (fpre*fcur < 0) {
- xblk = xpre;
- fblk = fpre;
- spre = scur = xcur - xpre;
- }
+ if (fpre*fcur < 0) {
+ xblk = xpre;
+ fblk = fpre;
+ spre = scur = xcur - xpre;
+ }
if (fabs(fblk) < fabs(fcur)) {
xpre = xcur; xcur = xblk; xblk = xpre;
fpre = fcur; fcur = fblk; fblk = fpre;
Modified: trunk/scipy/optimize/Zeros/ridder.c
===================================================================
--- trunk/scipy/optimize/Zeros/ridder.c 2009-02-12 03:23:57 UTC (rev 5543)
+++ trunk/scipy/optimize/Zeros/ridder.c 2009-02-12 03:38:50 UTC (rev 5544)
@@ -29,7 +29,7 @@
dn = SIGN(fb - fa)*dm*fm/sqrt(fm*fm - fa*fb);
xn = xm - SIGN(dn)*DMIN(fabs(dn),fabs(dm) - .5*tol);
fn = (*f)(xn,params);
- params->funcalls++;
+ params->funcalls += 2;
if (fn*fm < 0.0) {
xa = xn; fa = fn; xb = xm; fb = fm;
}
More information about the Scipy-svn
mailing list