MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

An Interesting Interpolation Problem




Mathgroup:

I need your help once again.  Any feedback would be much appreciated.  
I'm really going to test my powers of explanation so here we go......

I have a two-dimensional matrix.  I would like to create an 
interpolating object of this thing, but I do not wish to use the 
standard interpolating procedure built-in to Mathematica as it would 
obscure the "threshold" nature of this matrix.  Let me explain.  
Consider the following 3 X 3 matrix in MatrixForm(I'm using letters
just  for the sake of discussion, numbers will actually be used):

a 0 0
b c 0
d e f

Let's call this mat, so mat[[1,1]] = a, mat[[1,2]] = 0, etc.

Imagine that I create an interpolating object of mat (matinterp  
ListInterpolation[mat,InterpolationOrder->1], I just use linear 
interpolation for the sake of discussion, I don't think the type of 
algorithm available in Mathematica will solve my problem).

If I put matinterp[1,1], I get "a".  This is correct.

If I put matinterp[1,1.01], the algorithm will use information at 
surrounding values, such as "a","0","b","c", to approximate 
matinterp[1,1.01].

I DON'T WANT IT TO DO THIS!!!

When I put in matinterp[1,1.01], I wish it to return 0.  This matrix 
represents threshold behavior, I want there to be sharp
discontinuities,  yet the interpolating object smoothes these out.

This is a tricky problem to say the least.  I was thinking of pulling 
out the points which lie on the "threshold curve."  This would be (the
 form is {x coord, y coord, value} ):

{1,1,a}
{2,2,c}
{3,3,f}.

Imaging that I plotted the INTERPOLATED "threshold" in xy space.  Then,
 (x,y) combinations ABOVE the "threshold" would receive a value of
zero.   (x,y) combinations BELOW or ON the "threshold" would receive
some kind  of value.  The trick is, however, that for (x,y)
combinations BELOW or  ON the "threshold" any interpolating which
needed to be done (i.e. the  point may lie off of the grid) can only
use information for points below  the threshold---the algorithm cannot
use the 0 values above the  threshold.  I think this is the hard part.

I realize this is a little complex, but any help would be much 
appreciated.

Thanks,

Chris Farr




  • Prev by Date: Re: BesselJZeros strangeness
  • Next by Date: problem with Coefficient
  • Prev by thread: Re: Sqrt Problems
  • Next by thread: problem with Coefficient