[SciPy-User] The QR decomposition values returned by fsolve
Sun Oct 28 19:15:24 CDT 2012
I think the following is the source of my confusion. SciPy's docstring for fsolve omits the following
information found in the "User Guide for MINPACK" regarding HYBRD and HYBRDJ.
The following is not a direct quote, but it's pretty close:
The initial value of the Jacobian is not updated
until the rank-1 method fails to produce satisfactory progress.
I assume that the Jacobian gets updated intermittently, and only
when the rank-1 method is not producing satisfactory progress.
(So in fact it might never get updated!!)
Because fsolve's QR-related outputs (`fjac`, `r`, and `qtf`) are based on the
final value of fsolve's internal "approximate Jacobian", they may be quite wide
of the mark, unless fsolve "just happens" to return right after the Jacobian
has been updated.
Accordingly -- unless there is some objection -- in my revision of fsolve's docstring, I'll
add to the Notes section something like the following:
**Cautionary Note**: According to [the MINPACK User Guide], the
initial value of the program's "approximate Jacobian" is estimated
(or calculated if `fprime` is supplied by the user), but is updated
only when the rank-1 method is not producing satisfactory progress.
Because the program's QR-related outputs (`fjac`, `r`, and `qtf`)
are based on the program's internal "approximate Jacobian", they
should not be used in subsequent analysis unless their validity is
confirmed by independent computations.
More information about the SciPy-User