[SciPy-User] fast spline interpolation of multiple equal length waveforms
Fri Sep 23 09:21:08 CDT 2011
Thanks for the reply.
Both x and y values are different, but they have the same length.
I'll try your simple piecewise polynomial interpolation over the weekend,
and report back when I know how well it works.
On Fri, Sep 23, 2011 at 9:54 AM, Jonathan Stickel <email@example.com> wrote:
> On 9/22/11 20:36 , firstname.lastname@example.org wrote:
>> Date: Thu, 22 Sep 2011 21:59:59 -0400
>> From: Hjalmar Turesson<email@example.com>
>> Subject: [SciPy-User] fast spline interpolation of multiple equal
>> length waveforms
>> Content-Type: text/plain; charset="iso-8859-1"
>> I got a data set with hundreds of thousands for 40 point long waveforms. I
>> want to use cubic splines to interpolate these at intermediate time
>> However, the points are different all waveforms, only the number of points
>> is the same. In other words, I want to interpolate a large number of
>> short waveforms, each to its own grid of x-values/time points, and I want
>> do this as FAST as possible.
>> Are there any functions that can take a whole array for waveforms and a
>> matched array of new x-values, and interpolate each waveform at a matched
>> row (or column) of x-values?
>> What I've found, this far, appear to require a loop to one by one go
>> the waveforms and corresponding grid of x-values. I fear that a long loop
>> will be significantly slower than a direct evaluation of the entire array.
> For each data set (x,y), are the x-values the same and the y-values
> different? If so, you may find this code useful:
> It is not splines, but nonetheless provides good quality interpolation and
> is very fast. For given x and x_interp, it can create an interpolation
> matrix P. Then y_interp = P*y. If you have all your y-data in Y, then
> Y_interp = P*Y.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the SciPy-User