[Numpy-discussion] polyfit with fixed points

Jaime Fernández del Río jaime.frio@gmail....
Tue Mar 5 01:41:01 CST 2013


On Mon, Mar 4, 2013 at 8:37 PM, Charles R Harris
<charlesr.harris@gmail.com>wrote:

>
> There are actually seven versions of polynomial fit, two for the usual
> polynomial basis, and one each for Legendre, Chebyshev, Hermite, Hermite_e,
> and Laguerre ;)
>

Correct me if I am wrong, but the fitted function is the same regardless of
the polynomial basis used. I don't know if there can be numerical stability
issues, but chebfit(x, y, n) returns the same as poly2cheb(polyfit(x, y,
n)).

In any case, with all the already existing support for these special
polynomials, it wouldn't be too hard to set the problem up to calculate the
right coefficients directly for each case.


> How do you propose to implement it? I think Lagrange multipliers is
> overkill, I'd rather see using the weights (approximate) or change of
> variable -- a permutation in this case -- followed by qr and lstsq.
>

The weights method is already in place, but I find it rather inelegant and
unsatisfactory as a solution to this problem. But if it is deemed
sufficient, then there is of course no need to go any further.

I hadn't thought of any other way than using Lagrange multipliers, but
looking at it in more detail, I am not sure it will be possible to
formulate it in a manner that can be fed to lstsq, as polyfit does today.
And if it can't, it probably wouldn't make much sense to have two different
methods which cannot produce the same full output running under the same
hood.

I can't figure out your "change of variable" method from the succinct
description, could you elaborate a little more?

Jaime

-- 
(\__/)
( O.o)
( > <) Este es Conejo. Copia a Conejo en tu firma y ayúdale en sus planes
de dominación mundial.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20130304/3689d44a/attachment.html 


More information about the NumPy-Discussion mailing list