[Numpy-discussion] Polynomial implementation in numpy.ma

Charles R Harris charlesr.harris at gmail.com
Sat Sep 17 12:52:18 EDT 2011

On Sat, Sep 17, 2011 at 10:40 AM, Charles R Harris <
charlesr.harris at gmail.com> wrote:

> 2011/9/14 Stéfan van der Walt <stefan at sun.ac.za>
>> Hi all,
>> There were some failures in the polynomial tests earlier today, and
>> while investigating I saw that numpy.ma implements its own root
>> finder.  It uses inversion of a Van der Monde matrix, which I believe
>> may suffer from some numerical instability problems.  Given that
>> Charles has gone to some length to implement good polynomial root
>> finders, I think it would be best to employ those instead, and simply
>> pre-filter the data that comes from the masked array module, if
>> possible.
> The test failure arises because the test compares against np.polyfit where
> Travis changed the column scaling, which in turn changed the singular
> values, and it is that comparison that fails.
> The Vandermonde matrix needs to be used for the fitting so nothing should
> be changed there. To fix the test failure, either the test could be modified
> or the ma.polyfit routine can be changed. Probably the latter is the best
> option, the new scaling code can be brought over and maybe the weight and
> covariance options added.Travis' changes needs to be audited in any case to
> make sure all the corner cases are covered.

Note that the enhanced np.polyfit can be called directly with the weight set
to zero for the masked rows, i.e., set w to the compliment of the mask. That
should simplify the code a bit.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20110917/e992feaf/attachment.html>

More information about the NumPy-Discussion mailing list