You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2012/04/28 01:30:41 UTC
svn commit: r1331635 -
/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java
Author: erans
Date: Fri Apr 27 23:30:41 2012
New Revision: 1331635
URL: http://svn.apache.org/viewvc?rev=1331635&view=rev
Log:
MATH-782
Location of user-defined convergence check.
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java
Modified: commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java?rev=1331635&r1=1331634&r2=1331635&view=diff
==============================================================================
--- commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java (original)
+++ commons/proper/math/trunk/src/main/java/org/apache/commons/math3/optimization/univariate/BrentOptimizer.java Fri Apr 27 23:30:41 2012
@@ -220,6 +220,16 @@ public class BrentOptimizer extends Base
fu = -fu;
}
+ // User-defined convergence checker.
+ previous = current;
+ current = new UnivariatePointValuePair(u, isMinim ? fu : -fu);
+
+ if (checker != null) {
+ if (checker.converged(iter, previous, current)) {
+ return current;
+ }
+ }
+
// Update a, b, v, w and x.
if (fu <= fx) {
if (u < x) {
@@ -233,16 +243,6 @@ public class BrentOptimizer extends Base
fw = fx;
x = u;
fx = fu;
-
- // User-defined convergence checker.
- previous = current;
- current = new UnivariatePointValuePair(x, isMinim ? fx : -fx);
-
- if (checker != null) {
- if (checker.converged(iter, previous, current)) {
- return current;
- }
- }
} else {
if (u < x) {
a = u;