How to convert from (diagonal matrix to criculant matrix) and Vice versa

Theoretically when applying Fourier transform on a circulant matrix, the result will be a diagonal matrix, and the opposite operation is also work. When using (fft) or (ifft) functions in Matlab the result isn't the same as the theoretical, can any body help

 Risposta accettata

Matt J
Matt J il 26 Gen 2013
Modificato: Matt J il 26 Gen 2013
Not sure what theoretical result you're citing. It is true that if you do an FFT of all the columns of a circulant matrix followed by an IFFT on all the rows, you will get a diagonal matrix, and the following illustrates that.
>> C
C =
2 1 0 1
1 2 1 0
0 1 2 1
1 0 1 2
>> ifft(fft(C).').'
ans =
4 0 0 0
0 2 0 0
0 0 0 0
0 0 0 2

Più risposte (1)

Categorie

Scopri di più su Fourier Analysis and Filtering in Centro assistenza e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by