Re: Interpolating arrays
- To: mathgroup at smc.vnet.net
- Subject: [mg83577] Re: Interpolating arrays
- From: Thomas E Burton <tburton at brahea.com>
- Date: Fri, 23 Nov 2007 05:35:30 -0500 (EST)
By trial and error, I found that I could get a list-valued
interpolation function by enclosing the abscissa values in braces--in
your example,
Interpolation[{{{x1}, {a1, b1}},{{x2}, {a2, b2}},...,{{xi}, {ai,
bi}}...}]
Here is how I think Interpolation interprets the arguments a1 and b1
in four variations:
1. {x1, a1, b1} (* a1 is the ordinate, b1 is its first derivative *)
2. (x1, {a1,b1}} (* ditto *)
3. {{x1}, a1, b1} (* {a1, b1} is a list-valued ordinate *)
4. {{x1}, {a1,b1}} (* ditto*)
5. {{x1}, {{a1,b1}, {c1, d1}}} (* {a1,b1,c1,d1} is a list-valued
ordinate *)
Behaviors 2, 3, & 5 differ from what the explanation of Interpolation
lead me to believe.
Tom
> ... Interpolation (according to the doc center) offers to construct
> an interpolating function given x values and f[x] values in the
> following format:
>
> Interpolation[{{x1, f1},{x2, f2},...{xi, fi}...]
>
> Down a few lines, doc center says: The fi can be lists or arrays of
> any dimension
>
> I'm interested in interpolating between 2D geometric points {a, b},
> and a naive form would be
>
> p = Interpolation[{{x1, {a1, b1}},{x2, {a2, b2}},...,{xi, {ai,
> bi}}...}], expecting to get a form where p[x] would return a 2D point.
>
> Too naive it seems, because it doesn't work. As far as I can
> determine, it returns only an Interpolation on a. How come? ...