怎么用matlab求无限长序列的离散时间傅里叶变换

 时间:2026-02-15 23:42:38

1、假设有一无限长序列x(n),其表达式如图所示,其中u(n)表示单位阶跃函数。

怎么用matlab求无限长序列的离散时间傅里叶变换

2、我们首先根据离散时间傅里叶变换的定义把结果求出来,如图所示。求解时主要用到了等比级数求和。

怎么用matlab求无限长序列的离散时间傅里叶变换

3、根据离散傅里叶变换的两个重要性质:周期性和对称性。我们只需要求出[0,pi]频率点上对应的结果。将[0,pi]频率点均匀划分成300份,得到301个点,代码如下:

w = [0:1:300]*pi/300;

怎么用matlab求无限长序列的离散时间傅里叶变换

4、根据前述计算结果,写出变换代码:

X = exp(j*w)./(exp(j*w)-0.5*ones(1,301));

注意由于是矩阵减法,这里需要使用ones。

怎么用matlab求无限长序列的离散时间傅里叶变换

5、求出幅度谱,并用subplot命令画出来,代码如下:

magX = abs(X);

subplot(1,2,1)

plot(w,magX)

怎么用matlab求无限长序列的离散时间傅里叶变换

6、求出相位谱,并用subplot命令画出来,代码如下:

angX = angle(X);

subplot(1,2,2)

plot(w,angX)

至此,我们获得了无限长序列x(n)的离散时间傅里叶变换及其在频域的信息。

怎么用matlab求无限长序列的离散时间傅里叶变换

  • Matlab如何给图像添加高斯噪声?
  • matlab中simulink启动和使用
  • Quartus怎样编译并下载程序
  • c语言出现Use of undeclared identifier 问题
  • matlab如何将编辑器和命令行放在一个界面
  • 热门搜索
    人人快递怎么样 造梦西游3玄武怎么得 天龙八部攻略 天津美食攻略 杭州游玩攻略 上海动物园攻略 手机解锁图案忘了怎么办 qq怎么看特别关心我的人 减肥公司 三围怎么算