cancel
Showing results for
Did you mean:
cancel
Showing results for
Did you mean:

5-Regular Member

## Upsample or interpolate complex numbers

Does anyone know of a method to interpolate or upsample a "straight line" between 2 complex points?

For example, between points (1+1j) and (4+4j) get (arbitrary) 2 more points: (2+2j) and (3+3j).

Or as shown in picture, get vector [Matrix?] Z (not exactly, but similar) from W.

1 ACCEPTED SOLUTION

Accepted Solutions
24-Ruby IV
(To:vyerokhin)

@vyerokhin wrote:

Does anyone know of a method to interpolate or upsample a "straight line" between 2 complex points?

complex "points"? You obviously mean complex numbers.

You do i the same way as with real numbers.

Maybe that way:

8 REPLIES 8
24-Ruby IV
(To:vyerokhin)

@vyerokhin wrote:

Does anyone know of a method to interpolate or upsample a "straight line" between 2 complex points?

complex "points"? You obviously mean complex numbers.

You do i the same way as with real numbers.

Maybe that way:

5-Regular Member
(To:Werner_E)

Thank you very much, Werner_E!

Yes - I meant complex number. I said complex points because I was thinking in terms of plotting on a complex plain.

17-Peridot
(To:Werner_E)

May be this is a next step of this subject.

Tokoro

24-Ruby IV
(To:ttokoro)

You like playing around with thing and had posted some interesting worksheets in the past 😉

Here is UpSamplePoly based on your idea to use "polyint":

The drawback here is that real parts and imaginary parts are treated differently and so depending on the initial data set it may yield very strange and unusable results.

Try to exchange real and imaginary parts in your sample data -> W:=Im(W)+1i*Re(W)

and see what happens 🙂

24-Ruby IV
(To:Werner_E)

Of course things look (a little bit) better if we sort W by the real parts beforehand.

24-Ruby IV
(To:Werner_E)

Here is a last version that uses polyint and still handles real and imaginary parts alike.
It may be useful in some situations, less useful in others.

24-Ruby IV
(To:Werner_E)

And here is the real last one 😉

I got rid of polyint and replaced it by cubic spline interpolation. This tends not that much to overshoot and is more stable, especially with larger data vectors.

17-Peridot
(To:Werner_E)

Thanks Werner. Second line in your UpSampleSplineC is a key technique of this function.

Indexes of rows(W) such as 0,1,2,3 can be used as base of both Wx and Wy for up sampling.