[問題] 有關convolution的問題....已回收

看板MATLAB作者 (我要去澳洲玩!!!)時間16年前 (2009/08/20 00:33), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
剛剛在研究跟convolution有關的數學式 但是碰到了一些問題不知道是程式錯誤還是觀念錯了..... ps其實我很好奇下面為啥會相等....(他們的"長度"不是不同嗎?) -------------------------------分隔線------------------------------------ N-1 y(k)= Σ [x(n).e^(-i(πn^2)/N)].[e^(i(π(k-n)^2)/N)] = a(k) * b(k) n=0 ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ↑ a(n) b(k-n) convolution ↑_____________________a________________________↑ ↑____b____↑ 從數學式子來看這ab兩部分式相同的.... 但是我將ab部分分別用matlab程式去寫,發現結果卻不是相同的 ------------------------------下面是程式碼-------------------------------- (a部分的程式碼) clear; clc; for n=1:128 x(n)=1024*sin(n*(2*pi)/128); end for k=1:128 for n=1:128 a1(n)=(x(n)*exp(-i*(pi*(n-1)^2)/128)); b1(n)=exp(i*(pi*((k-1)-(n-1))^2)/128); a(k,n)= a1(n)*b1(n) ; end end temp(k)=sum(a(k,:)); (b部分的程式碼) clear; clc; for n=1:128 x(n)=1024*sin(n*(2*pi)/128); end for k=1:128 q(k)=x(k)*exp(-i*(pi*(k-1)^2)/128); w(k)=exp(i*(pi*(k-1)^2)/128); end tt=conv(w,q); %取前面128個 for k=1:128 ans(k)=tt(k); end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.217.198.217 ※ 編輯: arloha 來自: 140.118.107.144 (08/20 10:34)
文章代碼(AID): #1AZ2bnuH (MATLAB)
文章代碼(AID): #1AZ2bnuH (MATLAB)