matlab离散傅立叶变换.docx
- 文档编号:9506924
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:12
- 大小:1.05MB
matlab离散傅立叶变换.docx
《matlab离散傅立叶变换.docx》由会员分享,可在线阅读,更多相关《matlab离散傅立叶变换.docx(12页珍藏版)》请在冰豆网上搜索。
matlab离散傅立叶变换
离散傅立叶变换
•、实验目的
♦
掌握离散傅里叶变换的有关性质。
利用matlab验证有关性质。
利用傅立叶变换进行相关运算。
、实验原理及方法
所以“时间”或“频率”取连续还是离散值,就形成
各种不同形式的傅里叶变换对。
傅里叶变换
在工程技术的许多分支中,要掌握的基本内容之一就是正确理解时威和频域的关系。
对于数字系统来说,就是要精通离散傅立叶变换,因此离散傅立叶变换在数字信号处理中占有十分重要的地位。
在实际应用中,有限长序列有相当重要的地位,由于计算机容量的限制,只能对过程进行逐段分析。
由于有限长序列,引入DFT(离散付里叶变换)。
建立以时间t为自变量的“信号”与以频率f为自变量的“频率函数”(频谱)之间的某种变换关系。
傅里叶级数(FS):
连续时间,离散频率的傅里叶变换。
周期连续时间信号傅里叶级数(FS)得到非周期离散频谱密度函数。
傅里叶变换(FT):
连续时间,连续频率的傅里叶变换。
非周期连续时间信号通过连续付里叶变换(FT)得到非周期连续频谱密度函数・
序列的傅里叶变换(DTFT):
离散时间,连续频率的傅里叶变换。
非周期离散的时间信号(单位园上的Z变换(DTFT))得到周期性连续的频率函数。
离散傅里叶变换(DFT):
离散时间,离散频率的傅里叶变换。
计算机上运算,因为至少在一个域(时域或频域)中,函数是连续的。
因为从数字计算角度
离散傅里叶级数(DFS)
设x(n)为周期为N的周期序列,则其离散傅里叶级数
(DFS)变换对为:
正变换
X{k)=DFS[jc(h)]=工上Nzr-0
逆变换
1N7严腻
兀⑺)=/QFS[X伙)]=—工^伙上N
N
♦其中_芦
必之N
N_\
N-1
=Yx伙)wy*层0
利用MATLAB实现傅立叶级数计算
♦编写函数实现DFS计算
♦functionxk=dfs(xn,N)
n=[O:
l:
N-l]:
k=n;
WN=exp(-j*2*pi/N);
nk二n'*k;
WNnk^WN.nk:
xk二xn*WNnk:
♦
♦
♦
♦
例:
xn=[O,1,2,3],N=4
xk=dfs(xn,N)'
xn=[0,1,2,3]:
N=4:
逆运算IDFS
♦functionxn=idfs(xk,N)
n=[0:
l:
N-l]:
k=n;
WN=exp(-j*2*pi/N);
nk=n^*k;
WNnk=WN.d(-nk):
xn=xk*WNnk/N;
N-\_■込M
x(k)=£>Fn兀(H)i=工兀("比7刁"
n=0
1N-\m畑
x(n)=/DFT\X伙)]=方工X伙)yN
♦比较正、逆变换的定义式可以看出,只要把DFT公式中
的系数从改为丿芳皿,并最后乘以1/N,那么,
eZeZ
DFT的计算程序就可以用来计算IDFTo
麗例5已知序列x(n)=cos(0<487cn)+cos(0.527rn),(0 N=100; n=O: N-l;xn=cos(0.48*pi*n)+cos(0.52*pi*n);xk=dft(xn,N): niagxk=abs(xk); subplot(2,1,1)plot(n,xn)subplot(2,1>2)k=0: length(magxk)-l;plot(k,magxk) I♦DFT在数字滤波、功率谱分析、仿真、系统分析、通讯理论方面有广泛的应用。 霧DFT的特性 周期性对称性线性时移频移共純折叠实序列的对称性卷积 例: x(f7)=(O・9exp(7;T/3))",O 因为x(n)是复指数,它满足周期性,我们将在两个周期中的401个频点上作计算来观察其周期性。 n=0: 10; x=(0.9*exp(j*pi/3))."n;k=-200: 200: w=(pi/100)*k: X=x*(exp(-j*pi/100)).*(n**k);magX=abs(X); angX=angle(X);subplot(2,1,1);plot(w/pi,magX); subplot(2,1,2); plot(w/pi,angX/pi); ♦ 检验频移特性 乘以复数指数对应于一个频移 令x{n}=cos(z7;r/2),()<« 0()y(^ny=eE'2xQn) Bl 从图中可以看出幅值和相位均沿频率轴平移了夕 n=0: 100;x=cos(pi*n/2); k=-100: 100;w=(pi/100)*k: X=x*(exp(-j*pi/100))."(n**k); y=exp(j*pi*n/4)•*x; Y=y*(exp(-j*pi/100))."(n**k); subplot(2,2H): plot(w/pi,abs(X)): axis([-l,1,0,60]); subplot(2>2>2): plot(w/pi,angle(X)/pi): axis([T,1,T,1]); subplot(2,2,3): plot(w/pi,abs(Y)): axis([-l,1,0,60]): subplot(2,2,4): plot(w/pi,angle(Y)/pi);axis([-L1,-L1]): 从差分方程求频率响应 ♦ 当LTI系统用差分方程表示如下: ♦ ZM v(fO十ZdvQi-l)=/«) /■}mwO 上式做变换 NM +N同H(严‘2®八=2九&E消去共有项#备 ♦ H("') "1十f空一皿 山1 例: 一个LTI系统的差分方程如下: y(n)=0.8y(n-1)+x(n) 求H(e>) 求出并画出它对输入v(/0=cos(0.05;rH)«(n)的稳态响应 ♦ 把差分方程改写成 y(n)-0.8y(n-l)=x(n) 利用上面分析的公式,可得 将系统的输入x(ii)带入 因此 y„(n)=4.0928cos(Q.Q5^n-0.53力)=4・0928cos[0.05;r(«-3・42)] 输出端信号放大4.0928倍并移位3.42个采样周期 函数filter 对给定输入和差分方程系数时求解差分方程的数值解。 格式 y=filler(b,a,x) 其中b・a为差分方程的系数向量,X是输入序列。 输出y和输入X的长度一致。 J □ 0 30 ao 5r .0 20 ♦ ♦ n=0: 100: ♦ ♦ y=fliter(b,a,x); ♦ ♦ xlabel('rf): ylabelCx(n)');titleC输入序列'); ♦ ♦ xlabelCI? );ylabel('y(n)');titleC输出序列'); ♦ x=cos(0.05*pi*n); b=l: a=[l,-0.8]: subplot(2,1,2);stem(n,y) subplot(2,1,1);stem(n,x) 1 11... sc 90 %•… 7 / 0罗 3 r> ⑥出序列 Cj % D> •05 70 •5 in FC an 0 T1 60 7D m 输入序列 1I 1DU •5 四、实验报告要求 ♦简述实验目的和实验原理。 切 •总结实验中的主要结论,你的收获和体会。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 离散 傅立叶 变换