《数字信号处理》正弦信号的波形及频谱的求解

        实验一:用MATLAB实现正弦信号y=cos(1/4*pi*t)波形及频谱,画图、对每一行代码进行标注并完成实验报告。

1.实验代码

        为实现正弦信号的波形和频谱,可通过编写傅里叶变换和傅里叶反变换的matlab函数,即编写其子程序,有“t2f.m”和“f2t.m”和task.m文件,详细编写如下所示。

新建matlab函数t2f.m文件

%傅里叶变换子程序
function X=t2f(x)
global dt df N t f T;           %定义全局变量。
%X=t2f(x)
%x 为时域的取样值矢量
%X 为 x 的傅氏变换
%X 与 x 长度相同,并为 2 的整幂。
%本函数需要一个全局变量 dt(时域取样间隔)
H=fft(x);                       %傅里叶变换。
X=[H(N/2+1:N),H(1:N/2)].*dt;    %x的傅氏变换。
end

新建matlab函数f2t.m文件

%傅里叶反变换子程序
function x=f2t(X)
global dt df t f T N;           %定义全局变量。
%x=f2t(X)
%x 为时域的取样值矢量
%X 为 x 的傅氏变换
%X 与 x 长度相同并为 2 的整幂
%本函数需要一个全局变量 dt(时域取样间隔)
X=[X(N/2+1:N),X(1:N/2)];        %x的傅氏变换。
x=ifft(X)/dt;                   %快速反傅里叶变换。
%x=[tmp(N/2+1:N),tmp(1:N/2)];
end
  • 4
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值