Hi all, I am trying to use sparse discrete fourier transform on a time series in matlab. I could not find any sample code written in matlab in that regard. Would you please help me resolving that?!
I came across this website but the code in there is written in c.
Thanks,

 채택된 답변

Matt J
Matt J 2013년 6월 4일
편집: Matt J 2013년 6월 4일

1 개 추천

How about something like this,
K=length(yourSignal);
%Reduced DFT matrix
M=exp( j*2*pi/K * bsxfun(@times,(0:K-1).', find(yourSignal).' - 1) );
result=M*nonzeros(yourSignal),

댓글 수: 2

tafteh
tafteh 2013년 6월 4일
편집: tafteh 2017년 2월 2일
Thanks Matt, My question is that whether the sparse algorithm would be a different technique in power spectrum estimation? or it is just faster way of estimating using DFT method?
Matt J
Matt J 2013년 6월 4일
편집: Matt J 2013년 6월 4일
What I presented would be a faster DFT for sparse input signals. If that's not the goal, you should clarify what is.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

dongyang gao
dongyang gao 2016년 12월 12일

0 개 추천

I also want to this code maded in matlab, could you help me ?

카테고리

도움말 센터File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

질문:

2013년 6월 4일

편집:

2017년 2월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by