Problem in finding ABS of a complex number of 2D matrix

5 Ansichten (letzte 30 Tage)
Bharath
Bharath am 17 Feb. 2015
Kommentiert: Bharath am 17 Feb. 2015
I've created a 2D matrix of size 4096x28 which contains complex numbers generated after performing FFT on a raw signal. Now I'm trying to find abs of the complex numbers in this matrix. But I get an error my code and error are as follows
%fft for X signal
fftx=fft(reshape(T_hor,4096,[]));
%Xn value of the complex signal
Xn = abs(fftx);
%phase angle for X signal
alpha = angle(fftx);
%FFT for Y signal
ffty= fft(reshape(T_ver,4096,[]));
%Yn value for the complex signal
Yn=abs(ffty,NFFT);
%phase angle for the second signal
beta=angle(ffty);
I get this error
"??? Error using ==> abs
Too many input arguments.
Error in ==> Test_run_discard_AU_2 at 31
Yn=abs(ffty,NFFT);"
Any hints or suggestions would be really helpful. Thanks in advance.

Akzeptierte Antwort

Stephen23
Stephen23 am 17 Feb. 2015
Bearbeitet: Stephen23 am 17 Feb. 2015
abs only accepts one input argument, whereas you are trying to use it with two: abs(ffty,NFFT).
In fact abs is defined as a unary operation , so what operation are you hoping to achieve by providing it with two arguments?
  4 Kommentare
Yoav Livneh
Yoav Livneh am 17 Feb. 2015
Use
Yn=abs(ffty);
like Stephen Cobeldick said, and you should be fine.
Bharath
Bharath am 17 Feb. 2015
Sorry guys! Little confused. I used only one argument for abs for fftx but ffty I made a mistake. I didn't see that. So I was thinking something else. Thanks again for your valuable time.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by