实验一:用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