導航:首頁 > 源碼編譯 > 頻域累積演算法

頻域累積演算法

發布時間:2023-05-09 15:23:00

㈠ 如何用matlab實現頻域塊LMS演算法

先對t離散化,然後FFT,再畫個幅頻和相頻就可以了。
不過貌似你這個式子有點問題,randn產生1*1024的高斯雜訊已經指定了s的維數了,所以t必須去1024個離散值,限定了t的取值了。
你可以參考下面的程序,建議你看懂之後自己編一下。
這是對sin(x)求幅頻相頻
%用fft求幅頻相頻
clc;%清空
clearall;%清除所有變數
closeall;%關閉所有窗口
A=10;%振幅
fw=50;%固有頻率
phi=pi/3;%相位
step=1000;
t=0:1/step:10*pi;%時間t
y=A*sin(2*pi*fw*t+phi);%正弦函數y
f=step*(0:256)/512;%頻率
subplot(3,1,1);%三行一列第一幅圖
plot(t,y);%繪制圖形
xlabel('t/s','fontsize',13);%橫坐標顯示t/s,字型大小13
ylabel('y','fontsize',13);%縱坐標顯示y,字型大小13
title('正弦函數曲線','fontsize',13);%顯示標題
Y=fft(y,512);%對y進行傅里葉變換
subplot(3,1,2);%三行一列第二幅圖
plot(f,abs(Y(1:257)));%繪制圖形
xlabel('f/Hz','fontsize',13);%橫坐標顯示f/Hz,字型大小13
ylabel('幅值','fontsize',13);%縱坐標顯示幅值,字型大小13
title('幅頻特性曲線','fontsize',13);%顯示標題
[value,index]=max(abs(Y));%將abs(Y)最大值點的橫坐標、縱坐標分別賦給
value和index
text(f(index),value,sprintf('maxpiont=(%f,%f)',f(index),value),'fonts
ize',13);%顯示最大值點坐標
subplot(3,1,3);%三行一列第三幅圖
plot(f,angle(Y(1:257))*180/pi);%繪制圖形
xlabel('f/Hz','fontsize',13);%橫坐標顯示f/Hz,字型大小13
ylabel('相位/°','fontsize',13);%縱坐標顯示相位/°,字型大小13
title('相位特性曲線','fontsize',13);%顯示標題

閱讀全文

與頻域累積演算法相關的資料

熱點內容
有些硬碟能加密 瀏覽:635
安卓車機怎麼換開局動畫 瀏覽:687
安卓手機如何設置卸載軟體 瀏覽:86
用友加密狗號給別人 瀏覽:219
電腦裡面怎麼找到編譯器 瀏覽:493
編譯速度與相關 瀏覽:294
我的奮斗羅永浩pdf微盤 瀏覽:505
方舟編譯器優化怎麼樣 瀏覽:868
pclogo填充命令 瀏覽:242
無錫php工作機會多麼 瀏覽:52
當程序員知道客戶還在用ie 瀏覽:889
python運維監控系統 瀏覽:994
windows泄露代碼編譯 瀏覽:406
雲伺服器有無限流量嗎 瀏覽:656
奔騰t55壓縮比 瀏覽:620
python不彈出cmd窗口 瀏覽:922
cad解壓不到e盤 瀏覽:709
phpfopen用法 瀏覽:805
cuda文件和cpp混合編譯 瀏覽:191
鴻蒙自帶主題在哪個文件夾 瀏覽:941