diff options
author | tlatorre <tlatorre@uchicago.edu> | 2018-08-31 13:26:19 -0500 |
---|---|---|
committer | tlatorre <tlatorre@uchicago.edu> | 2018-08-31 13:26:19 -0500 |
commit | 8c9e0671ed475a8a73d755c9e0ba17fad9d518ad (patch) | |
tree | 212935d4964b00739337ede22002a58676944b63 /src/fit.c | |
parent | b6e99d74e6e3f4b9cb7e6660a8649b226cf90a21 (diff) | |
download | sddm-8c9e0671ed475a8a73d755c9e0ba17fad9d518ad.tar.gz sddm-8c9e0671ed475a8a73d755c9e0ba17fad9d518ad.tar.bz2 sddm-8c9e0671ed475a8a73d755c9e0ba17fad9d518ad.zip |
update the criterion for the fit convergence
Diffstat (limited to 'src/fit.c')
-rw-r--r-- | src/fit.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -127,10 +127,14 @@ int fit_event(event *ev, double *xopt, double *fmin) do { *fmin = fval; + memcpy(xopt,x,sizeof(x)); rv = nlopt_optimize(opt,x,&fval); - } while (fabs(fval-*fmin) > 1e-5); + } while (fval < *fmin && fabs(fval-*fmin) > 1e-5); - memcpy(xopt,x,sizeof(x)); + if (fval < *fmin) { + *fmin = fval; + memcpy(xopt,x,sizeof(x)); + } nlopt_destroy(opt); |