Re: BUG or FEATURE in Interpolation[] ?
- To: mathgroup at smc.vnet.net
- Subject: [mg4641] Re: BUG or FEATURE in Interpolation[] ?
- From: jsobel at sdav01.seinf.abb.se (Jarl R Sobel)
- Date: Thu, 22 Aug 1996 03:54:58 -0400
- Organization: ABB Industrial Systems
- Sender: owner-wri-mathgroup at wolfram.com
In article <4upfkc$48n at dragonfly.wolfram.com>, Stefan Schulz <sschulz at chemie.fu-berlin.de> wrote: > Dear Mathematica users, >=20 > when I typed in the following lines: >=20 > xdata =3D {-1., -0.5, 0., 1., 3., 6., 9.}; > ydata =3D Map[(Exp[-#]-1)^2&, xdata]; > data =3D Inner[List,xdata,ydata,List]; > int =3D Interpolation[data]; > Plot[int[x], {x,-1,9}] >=20 > I found to my surprise, that the function returned by Interpolation=20 > is not smooth at some of the data points! For this reason I resorted to > write a package Spline1D which returns a smooth cubic spline as a=20 > pure function, but is naturally slower than the built-in Interpolation=20 > command. Did I find a bug or is this a feature? If it is a feature > it certainly makes the Interpolation command not suitable to obtain=20 > smooth curves. I would appreciate your comments an this. Many Thanks > in advance. >=20 I quote the Mathematica Reference Guide describing the function Interpola= tion: Data can be given in the form {{xi, {fi, dfi, ddfi, =8A }}, =8A } to spec= ify derivatives as well as values of the function at the points xi. You can specify different numbers of derivatives at different points.=20 Using this feature to specify the first derivatives of the function, give= s what you want: xdata =3D {-1., -0.5, 0., 1., 3., 6., 9.}; data1 =3D Transpose[{xdata,=20 Transpose[{(Exp[-xdata] - 1)^2,=20 Derivative[1][(Exp[-#1] - 1)^2 & ][xdata]} ]}]; int1 =3D Interpolation[data1]; Plot[{(Exp[-x] - 1)^2,int1[x]}, {x,-1,9}] Bye Jarl ==== [MESSAGE SEPARATOR] ====