help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Splines


From: Jaroslav Hajek
Subject: Re: Splines
Date: Wed, 1 Oct 2008 13:30:14 +0200

On Wed, Oct 1, 2008 at 1:15 PM, Carlo de Falco <address@hidden> wrote:
>
> On 01/ott/08, at 11:55, Jaroslav Hajek wrote:
>
>> On Wed, Oct 1, 2008 at 12:44 PM, Carlo de Falco <address@hidden>
>> wrote:
>>>
>>> On 01/ott/08, at 10:56, Jaroslav Hajek wrote:
>>>
>>>>
>>>> The interp1 functions *are* using splines when you specify "cubic"
>>>> interpolation.
>>>
>>> not really, try...
>>>
>>>>> x = sortrows (rand(10,2));
>>>>> xsp = linspace(min(x(:,1)), max(x(:,1)), 100);
>>>>> plot(x(:,1),x(:,2),'x', xsp, interp1(x(:,1), x(:,2), xsp, 'cubic'),
>>>>> xsp,spline(x(:,1), x(:,2), xsp))
>>>
>>
>> OK, 'spline' was what I meant, but I think that even the 'cubic'
>> method uses some kind of spline, though probably it doesn't ensure
>> smoothness.
>>
> interp1(x, y, 'cubic') is just a wrapper to pchip which does piece-wise
> cubic hermite interpolation
> the matlab help page for pchip contains a detailed comparison of pchip and
> spline, I think the algorithms in octave are the same as in matlab...
>

No, it's not - check out the current sources. What 'cubic' does is
apparently for each query point determines 4 nearest neighbours, and
does a Lagrange interpolation.


> BTW there are different kinds of splines, try
>
> plot(x(:,1),x(:,2),'x', xsp, interp1(x(:,1), x(:,2), xsp, 'spline'), xsp,
> ppval(catmullrom(x(:,1), x(:,2)), xsp),'g-')
>


> to see how catmullrom differs from the default not-a-knot spline.
> For this particular application I think the less oscillatory behaviour makes
> catmullrom preferable over spline
>
> c.
>
>
>



-- 
RNDr. Jaroslav Hajek
computing expert
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz


reply via email to

[Prev in Thread] Current Thread [Next in Thread]