Non Uniform data interpolation

Started by Anshu November 3, 2005
Hi

I have a data vector x with uniform data points say [1 2 3 4 5]
and another data vector x_random with random data points say [.9 2.3 3.6 3.8 5.9]
The signal vector corresponding to random data is known and it consists of complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i want to interpolate nonuniform data points to get complex data corresponding to uniform point!!!

Can anybody help me? Do you know any matlab function for complex data interpolation?

Thanks
Anshu


I guess it depends on your application and depends on what you want to do. I
can think of the following cases:

a) your metric is the magnitude of the complex numbers and you want to
interpolate the magnitude (answer not unique)
b) your metric is the phase of the complex numbers and you then you want to
interpolate the phase (answer not unique)
c) you want to interpolate the real and imaginary parts of the complex
numbers independently (answer is unique)

For each of these, you are really interpolating a real number and can be
done in the standard method.

Nandan

On 11/3/05, Anshu <anshu_27@ansh...> wrote:
>
> Hi
>
> I have a data vector x with uniform data points say [1 2 3 4 5]
> and another data vector x_random with random data points say [.9 2.3 3.6
> 3.8 5.9]
> The signal vector corresponding to random data is known and it consists of
> complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i want
> to interpolate nonuniform data points to get complex data corresponding to
> uniform point!!!
>
> Can anybody help me? Do you know any matlab function for complex data
> interpolation?
>
> Thanks
> Anshu
>



Hi,

Copied directly from the interp1 help....

Interpolating Complex Data

For Real x and Complex Y. For interp1(x,Y,...) where x is real and Y is
complex, you can use any interp1 method except for 'pchip'. The
shape-preserving aspect of the 'pchip' algorithm involves the signs of the
slopes between the data points. Because there is no notion of sign with
complex data, it is impossible to talk about whether a function is
increasing or decreasing. Consequently, the 'pchip' algorithm does not
generalize to complex data.

The 'spline' method is often a good choice because piecewise cubic splines
are derived purely from smoothness conditions. The second derivative of the
interpolant must be continuous across the interpolating points. This does
not involve any notion of sign or shape and so generalizes to complex data.

For Complex x. For interp1(x,Y,...) where x is complex and Y is either real
or complex, use the two-dimensional interpolation routine interp2(REAL(x),
IMAG(x),Y,...) instead.

See Also

interpft, interp2, interp3, interpn, pchip, spline Regards,

Jeff
************************************
Jeff Winter
Snr Signal Processing Engineer
Aeroflex
www.aeroflex.com Check out our PXI RF digitizer:
www.aeroflex.com/pxi -----Original Message-----
From: matlab@matl... [mailto:matlab@matl...]On Behalf Of
Anshu
Sent: 03 November 2005 23:26
To: matlab@matl...
Subject: [matlab] Non Uniform data interpolation Hi

I have a data vector x with uniform data points say [1 2 3 4 5]
and another data vector x_random with random data points say [.9 2.3 3.6 3.8
5.9]
The signal vector corresponding to random data is known and it consists of
complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i
want to interpolate nonuniform data points to get complex data corresponding
to uniform point!!!

Can anybody help me? Do you know any matlab function for complex data
interpolation?

Thanks
Anshu


El 04/11/2005, a las 0:25, Anshu escribi

> Can anybody help me? Do you know any matlab function for complex
> data interpolation?

Complex numbers are an unordered bunch, so it's impossible to say
which complex numbers lie within any other two...

So, you need a metric on those complex data; it can be, real part,
imaginary part, its modulus, its argument (phase)... Depending on
what you need, you'll be able to figure out what to do.

--
Juan de Dios Santander Vela
Diplomado en CC. Ficas, Ingeniero en Electrica
Doctorando en Tecnologs Multimedia
Becario Predoctoral del Instituto de Astrofica de Andaluc

So hay 10 clases de personas en el mundo: las que entienden la
notaci binaria, y los que no.



El 04/11/2005, a las 0:25, Anshu escribi

> Can anybody help me? Do you know any matlab function for complex
> data interpolation?

Complex numbers are an unordered bunch, so it's impossible to say
which complex numbers lie within any other two...

So, you need a metric on those complex data; it can be, real part,
imaginary part, its modulus, its argument (phase)... Depending on
what you need, you'll be able to figure out what to do.

--
Juan de Dios Santander Vela
Diplomado en CC. Ficas, Ingeniero en Electrica
Doctorando en Tecnologs Multimedia
Becario Predoctoral del Instituto de Astrofica de Andaluc

So hay 10 clases de personas en el mundo: las que entienden la
notaci binaria, y los que no.



Hi,

Copied directly from the interp1 help....

Interpolating Complex Data

For Real x and Complex Y. For interp1(x,Y,...) where x is real and Y is
complex, you can use any interp1 method except for 'pchip'. The
shape-preserving aspect of the 'pchip' algorithm involves the signs of the
slopes between the data points. Because there is no notion of sign with
complex data, it is impossible to talk about whether a function is
increasing or decreasing. Consequently, the 'pchip' algorithm does not
generalize to complex data.

The 'spline' method is often a good choice because piecewise cubic splines
are derived purely from smoothness conditions. The second derivative of the
interpolant must be continuous across the interpolating points. This does
not involve any notion of sign or shape and so generalizes to complex data.

For Complex x. For interp1(x,Y,...) where x is complex and Y is either real
or complex, use the two-dimensional interpolation routine interp2(REAL(x),
IMAG(x),Y,...) instead.

See Also

interpft, interp2, interp3, interpn, pchip, spline Regards,

Jeff
************************************
Jeff Winter
Snr Signal Processing Engineer
Aeroflex
www.aeroflex.com Check out our PXI RF digitizer:
www.aeroflex.com/pxi -----Original Message-----
From: matlab@matl... [mailto:matlab@matl...]On Behalf Of
Anshu
Sent: 03 November 2005 23:26
To: matlab@matl...
Subject: [matlab] Non Uniform data interpolation Hi

I have a data vector x with uniform data points say [1 2 3 4 5]
and another data vector x_random with random data points say [.9 2.3 3.6 3.8
5.9]
The signal vector corresponding to random data is known and it consists of
complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i
want to interpolate nonuniform data points to get complex data corresponding
to uniform point!!!

Can anybody help me? Do you know any matlab function for complex data
interpolation?

Thanks
Anshu


I guess it depends on your application and depends on what you want to do. I
can think of the following cases:

a) your metric is the magnitude of the complex numbers and you want to
interpolate the magnitude (answer not unique)
b) your metric is the phase of the complex numbers and you then you want to
interpolate the phase (answer not unique)
c) you want to interpolate the real and imaginary parts of the complex
numbers independently (answer is unique)

For each of these, you are really interpolating a real number and can be
done in the standard method.

Nandan

On 11/3/05, Anshu <anshu_27@ansh...> wrote:
>
> Hi
>
> I have a data vector x with uniform data points say [1 2 3 4 5]
> and another data vector x_random with random data points say [.9 2.3 3.6
> 3.8 5.9]
> The signal vector corresponding to random data is known and it consists of
> complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i want
> to interpolate nonuniform data points to get complex data corresponding to
> uniform point!!!
>
> Can anybody help me? Do you know any matlab function for complex data
> interpolation?
>
> Thanks
> Anshu
>



Hi

I have a data vector x with uniform data points say [1 2 3 4 5]
and another data vector x_random with random data points say [.9 2.3 3.6 3.8 5.9]
The signal vector corresponding to random data is known and it consists of complex numbers like [-1 +i 2+2i 4-2i 1+3i -2+i]. The problem is that i want to interpolate nonuniform data points to get complex data corresponding to uniform point!!!

Can anybody help me? Do you know any matlab function for complex data interpolation?

Thanks
Anshu