From: stevenj Date: Tue, 19 Aug 2008 23:07:31 +0000 (-0400) Subject: fix evil bug in MMA dual function that was leading to incorrect gradient and lots... X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=a39181c317b3b5d6accc3248b0d39c794f06a1f8;p=nlopt.git fix evil bug in MMA dual function that was leading to incorrect gradient and lots of weird behavior darcs-hash:20080819230731-c8de0-7391e5affc386c4aeb217382cf4c872eebb4c095.gz --- diff --git a/mma/mma.c b/mma/mma.c index 7dae61b..4658cf5 100644 --- a/mma/mma.c +++ b/mma/mma.c @@ -99,7 +99,7 @@ static double dual_func(int m, const double *y, double *grad, void *d_) d->wval += 0.5 * dx2 * denominv; for (i = 0; i < m; ++i) gcval[i] += (dfcdx[i*n+j] * c + (fabs(dfcdx[i*n+j])*sigma[j] - + 0.5*rhoc[j]) * dx2) + + 0.5*rhoc[i]) * dx2) * denominv; }