From: N. Brouard Date: Tue, 16 Dec 2014 10:30:11 +0000 (+0000) Subject: * imach.c (Module): Merging 1.61 to 1.162 X-Git-Tag: imach-099s7~402 X-Git-Url: https://henry.ined.fr/git/?a=commitdiff_plain;h=5bd78a3df18c0a22f949ab67dd7aaa37a7373c5e;p=.git * imach.c (Module): Merging 1.61 to 1.162 --- diff --git a/src/imach.c b/src/imach.c index 42fbebb..1aaee1b 100644 --- a/src/imach.c +++ b/src/imach.c @@ -1,6 +1,9 @@ /* $Id$ $State$ $Log$ + Revision 1.162 2014/09/25 11:43:39 brouard + Summary: temporary backup 0.99! + Revision 1.1 2014/09/16 11:06:58 brouard Summary: With some code (wrong) for nlopt @@ -1235,6 +1238,14 @@ void mnbrak(double *ax, double *bx, double *cx, double *fa, double *fb, double * ulim=(*bx)+GLIMIT*(*cx-*bx); /* Maximum abscisse where function can be evaluated */ if ((*bx-u)*(u-*cx) > 0.0) { /* if u between b and c */ fu=(*func)(u); +#ifdef DEBUG + /* f(x)=A(x-u)**2+f(u) */ + double A, fparabu; + A= (*fb - *fa)/(*bx-*ax)/(*bx+*ax-2*u); + fparabu= *fa - A*(*ax-u)*(*ax-u); + printf("mnbrak (*ax=%.12f, *fa=%.12lf), (*bx=%.12f, *fb=%.12lf), (*cx=%.12f, *fc=%.12lf), (*u=%.12f, fu=%.12lf, fparabu=%.12f)\n",*ax,*fa,*bx,*fb,*cx,*fc,u,fu, fparabu); + fprintf(ficlog, "mnbrak (*ax=%.12f, *fa=%.12lf), (*bx=%.12f, *fb=%.12lf), (*cx=%.12f, *fc=%.12lf), (*u=%.12f, fu=%.12lf, fparabu=%.12f)\n",*ax,*fa,*bx,*fb,*cx,*fc,u,fu, fparabu); +#endif } else if ((*cx-u)*(u-ulim) > 0.0) { /* u is after c but before ulim */ fu=(*func)(u); if (fu < *fc) {