chiark / gitweb /
K can be arbitrarily large for rightmost point in hull
authorstevenj <stevenj@alum.mit.edu>
Wed, 29 Aug 2007 23:49:28 +0000 (19:49 -0400)
committerstevenj <stevenj@alum.mit.edu>
Wed, 29 Aug 2007 23:49:28 +0000 (19:49 -0400)
darcs-hash:20070829234928-c8de0-b0128297e8ddf4c7e169cf2569e7200d55e36572.gz

cdirect/cdirect.c

index aa21b96c3788efe9d6127955393449707b908a5a..9d95f8f90655f74ca8dfabc7d36e4a544b3551fc 100644 (file)
@@ -376,7 +376,7 @@ static nlopt_result divide_good_rects(params *p)
               K1 = (hull[i][1] - hull[ip][1]) / (hull[i][0] - hull[ip][0]);
          K = MAX(K1, K2);
          if (hull[i][1] - K * hull[i][0]
-             <= p->fmin - magic_eps * fabs(p->fmin)) {
+             <= p->fmin - magic_eps * fabs(p->fmin) || ip == nhull) {
               /* "potentially optimal" rectangle, so subdivide */
               nlopt_result ret = divide_rect(hull[i], p);
               divided_some = 1;