matlab dtft的函数,DTFT的Matlab矩阵计算的理解

其实是早应该想到的,今天写程序的时候想到了。然后,跟同学说起来,说,原来国外的教材很多都是矩阵的形式来表示离散傅里叶变换的。但是国内的教材没有这么表达。

一个是,自己看的东西还是少了,一个是,matlab本来应该是混饭吃的东西,用的也不熟,理解还欠很多,另外一个是,对于线性代数,矩阵,的理解还真是浅薄。这么有用的东西,自己还是应该抽空看看的。

对于x[n]的离散时间傅里叶变换

702d1ef25e84

离散时间傅里叶变换

对于N点序列,离散傅里叶变换

702d1ef25e84

离散傅里叶变换

可以看到,先是乘法,然后是求和。很容易想到,对于矩阵的乘法,就是先一行乘以一列,再把各个值相加,为一项的值,再去做下一步。

到最后需要得到的是一个1xN(或1xW)的矩阵,所以矩阵乘法中,左边的应该是一个一行的矩阵,为x[n],exp中,需要得到一个NxN(或者NxW)的矩阵,由,nk得到,形式为n’*w。

clc;

fs=100; %采样频率

N=128; %数据点数

n=0:N-1;

t=n/fs; %时间序列

x=0.5*sin(2*pi*15*t)+2*sin(2*pi*40*t); %信号

%此处x[n],就是需要的输入的序列

%注意,matlab标号从一开始,所以需要有n+1

w=[0:999]

%w为一千个点,在这里相当于,w是连续的,若w的数量等于N,则就是N点的DFT。

y=x(n+1)*exp(-j*2*pi/N*n'*w)

%y[w]即傅里叶变换系数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值