Re: Bug in Interpolation for multi-d data?
- To: mathgroup at smc.vnet.net
- Subject: [mg85991] Re: Bug in Interpolation for multi-d data?
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Sat, 1 Mar 2008 04:37:13 -0500 (EST)
- Organization: Uni Leipzig
- References: <fq8r74$jf4$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
Hi, you second example must be dat = Flatten[ Table[{{x, y}, Sin[x] Sin[2 y]}, {y, -3, 3, 0.1}, {x, -3, 3, 0.1}], 1]; dat[[{1, 2, 3}]] intp = Interpolation[dat]; ListPlot3D[Flatten /@ dat] Plot3D[intp[y, x], {x, -3, 3}, {y, -3, 3}] notice the intp[y,x] ... And f[x,y] is typicla not the same as f[y,x]. Regards Jens oshaughn wrote: > Hello, > > Interpolation on multi-d data gives different answers depending on the > order in which the elements are *ordered* in the list. As far as I > can tell, this is not documented. > The sorted element order seems to produce the right results. > > Example 1: > dat = Flatten[ > Table[{{x, y}, Sin[x] Sin[2 y]}, {x, -3, 3, 0.1}, {y, -3, 3, 0.1}], > 1]; > dat[[{1, 2, 3}]] > intp = Interpolation[dat]; > ListPlot3D[Flatten /@ dat] > Plot3D[intp[x, y], {x, -3, 3}, {y, -3, 3}] > > Example 2: > dat = Flatten[ > Table[{{x, y}, Sin[x] Sin[2 y]}, {y, -3, 3, 0.1}, {x, -3, 3, 0.1}], > 1]; > dat[[{1, 2, 3}]] > intp = Interpolation[dat]; > ListPlot3D[Flatten /@ dat] > Plot3D[intp[x, y], {x, -3, 3}, {y, -3, 3}] > > Example 3: > dat = Flatten[ > Table[{{x, y}, Sin[x] Sin[2 y]}, {y, -3, 3, 0.1}, {x, -3, 3, 0.1}], > 1]//Sort; > dat[[{1, 2, 3}]] > intp = Interpolation[dat]; > ListPlot3D[Flatten /@ dat] > Plot3D[intp[x, y], {x, -3, 3}, {y, -3, 3}] > > > Am I missing something obvious in the documentation? >