[Numpy-discussion] chebyshev polynomials

Charles R Harris charlesr.harris at gmail.com
Thu Sep 24 15:53:32 EDT 2009


On Thu, Sep 24, 2009 at 1:18 PM, Pauli Virtanen <pav at iki.fi> wrote:

> to, 2009-09-24 kello 11:51 -0600, Charles R Harris kirjoitti:
> > Would it be appropriate to add a class similar to poly but instead
> > using chebyshev polynomials? That is, where we currently have
> [clip]
>
> Yes, I think. scipy.special.orthogonal would be the best place for this,
> I think. Numpy would probably be a wrong place for stuff like this.
>
> Ideally, all the orthogonal polynomial classes in Scipy should be
> rewritten to use more a stable representation of the polynomials.
> Currently, they break down at high orders, which is a bit ugly.
>
> I started working on something related in the spring. The branch is
> here:
>
>        http://github.com/pv/scipy-work/tree/ticket/921-orthogonal
>
> but as you can see, it hasn't got far (eg. orthopoly1d.__call__ is
> effectively a placeholder). Anyway, the idea was to divide the
> orthopoly1d class to subclasses, each having more stable
> polynomial-specific evaluation routines. Stability-preserving arithmetic
> would be supported at least within the polynomial class.
>
>
I was thinking of storing the chebyshev internally as the values at the
chebyschev points. This makes multiplication, differentiation and such quite
easy (resample and multiply/divide appropriatately). Its equivalent to
working in the fourier domain for convolution and differentiation. The
transform back and forth is likewise othogonal, so stable. The intepolation
also becomes simple using the barycentric version.


> As a side note, should the cheby* versions of `polyval`, `polymul` etc.
> just be dropped to reduce namespace clutter? You can do the same things
> already within just class methods and arithmetic.
>
>
What do you mean? The evaluation can use various stable methods appropriate
to the chebyshev series.

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


More information about the NumPy-Discussion mailing list