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

5 visualizzazioni (ultimi 30 giorni)
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.

Risposta accettata

Stephen23
Stephen23 il 17 Feb 2015
Modificato: Stephen23 il 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 Commenti
Yoav Livneh
Yoav Livneh il 17 Feb 2015
Use
Yn=abs(ffty);
like Stephen Cobeldick said, and you should be fine.
Bharath
Bharath il 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Fourier Analysis and Filtering in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by