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 2016/06/11 18:37:59 UTC

[2/4] [math] MATH-1377

MATH-1377

Short-circuit unnecessary computations.


Project: http://git-wip-us.apache.org/repos/asf/commons-math/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-math/commit/a6a48cfd
Tree: http://git-wip-us.apache.org/repos/asf/commons-math/tree/a6a48cfd
Diff: http://git-wip-us.apache.org/repos/asf/commons-math/diff/a6a48cfd

Branch: refs/heads/develop
Commit: a6a48cfd370b226955a531e678016db414ebeed9
Parents: 66a775c
Author: Gilles <er...@apache.org>
Authored: Sat Jun 11 20:31:44 2016 +0200
Committer: Gilles <er...@apache.org>
Committed: Sat Jun 11 20:31:44 2016 +0200

----------------------------------------------------------------------
 .../math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java  | 5 +++++
 1 file changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/a6a48cfd/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java b/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java
index cd1ca1d..9658944 100644
--- a/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java
+++ b/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/SimplexOptimizer.java
@@ -166,6 +166,11 @@ public class SimplexOptimizer extends MultivariateOptimizer {
                     PointValuePair prev = previous[i];
                     converged = converged &&
                         checker.converged(iteration, prev, simplex.getPoint(i));
+
+                    if (!converged) {
+                        // Short circuit, since "converged" will stay "false".
+                        break;
+                    }
                 }
                 if (converged) {
                     // We have found an optimum.