According to gsl_poly_complex_solve API description, "The function returns GSL_SUCCESS if all the roots are found and GSL_EFAILED if the QR reduction does not converge."

But this is not true. In zsolve.c, the default error handler is called instead of the function returning GSL_EFAILED when QR reduction does not converge. This causes the program to exit as that is the behavior of the default error handler.

The bug fix is to change poly/zsolve.c so that

 if (status)
   {
       GSL_ERROR("root solving qr method failed to converge", GSL_EFAILED);
   }

is replaced with

 if (status)
   {
       return GSL_EFAILED;
   }


--
Suleyman Guleyupoglu

_______________________________________________
Bug-gsl mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-gsl

Reply via email to