[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" f
From: |
Rhys Ulerich |
Subject: |
[Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess |
Date: |
Wed, 02 Oct 2013 14:50:48 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.63 Safari/537.31 |
Follow-up Comment #5, bug #39713 (project gsl):
> So, in my view, the real question raised by this issue is what should the
solver do if it is entered at a position where the previous iteration has
already found the root and the user has not terminated the iteration?
This feels like a usage error on the user's part. How one can have
secant_iterate defend against having already found the root when "the solver
found the root" is a problem- and tolerance-specific statement. See below,
however, ...
> To do nothing risks an infinite loop. But to do what is done now indicates
failure for what is really success! Maybe a warning return value such as "root
already found'?
Maybe, when the root is obtained identically (i.e. state->f == 0 on entry to
secant_iterate in secant.c), have the method immediately return GSL_SUCCESS
without attempting to re-evaluate the function. I say identically because
only in that case should all sane tolerancing schemes agree that the root has
been found.
Presumably the user not checking for success will either (a) notice an
infinite loop in their code or (b) notice that their solve procedure hits the
maximum number of iterations if they control for that.
Thanks for digging into this,
Rhys
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?39713>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/01
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess,
Rhys Ulerich <=
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Rhys Ulerich, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Rhys Ulerich, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Rhys Ulerich, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/02
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/03
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Brian Gladman, 2013/10/03
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Max, 2013/10/05
- [Bug-gsl] [bug #39713] roots/secant.c "derivative value is not finite" for a good guess, Max, 2013/10/05