中南大学 信号与系统matlab实验报告
信号与系统matlab实验报告
信号与系统MATLAB实验报告实验目的本实验旨在通过MATLAB软件进行信号与系统的相关实验,探究信号与系统的特性与应用。
实验步骤1. 准备工作在正式进行实验之前,我们需要做一些准备工作。
首先,确保已经安装好MATLAB软件,并且熟悉基本的操作方法。
其次,准备好实验所需的信号与系统数据,可以是已知的标准信号,也可以是自己采集的实际信号。
2. 信号的生成与显示使用MATLAB编写代码,生成不同类型的信号。
例如,可以生成正弦信号、方波信号、三角波信号等。
通过绘制信号波形图,观察不同信号的特点和变化。
t = 0:0.1:10; % 时间范围f = 1; % 信号频率s = sin(2*pi*f*t); % 正弦信号plot(t, s); % 绘制信号波形图3. 系统的建模与分析根据实验需求,建立相应的系统模型。
可以是线性时不变系统,也可以是非线性时变系统。
通过MATLAB进行模型的建立和分析,包括系统的时域特性、频域特性、稳定性等。
sys = tf([1, 2], [1, 3, 2]); % 系统传递函数模型step(sys); % 绘制系统的阶跃响应图4. 信号与系统的运算对于给定的信号和系统,进行信号与系统的运算。
例如,进行信号的卷积运算、系统的响应计算等。
通过MATLAB实现运算,并分析结果的意义与应用。
x = [1, 2, 3]; % 输入信号h = [4, 5, 6]; % 系统响应y = conv(x, h); % 信号的卷积运算plot(y); % 绘制卷积结果的波形图5. 实验结果分析根据实验数据和分析结果,对实验进行结果总结与分析。
可以从信号的特性、系统的特性、运算结果等方面进行综合性的讨论和分析。
实验总结通过本次实验,我们学习了如何在MATLAB中进行信号与系统的实验。
通过生成信号、建立系统模型、进行运算分析等步骤,我们深入理解了信号与系统的基本原理和应用方法。
通过实验数据和结果分析,我们对信号与系统有了更深刻的认识,并掌握了MATLAB在信号与系统实验中的应用技巧。
信号与系统实验matlab报告
大连理工大学本科实验报告课程名称:信号与系统实验学院(系):电信学部专业:电子班级:学号:姓名:实验一信号的频谱图一、实验目的1. 掌握周期信号的傅里叶级数展开2. 掌握周期信号的有限项傅里叶级数逼近3. 掌握周期信号的频谱分析4. 掌握连续非周期信号的傅立叶变换5. 掌握傅立叶变换的性质二、习题:t=-3:0.01:3;n0=-3;n1=-1;t0=2;for i=0:2t1=n0:0.01:n0+t0/2;x1=t1-n0;t2=n1-t0/2:0.01:n1;x2=-t2+n1;plot(t1,x1,'r',t2,x2,'r');hold on;n0=n0+t0;n1=n1+t0;endn_max=[1 3 7 15 31];N=length(n_max);for k=1:Nn=1; sum=0;while (n<(n_max(k)+1))b=4./pi/pi/n/n;y=b*cos(n*pi*t);sum=sum+y;n=n+2;endfigure;n0=-3;n1=-1;t0=2;for i=0:2t1=n0:0.01:n0+t0/2;x1=t1-n0;t2=n1-t0/2:0.01:n1;x2=-t2+n1;plot(t1,x1,'r',t2,x2,'r');hold on; n0=n0+t0; n1=n1+t0; endy=sum+0.5; plot(t,y,'b');xlabel('t'),ylabel('wove'); hold off;axis([-3.01 3.01 -0.01 1.01]); grid on;title(['the max=',num2str(n_max(k))]) Endtw o v ethe max=1tw o v ethe max=7for k=1:3;n=-30:30;tao=k;T=2*k; w=2*pi/T; x=n*tao*0.5fn1=sinc(x/pi); fn=tao*fn1.*fn1; subplot(3,1,k),stem(n*w,fn);grid ontitle(['T=',num2str(2*k)]); axis([-30 30 0 k]); endtw o v ethe max=3ft=sym('sin(2*pi*(t-1))/(pi*(t-1))');Fw=fourier(ft); subplot(2,1,1); ezplot(abs(Fw)); grid on ;title('fudupu');phase=atan(imag(Fw)/real(Fw));subplot(2,1,2); ezplot(phase); grid on ;title('xiangweipu');ft=sym('(sin(pi*t)/(pi*t))^2'); Fw=fourier(ft); subplot(2,1,1); ezplot(abs(Fw)); grid on ; title('fudupu');phase=atan(imag(Fw)/real(Fw));subplot(2,1,2); ezplot(phase); grid on ; title('xiangweipu');-6-4-20246wfudupu-6-4-20246wxiangweipuwfudupu-6-4-20246wxiangweipu(1)syms tFw=sym('10/(3+i*w)-4/(5+i*w)')ft=ifourier(Fw,t)ezplot(ft);grid on2 heaviside(t) (-2 exp(-5 t)+5 exp(-3 t))t(2)syms tFw=sym('exp(-4*w^2)')ft=ifourier(Fw,t)ezplot(ft);grid on1/4/ 1/2 exp(-1/16 t2)tdt = 0.01; t = -0.5:dt:0.5;ft = uCT(t+0.5)-uCT(t-0.5); N = 2000; k = -N:N;W = 2*pi*k/((2*N+1)*dt); F = dt * ft*exp(-j*t'*W); plot(W,F), grid on三、 实验体会:这是第一次信号上机实验,在这次实验中第一次接触到了matlab 这个强大的工程软件,同时学会了对绘制时信号的时域波形和对信号进行频域分析。
中南大学Matlab实验报告(优选.)
最新文件---------------- 仅供参考--------------------已改成-----------word文本 --------------------- 方便更改赠人玫瑰,手留余香。
Matlab实验报告姓名:班级:班学号:目录实验一熟悉MATLAB环境 (3)实验二数值数组创建、应用及可视化 ................................ 错误!未定义书签。
实验三字符串数组的使用、简单脚本文件和函数的编写错误!未定义书签。
实验四数据可视化方法 .. (22)Matlab实验报告实验室名称:综合实验楼4楼实验日期:2014年12月[实验目的]1 .熟悉 MATLAB 主界面,并学会简单的菜单操作。
2 .学会简单的矩阵输入与信号输入。
3 .掌握部分绘图函数。
[实验原理]MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。
它提供了各种矩阵的运算与操作,并有较强的绘图功能。
用户第一次使用 MATLAB 时,建议首先在屏幕上键入 demo 命令,它将启动 MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。
也可以键入 help 进行进一步了解。
MATLAB 启动界面如图所示:操作界面主要的介绍如下:指令窗(Command Window ),在该窗可键入各种送给MATLAB 运作的指令、函数、表达式,并显示除图形外的所以运算结果。
历史指令窗( Command History ),该窗记录已经运行过的指令、函数、表达式;允许自己的编写文件。
MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在 MATLAB 定义的搜索路径其他目录中,检查是否有该 M 文件存在。
MATLAB实验报告(1-4)
信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。
2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。
4.学会运用MATLAB进行连续信号时移、反折和尺度变换。
5.学会运用MATLAB进行连续时间微分、积分运算。
6.学会运用MATLAB进行连续信号相加、相乘运算。
7.学会运用MATLAB进行连续信号的奇偶分解。
二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。
三、实验内容1.MATLAB软件基本运算入门。
1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。
2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。
矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。
2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。
3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。
举例:计算一个函数并绘制出在对应区间上对应的值。
2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。
信号与系统MATLAB实验报告
实验报告实验课程:信号与系统—Matlab综合实验学生姓名:学号:专业班级:2012年5月20日基本编程与simulink仿真实验1—1编写函数(function)∑=m n k n 1并调用地址求和∑∑∑===++10011-8015012n n n n n n 。
实验程序:Function sum=qiuhe(m,k)Sum=0For i=1:m Sum=sum+i^k End实验结果;qiuhe(50,2)+qiuhe(80,1)+qiuhe(100,-1)ans=4.6170e+004。
1-2试利用两种方式求解微分方程响应(1)用simulink对下列微分方程进行系统仿真并得到输出波形。
(2)编程求解(转移函数tf)利用plot函数画图,比较simulink图和plot图。
)()(4)(6)(5)(d 22t e t e d d t r t r d d t r d tt t +=++在e(t)分别取u(t)、S(t)和sin(20пt)时的情况!试验过程(1)(2)a=[1,5,6]; b=[4,1]; sys=tf(b,a); t=[0:0.1:10]; step(sys)连续时间系统的时域分析3-1、已知某系统的微分方程:)()()()()(d 2t e t e d t r t r d t r tt t +=++分别用两种方法计算其冲激响应和阶跃响应,对比理论结果进行验证。
实验程序:a=[1,1,1];b=[1,1];sys=tf(b,a);t=[0:0.01:10];figure;subplot(2,2,1);step(sys);subplot(2,2,2);x_step=zeros(size(t));x_step(t>0)=1;x_step(t==0)=1/2;lsim(sys,x_step,t);subplot(2,2,3);impulse(sys,t);title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');subplot(2,2,4);x_delta=zeros(size(t));x_delta(t==0)=100;[y1,t]=lsim(sys,x_delta,t);y2=y1;plot(t,y2);title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');运行结果如下:3-2;请编写一个自定义函数[F,tF}=intl(f,tf,a)实现数值积分,其中f和tf分别用列矢量表示待积函数的抽样值和抽样时间,a表示积分的起始时间,F和tF分别表示积分结果的抽样值和抽样时间。
MATLAB信号与系统实验报告
信号与系统实验报告(5)MATLAB 综合实验项目二 连续系统的频域分析目的:周期信号输入连续系统的响应可用傅里叶级数分析。
由于计算过程烦琐,最适合用MATLAB 计算。
通过编程实现对输入信号、输出信号的频谱和时域响应的计算,认识计算机在系统分析中的作用。
任务:线性连续系统的系统函数为11)(+=ωωj j H ,输入信号为周期矩形波如图1所示,用MATLAB 分析系统的输入频谱、输出频谱以及系统的时域响应。
图1方法:1、确定周期信号f(t)的频谱nF 。
基波频率Ω。
2、确定系统函数)(Ωjn H 。
3、计算输出信号的频谱nn F jn H Y )(Ω= 4、系统的时域响应∑∞-∞=Ω=n tjn neY t y )(MATLAB 计算为y=Y_n*exp(j*w0*n'*t);要求(画出3幅图):1、在一幅图中画输入信号f(t)和输入信号幅度频谱|F(jω)|。
用两个子图画出。
2、画出系统函数的幅度频谱|H(jω)|。
3、在一幅图中画输出信号y(t)和输出信号幅度频谱|Y(jω)|。
用两个子图画出。
解:(1)分析计算:输入信号的频谱为(n)输入信号最小周期为=2,脉冲宽度,基波频率Ω=2π/=π,所以(n)系统函数为因此输出信号的频谱为系统响应为(2)程序:t=linspace(-3,3,300);tau_T=1/4; %n0=-20;n1=20;n=n0:n1; %计算谐波次数20F_n=tau_T*Sa(tau_T*pi*n);f=2*(rectpuls(t+1.75,0.5)+rectpuls(t-0.25,0.5)+rectpuls(t-2.25,0.5));figure(1),subplot(2,1,1),line(t,f,'linewidth',2); %输入信号的波形axis([-3,3,-0.1,2.1]);grid onxlabel('Time(sec)','fontsize',8),title('输入信号','fontweight','bold') %设定字体大小,文本字符的粗细text(-0.4,0.8,'f(t)')subplot(2,1,2),stem(n,abs(F_n),'.'); %输入信号的幅度频谱xlabel('n','fontsize',8),title('输入信号的幅度频谱','fontweight','bold')text(-4.0,0.2,'|Fn|')H_n=1./(i*n*pi+1);figure(2),stem(n,abs(H_n),'.'); %系统函数的幅度频谱xlabel('n','fontsize',8),title('系统函数的幅度频谱','fontweight','bold')text(-2.5,0.5,'|Hn|')Y_n=H_n.*F_n;y=Y_n*exp(i*pi*n'*t);figure(3),subplot(2,1,1),line(t,y,'linewidth',2); %输出信号的波形axis([-3,3,0,0.5]);grid onxlabel('Time(sec)','fontsize',8),title('输出信号','fontweight','bold')text(-0.4,0.3,'y(t)')subplot(2,1,2),stem(n,abs(Y_n),'.'); %输出信号的幅度频谱xlabel('n','fontsize',8),title('输出信号的幅度频谱','fontweight','bold')text(-4.0,0.2,'|Yn|')(3)波形:-3-2-1012300.511.52Time(sec)输入信号n输入信号的幅度频谱-20-15-10-55101520n系统函数的幅度频谱-3-2-112300.10.20.30.4Time(sec)输出信号n输出信号的幅度频谱项目三 连续系统的复频域分析目的:周期信号输入连续系统的响应也可用拉氏变换分析。
matlab信号与系统实验报告
matlab信号与系统实验报告Matlab信号与系统实验报告引言:信号与系统是电子工程、通信工程等领域中的重要基础课程,对于理解和应用各种信号处理技术具有重要意义。
本实验报告旨在通过使用Matlab软件,对信号与系统的基本概念和实验进行探讨和分析。
实验一:信号的基本特性分析在信号与系统的研究中,我们首先需要了解信号的基本特性。
通过Matlab软件,我们可以方便地对不同类型的信号进行分析和处理。
在本实验中,我们选择了常见的正弦信号和方波信号进行分析。
首先,我们生成了一个频率为1kHz,幅度为2V的正弦信号,并绘制了其时域波形图和频谱图。
通过观察时域波形图,我们可以看到正弦信号具有周期性和连续性的特点。
而通过频谱图,我们可以看到正弦信号在频域上只有一个峰值,说明其是单频信号。
接下来,我们生成了一个频率为1kHz,幅度为2V,占空比为50%的方波信号,并绘制了其时域波形图和频谱图。
与正弦信号不同,方波信号具有分段常值的特点。
通过频谱图,我们可以看到方波信号在频域上存在多个谐波分量,说明其是由多个频率的正弦信号叠加而成。
实验二:系统的时域响应分析在信号与系统中,系统的时域响应是描述系统对输入信号进行处理的重要指标。
通过Matlab软件,我们可以方便地分析和绘制系统的时域响应。
在本实验中,我们选择了一个一阶低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
通过绘制输入信号和输出信号的时域波形图,我们可以观察到系统对输入信号进行了滤波处理,输出信号的幅度和相位发生了变化。
此外,我们还可以通过改变系统的参数,如截止频率和阶数,来观察系统的时域响应的变化。
通过对比不同参数下的输出信号波形图,我们可以得出不同参数对系统响应的影响。
实验三:系统的频域响应分析除了时域响应,频域响应也是描述系统特性的重要指标。
通过Matlab软件,我们可以方便地进行系统的频域响应分析。
在本实验中,我们选择了一个二阶巴特沃斯低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
Matlab实验报告
Matlab实验报告院系名称:信息科学与工程学院专业班级:通信工程1303指导老师:陈科文,支国明,张金焕,周扬学生姓名:学号:目录实验一熟悉MATLAB环境 (3)实验二数值数组创建、应用及可视化 (7)实验三字符串数组的使用、简单脚本文件和函数的编写 (12)实验四数据可视化方法 (22)实验一一、实验目的1 .熟悉MATLAB 主界面,并学会简单的菜单操作;2 .学会简单的矩阵输入与信号输入;3 .掌握部分绘图函数。
二、实验内容及要求1.用户工作目录和当前目录的建立和设置;2.熟悉简单的矩阵输入;3.常用基本命令的使用;4.基本序列运算;三、实验步骤及结果测试1.用户工作目录和当前目录的建立和设置2.熟悉简单的矩阵输入四、实验体会及心得这是我第一次做Matlab实验,一打开页面就有很多地方都不明白,因为页面大部分是英文,由于上课时对Matlab操作页面还有一些记忆,感觉还可以:本次试验是我对Matlab这门课有了一定的了解,对矩阵在Matlab中的运用也有了初步的认识。
实验二一、 实验目的1 .掌握二维数组的创建、寻访,区分数组运算与矩阵运算的区别;2 .掌握标准数组生成函数和数组构造技法;3 .进一步熟悉 M 脚本文件编写的方法和技巧。
二、实验内容及要求1.数组的创建和寻访 ;2.编写如图所示波形的 MATLAB 脚本文件,图中虚线为正弦波,要求它分别在21 及22处削顶。
三、实验步骤及结果测试仿照问题 1 中方法找出数组⎥⎦⎤⎢⎣⎡----=5311342024A 中所有绝对值大于 3 的元素。
程序如下图:运行指令 rand(‘state ’,11),A=rand(3,10000);B=(A>0.5);C=2*B -1;首先预测( C*C’)/100 的运行结果,然后再在机器上验证。
(本方法提供了产生通信等仿真中常需若干独立的双随机码的方法原型。
)A :B :C :编写如图所示波形的 MATLAB 脚本文件,图中虚线为正弦波,要求它分别在21 及22处削顶。
中南大学-信号与系统matlab实验报告
实验一基本信号的生成1.实验目的学会使用MATLA产生各种常见的连续时间信号与离散时间信号;通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用信号的理解;熟悉MATLAE的基本操作,以及一些基本函数的使用,为以后的实验奠定基础。
2.实验内容⑴运行以上九个例子程序,掌握一些常用基本信号的特点及其MATLA实现方法;改变有关参数,进一步观察信号波形的变化。
⑵ 在k [ 10:10] 范围内产生并画出以下信号:a) f1[k] [k] ;b) f 2[k] [k+2] ;c) f 3[k] [k-4] ;d) f 4[k] 2 [k+2] [k-4] 。
源程序:k=-10:10; f1k=[zeros(1,10),1,zeros(1,10)];subplot(2,2,1)stem(k,f1k)title('f1[k]') f2k=[zeros(1,8),1,zeros(1,12)];subplot(2,2,2)stem(k,f2k)title('f2[k]') f3k=[zeros(1,14),1,zeros(1,6)];subplot(2,2,3)stem(k,f3k)title('f3[k]')f4k=2*f2k-f3k;subplot(2,2,4)源程序: k=0:31;f1k=si n(pi/4*k).*cos(pi/4*k); subplot(3,1,1) stem(k,f1k) title('f1[k]') f2k=(cos(pi/4*k)).A 2; subplot(3,1,2) stem(k,f2k) title('f2[k]')f3k=si n(pi/4*k).*cos(pi/8*k);subplot(3,1,3)1: 10308060 40402O C02o10 102纠町巧 nin」(]在k [0:31]范围内产生并画出以下信号a)f ![k] sin 子 cos 扌; b)f 2[k] k .cos 4 ;c)f 3[k]sin ¥ cos #。
信号与系统Matlab实验报告
实验一MATLAB 程序入门和基础应用一、实验名称MATLAB 程序入门和基础应用二、实验目的1.学习Matlab软件的基本使用方法;2.了解Matlab的数值计算,符号运算,可视化功能;3. Matlab程序设计入门四、实验设备计算机MATLAB软件六、实验内容及具体步骤1、打开MATLAB的系统界面,对其功能做一个大致了解;2、学习变量的描述方法,掌握几个固定变量:I,j,pi,inf的使用。
注意,变量描述以字母开头,可以由字母、数字和下划线混合组成,区分字母大,小写字符长度不超过31个。
3、学习数值,矩阵,运算符,向量的矩阵运算,数组运算的描述方法。
(1)用一个简单命令求解线性系统3x1+ x2 - x3 =3.6x1+2x2+4x3 = 2.1-x1+4x2+5x3 = -1.4A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4];x=A\b结果:x = 1.4818 -0.4606 0.3848(2)用简短命令计算并绘制在0≤x≤6范围内的sin(2x)、sinx2、sin2x。
x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x, y2,x, y3)4、Matlab符号运算功能(1)符号运算的过程在符号运算的整个过程中,所有的运算均是以符号进行的,即使以数字形式出现的量也是字符量。
做一个对sin(x/2)求导的过程。
在命令窗口中输入如下符号表达式按回车:f='sin(x/2)';dfdx=diff(f)显示结果如下:dfdx = 1/2*cos(1/2*x)整个求导的过程都是由符号变量和符号表达式完成,没有涉及到具体的数值运算,其中1/2也被当作是字符量。
注意:符号变量前先要进行定义,定义语句是:sym 或syms 变量名列表。
前者定义一个单一的符号变量,后者可以一次定义多个符号变量。
信号与系统matalab设计实验总结报告
一.实验目的
1.掌握傅立叶变换的基本理论。
2.掌握软件MATLAB的使用。
3.熟悉对连续时间信号及其抽样信号进行傅立叶分析的方法。
二.实验过程
实验要求:
1、运用软件MATLAB软件,选择方波、衰减指数、三角波等一个连续时间
信号,绘制其时域图和频域图。
2、编程体现并观察傅立叶变换的性质:尺度变换、时移特性、频移特
性、时域卷积,时域微分以及它的对称性等(任选其中三个性质),可能使用的命令和函数:
syms(); sin(); subplot(); ezplot(); title(); exp(); fou
rier();
三.实验结果及分析
1、本次实验选择衰减信号y=e(-t^2),验证了它的时移特性、展缩
特性、微分特性。
2、信号各个特性的matalab仿真结果如下图所示,依次是原先信
号、时移信号、展缩变换、微分变换及下面对应的频域变换。
3、信号对应的理论分析:
四.意见与建议
1、建议在实验前先花时间去学习MATLAB这个软件。
2、要选定信号,然后去了解学习要用到哪些函数,在写程序时也要细心耐心,
力求把错误降到最低,这样才可以提高效率。
3、建议老师可以多提供一些资料给学生学习及应用。
信号与系统 matlab实验报告
信号与系统 matlab实验报告信号与系统 Matlab 实验报告引言:信号与系统是电子信息类专业中的一门重要课程,它研究了信号的产生、传输和处理过程,以及系统对信号的响应和影响。
通过实验,我们可以更直观地理解信号与系统的基本概念和原理,并掌握使用 Matlab 进行信号与系统分析和处理的方法。
实验一:信号的产生与显示在信号与系统课程中,我们首先需要了解不同类型的信号,以及如何产生和显示这些信号。
在 Matlab 中,我们可以使用一些函数来生成常见的信号波形,如正弦波、方波、三角波等。
通过编写简单的 Matlab 程序,我们可以实现信号的产生和显示。
实验二:信号的采样与重构在实际应用中,信号通常以连续时间的形式存在,但在数字系统中需要将其转换为离散时间的信号进行处理。
这就需要进行信号的采样和重构。
在 Matlab 中,我们可以使用采样函数和重构函数来模拟这一过程,并观察采样率对信号重构质量的影响。
实验三:信号的滤波与频谱分析信号滤波是信号处理中的重要环节,它可以去除信号中的噪声和干扰,提高信号质量。
在 Matlab 中,我们可以使用滤波函数来实现不同类型的滤波器,并观察滤波对信号频谱的影响。
此外,我们还可以使用频谱分析函数来研究信号的频谱特性,如频谱密度、功率谱等。
实验四:系统的时域与频域分析系统是信号处理中的重要概念,它描述了信号在系统中的传输和变换过程。
在Matlab 中,我们可以使用系统函数来模拟不同类型的系统,并观察系统对信号的时域和频域响应。
通过实验,我们可以深入理解系统的时域特性和频域特性,如冲击响应、频率响应等。
实验五:信号的调制与解调信号调制是将信息信号转换为调制信号的过程,而解调则是将调制信号恢复为原始信号的过程。
在 Matlab 中,我们可以使用调制函数和解调函数来模拟不同类型的调制和解调方式,如调幅、调频、调相等。
通过实验,我们可以了解不同调制方式的原理和特点,并观察调制和解调对信号的影响。
信号与系统MATLAB实验(word文档良心出品)
2016-2017学年第一学期信号与系统实验报告班级:姓名:学号:成绩:指导教师:实验一 常见信号的MATLAB 表示及运算一.实验目的1.熟悉常见信号的意义、特性及波形2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法二.实验原理信号一般是随时间而变化的某些物理量。
按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。
若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。
MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。
根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。
在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。
下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。
1.连续时间信号所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。
从严格意义上讲,MATLAB 并不能处理连续信号。
在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。
在MATLAB 中连续信号可用向量或符号运算功能来表示。
⑴ 向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t 的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。
向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。
信号与系统matlab仿真实验报告
题号
1、对于一般的正弦信号、复指数信号、指数信号能够画出其波形图,分析其有
无周期,有周期的给出周期值;
2、能够画出任意输入信号的时域波形图;
注:请区别CT和DT信号。
3、能够画出信号的频谱图,包括幅度谱和相位谱;
4、能够实现信号卷积,并画出卷积后信号的波形图;
1.我把前四个要求集成在了一个主面板里,通过面板platform调用四个不同的功能。
2.第一个分界面general_signal用于实现题目1,由用户选择信号类型并输入信号相关参数。
3.第二个分界面any_signal用于实现题目1、2,同时显示出信号的时域波形以及频谱图、相位图。
4.第三、四个界面signal_ct_conv、signal_dt_conv分别用于实现连续和离散的卷积,对应题目4。
信号与系统MATLAB实验报告
一、实验名称MATLAB对连续信号与系统的时域分析、频域分析和s域分析;MATLAB对离散信号与系统的时域分析。
二、实验目的1.学习用MATLAB描述常用信号的方法。
2.掌握连续时间信号和离散时间信号的描述。
3.利用MATLAB计算信号卷积。
4.掌握信号频谱的定义,理解非周期信号频谱密度的概念。
5.掌握用MATLAB分析并绘制连续系统零极点图以判断因果系统稳定的方法。
三、实验原理1.连续系统的冲击响应和阶跃响应(1)连续系统的冲击响应在MATLAB中,利用函数impulse可求解系统冲击响应,其调y=impulse(sys,t)式中:sys表示LTI系统模型,用来表示微分方程、差分方程、状态方程。
利用函数tf获得微分方程的LTI系统模型,其调用形式为:sys=tf(b,a)式中:b和a分别为微分方程右端和左端的各项系数向量。
2.常用连续信号的傅里叶变换在MTLAB中,利用函数fourier实现信号f(t)的傅里叶变换,其调用形式是:F=fourier(f)(1)矩形脉冲矩形脉冲函数可以表示为:f(t)=AGr(t)=A, |t||<τ/2;f(t)=0, |t|>τ/2其傅里叶变换为F(jw)=Aτsa(wτ/2)式中:sa(·)表示采样函数。
3.连续系统函数H(s)的零极点分布和稳定性MATLAB信号处理工具箱提供的zplane函数可以直接求解H(s)的零极点分布,其调用形式为:zplane(b,a)式中:b和a分别为系统函数H(s)的分子多项式和分母多项式的系数向量,该函数的作用是在平面上画出单位圆及系统的零点和极点。
MATLAB信号处理工具箱提供的roots函数可求解多项式的根,其调用形式为:poles=roots(a)4.常用离散信号的MATLAB表示(1)正弦序列离散正弦信号与连续正弦信号类似,就是连续信号的离散型式。
正弦序列的一般序列为:f(k)=Acos(Ωk+φ)式中:A、Ω、φ分别为正弦序列的振幅、数字角频率和初相位。
信号与系统matlab实验报告
信号与系统matlab实验报告信号与系统MATLAB实验报告引言信号与系统是电子工程、通信工程和控制工程等领域中的重要基础课程。
通过实验,我们可以更好地理解信号与系统的概念和基本原理,并掌握使用MATLAB进行信号与系统分析的方法。
本报告将介绍我们在信号与系统实验中的实验过程、结果和分析。
实验一:连续时间信号的采样与重构在这个实验中,我们研究了连续时间信号的采样与重构。
首先,我们通过MATLAB生成了一个连续时间信号,并使用采样定理确定了采样频率。
然后,我们对连续时间信号进行采样,并通过重构方法将采样信号还原为连续时间信号。
最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果。
实验二:线性时不变系统的频率响应在这个实验中,我们研究了线性时不变系统的频率响应。
首先,我们通过MATLAB生成了一个输入信号,并设计了一个线性时不变系统。
然后,我们通过将输入信号输入到系统中,并记录输出信号的幅度和相位,从而得到系统的频率响应。
最后,我们绘制了系统的幅频特性和相频特性曲线,并对其进行了分析和讨论。
实验三:离散时间信号的采样与重构在这个实验中,我们研究了离散时间信号的采样与重构。
首先,我们通过MATLAB生成了一个离散时间信号,并使用采样定理确定了采样周期。
然后,我们对离散时间信号进行采样,并通过重构方法将采样信号还原为离散时间信号。
最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果,并讨论了离散时间信号的采样与重构的特点。
实验四:离散时间系统的差分方程在这个实验中,我们研究了离散时间系统的差分方程。
首先,我们通过MATLAB生成了一个输入信号,并设计了一个离散时间系统。
然后,我们通过将输入信号输入到系统中,并根据系统的差分方程计算输出信号。
最后,我们对输入信号和输出信号进行了分析和比较,并讨论了离散时间系统的差分方程的特点和应用。
实验五:连续时间信号的傅里叶变换在这个实验中,我们研究了连续时间信号的傅里叶变换。
中南大学信号与系统matlab实验报告.pdf
MATLAB实现方
法;改变有关参数,进一步观察信号波形的变化。
⑵ 在 k [ 10:10] 范围内产生并画出以下信号:
a) f1[k] [k] ; b) f 2[k] [k+2] ; c) f 3[k] [k-4] ;
d) f 4[k] 2 [k+2] [k-4] 。
源程序: k=-10:10; f1k=[zeros(1,10),1,zeros(1,10)]; subplot(2,2,1) stem(k,f1k) title('f1[k]') f2k=[zeros(1,8),1,zeros(1,12)]; subplot(2,2,2) stem(k,f2k) title('f2[k]') f3k=[zeros(1,14),1,zeros(1,6)]; subplot(2,2,3) stem(k,f3k) title('f3[k]') f4k=2*f2k-f3k; subplot(2,2,4) stem(k,f4k) title('f4[k]')
⑷ 已知滤波器的传递函数:
输入信号为 f (t ) 2sin(0.05 t ) (t ),
(t )为随机信号。试绘出滤波器的输出信号
波形。(取 t [0:100] )
源程序: R=101; d=rand(1,R)-0.5; t=0:100; s=2*sin(0.05*pi*t); f=s+d;
subplot(2,1,1); plot(t,d,'g-.',t,s,'b--',t,f,'r-'); xlabel('Time index t'); legend('d[t]','s[t]','f[t]'); title(' 处理前的波形 ') b=[0.22 0];a=[1 -0.8]; y=filter(b,a,f); subplot(2,1,2); plot(t,s,'b--',t,y,'r-'); xlabel('Time index t'); legend('s[t]','y[t]'); title(' 滤波器输出波形 ')
matlab信号与系统实验报告
实验一 基本信号的产生与运算一、 实验目的学习使用MATLAB 产生基本信号、绘制信号波形、实现信号的基本运算。
二、 实验原理MATLAB 提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等。
这些信号是信号处理的基础。
1、 利用MATLAB 产生下列连续信号并作图。
(1)51),1(2)(<<---=t t u t x(2)300),32sin()(3.0<<=-t t e t x t(3)1.01.0,3000cos 100cos )(<<-+=t t t t x(4)2000),8.0cos()1.0cos()(<<=t t t t x ππ答:(1)、>> t=-1:0.02:5;>> x=(t>1);>> plot(t,-2*x);>> axis([-1,5,-3,1]);>> title('杨婕婕 朱艺星');>> xlabel('x(t)=-2u(t-1)');(2)、>> t=0:0.02:30;>> x=exp(-0.3*t).*sin(2/3*t); >> plot(t,x);>> title('杨婕婕朱艺星');>> xlabel('x(t)=exp(-0.3*t).*sin(2/3*t)');因为原函数在t=15后x(t)取值接近于零,所以将横坐标改成0到15,看得更清晰axis([0,15,-0.2,0.6]);(3)>> t=-0.1:0.01:0.1;x=cos(100*t)+cos(3000*t);plot(t,x);>> title('杨婕婕朱艺星');>>xlabel('x=cos(100*t)+cos(3000*t)');因为t的间隔取太大,以至于函数不够准确,缩小t的间隔:t=-0.1:0.002:0.2;x=cos(100*t)+cos(3000*t);plot(t,x);title('杨婕婕')>> t=-0.1:0.0001:0.1;x=cos(100*t)+cos(3000*t);>> plot(t,x);title('杨婕婕朱艺星');>> xlabel('x=cos(100*t)+cos(3000*t)');(4)、t=0:0.01:200;>> x=cos(0.1*pi*t).*cos(0.8*pi*t);>> plot(t,x);>> title('杨婕婕朱艺星');>> xlabel('x=cos(0.1*pi*t).*cos(0.8*pi*t)');因为为周期函数,可以将横坐标t间隔扩大以便于观察图像>> axis([0,30,-1,1]);2、 利用MATLAB 产生下列离散序列并作图。
信号与系统 matlab实验报告
信号与系统 matlab实验报告《信号与系统 Matlab实验报告》摘要:本实验报告通过使用 Matlab 软件进行信号与系统实验,探讨了信号与系统在数字领域的应用。
实验结果表明,Matlab 软件具有强大的信号处理和系统分析功能,能够有效地进行信号与系统的模拟和分析。
引言:信号与系统是电子工程领域中的重要基础课程,它研究了信号的产生、传输和处理,以及系统对信号的响应和影响。
在数字领域,信号与系统的理论和方法也得到了广泛的应用。
Matlab 软件作为一种强大的数学计算工具,为信号与系统的模拟和分析提供了便利和高效的途径。
实验一:信号的生成与显示在本实验中,我们首先使用 Matlab 软件生成了几种常见的信号,包括正弦信号、方波信号和三角波信号。
通过调整信号的频率、幅度和相位等参数,我们观察了信号的变化,并利用 Matlab 的绘图功能将信号图形显示出来。
实验结果表明,Matlab 软件能够方便地生成各种类型的信号,并能够直观地显示信号的波形和特性。
实验二:信号的采样与重构在本实验中,我们使用 Matlab 软件对信号进行了采样和重构。
我们首先对一个连续信号进行了离散采样,然后利用 Matlab 的插值函数对采样信号进行了重构。
实验结果表明,采样和重构过程中存在信号失真和频率混叠等问题,但通过适当的采样和重构方法,我们能够有效地还原原始信号。
实验三:系统的响应与分析在本实验中,我们使用 Matlab 软件对系统的响应进行了分析。
我们构建了几种常见的系统模型,包括线性时不变系统和滤波器系统,然后利用 Matlab 的系统分析工具对系统的频率响应、相位响应和单位脉冲响应等进行了分析。
实验结果表明,Matlab 软件能够有效地进行系统的模拟和分析,为系统设计和优化提供了有力的支持。
结论:通过本实验,我们深入了解了信号与系统在数字领域的应用,并掌握了使用 Matlab 软件进行信号与系统模拟和分析的方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一基本信号的生成1.实验目的⚫学会使用 MATLAB 产生各种常见的连续时间信号与离散时间信号;⚫通过 MATLAB 中的绘图工具对产生的信号进行观察,加深对常用信号的理解;⚫熟悉 MATLAB 的基本操作,以及一些基本函数的使用,为以后的实验奠定基础。
2.实验内容⑴ 运行以上九个例子程序,掌握一些常用基本信号的特点及其MATLAB 实现方法;改变有关参数,进一步观察信号波形的变化。
⑵ 在k = [-10:10] 范围内产生并画出以下信号:a)f1[k] =[k];b)f2[k]=[k+2];c)f3[k]=[k-4];d) f [k]=2[k+2]-[k-4]。
源程序:k=-10:10; f1k=[zeros(1,10),1,zeros(1,10)];subplot(2,2,1)stem(k,f1k)title('f1[k]') f2k=[zeros(1,8),1,zeros(1,12)];subplot(2,2,2)stem(k,f2k)title('f2[k]') f3k=[zeros(1,14),1,zeros(1,6)];subplot(2,2,3)stem(k,f3k)title('f3[k]')f4k=2*f2k-f3k;subplot(2,2,4)⑶ 在k =[0:31] 范围内产生并画出以下信号:a) f1[k]=sin(4k)cos(4k);b) f2[k]=cos2(4k);c) f3[k] = sin(4k)cos(8k) 。
请问这三个信号的基波周期分别是多少?源程序:k=0:31;f1k=sin(pi/4*k).*cos(pi/4*k); subplot(3,1,1)stem(k,f1k)title('f1[k]')f2k=(cos(pi/4*k)).^2;subplot(3,1,2)stem(k,f2k)title('f2[k]') f3k=sin(pi/4*k).*cos(pi/8*k); subplot(3,1,3)其中 f1[k]的基波周期是4, f2[k]的基波周期是 4, f3[k]的基波周期是16。
实验二信号的基本运算1.实验目的⚫学会使用 MATLAB 完成信号的一些基本运算;⚫了解复杂信号由基本信号通过尺度变换、翻转、平移、相加、相乘、差分、求和、微分及积分等运算来表达的方法;⚫进一步熟悉 MATLAB 的基本操作与编程,掌握其在信号分析中的运用特点与使用方式。
2.实验内容⑴ 运行以上三个例题程序,掌握信号基本运算的 MATLAB 实现方法;改变有关参数,考察相应信号运算结果的变化特点与规律。
⑵ 已知信号f (t)如下图所示:a) 用MATLAB 编程复现上图;%作业题2 a:t=-6:0.001:6; ft1=tripuls(t,6,0.5); subplot(2,1,1) plot(t,ft1) title('f(t)')b) 画出f(2- 2t) 的波形;%bt=-6:0.001:6;ft1=tripuls(2*(1-t),6,0.5);%subplot(1,1,1)plot(t,ft1)title('f(2*(1-t)')c) 画出df d(t t)的波形;%ch=0.001;t=-6:h:6;yt=tripuls(t,6,0.5); y1=diff(yt)*1/h; plot(t(1:length(t)-1),y1) title('df(t)/dt')d) 画出f()d的波形。
-%dt=-6:0.1:6;for x=1:length(t)y2(x)=quad('tripuls(t,6,0.5)',-3,t(x));endplot(t,y2)title('integral of f(t)')实验三系统的时域分析1.实验目的⚫学习并掌握连续时间系统的零状态响应、冲激响应和阶跃响应的 MATLAB 求解方法;⚫学习并掌握离散时间系统的零状态响应、冲激响应和阶跃响应的 MATLAB 求解方法;⚫进一步深刻理解连续时间系统和离散时间系统的系统函数零极点对系统特性的影响;学习并掌握卷积的 MATLAB 计算方法。
2.实验内容⑴ 运行以上五个例题程序,掌握求解系统响应的 MATLAB 分析方法;改变模型参数,考察系统响应的变化特点与规律。
⑵ 设离散系统可由下列差分方程表示:y[k]-y[k-1]+0.9y[k-2] = f[k]计算k =[-20:100]时的系统冲激响应。
源程序:k=-20:100; a=[1 -1 0.9]; b=[1]; h=impz(b,a,k);stem(k,h);xlabel('Time(sec)')⑶ 设h[k]=(0.9)k u(k),输入f[k]=u[k]-u[k-10],求系统输出y[k]=f[k]h[k]。
(取k =[-10:50])源程序:k=-10:50;uk=[zeros(1,10),ones(1,51)]; u1k=[zeros(1,20),ones(1,41)];hk=0.9.^k.*uk;fk=uk-u1k;yk=conv(hk,fk); stem(0:length(yk)-1,yk);输入信号为 f (t ) =2sin(0.05t )+(t ), (t ) 为随机信号。
试绘出滤波器的输出信号波形。
(取t =[0:100]) 源程序:R=101; d=rand(1,R)-0.5; t=0:100;s=2*sin(0.05*pi*t);f=s+d;subplot(2,1,1); plot(t,d,'g-.',t,s,'b--',t,f,'r-'); xlabel('Time index t'); legend('d[t]','s[t]','f[t]'); title('处理前的波形') b=[0.22 0];a=[1 -0.8];y=filter(b,a,f); subplot(2,1,2);plot(t,s,'b--',t,y,'r-'); xlabel('Time index t');legend('s[t]','y[t]'); title('滤波器输出波形')⑷ 已知滤波器的传递函数:H (z )= 0.22 1 - 0.8z -1实验四周期信号的频域分析1.实验目的⚫掌握周期信号傅立叶级数分解与合成的计算公式⚫掌握利用MATLAB 实现周期信号傅立叶级数分解与综合方法⚫理解并掌握周期信号频谱特点2.实验内容1、仿照例程,实现下述周期信号的傅立叶级数分解与合成:a)首先,推导出求解a,a,b的公式,计算出前10 次系数;b)利用MATLAB求解a,a,b的值,其中a,b求解前10次系数,并给出利用这些系数合成的信号波形。
2a )设周期信号 f (t )的周期为T ,角频率= 2f = 2,且满足狄里赫利条件,则该周期信号可以展开成傅立叶级数。
(1)三角形式傅立叶级数 f (t )=a 0 +a 1cos 1t +b 1sin 1t +a 2cos 2t +b 2sin 2t +...+a n cos n t +b n sin n t +...= a +a cos(n t )+ b sin(n t ) n =1 n =1a 0 = 1 2T f (t )dtT 1 - 22)指数形式傅立叶级数f (t )= F n e jn 1t , n = 0,1,2,3, (b )求解 a , a ,b 及合成信号波形所用程序:function [A_sym,B_sym]=CTFShchsym% 采用符号计算求一个周期内连续时间函数 f 的三角级数展开系数 , 再用这些 % 展开系数合成连续时间函数 f.傅立叶级数% 函数的输入输出都是数值量% Nf=6 谐波的阶数% Nn 输出数据的准确位数% A_sym 第 1 元素是直流项,其后元素依次是 1,2,3...次谐波 cos 项展开系数 % B_sym 第 2,3,4,... 元素依次是 1,2,3... 次谐波 sin 项展开系数% tao=1 tao/T=0.2syms t n k xT=4;tao=T/4;a=-1.5;if nargin<4Nf=10;endif nargin<5Nn=32;endx=time_fun_x(t);A0=int(x,t,a,T+a)/T; %求出三角函数展开系数 A0 1 T 1 F n = 1 -2T 1 f (t )e -jn 1t dtT - 2% 求出三角函数展开系数 Bs%获取串数组 A0所对应的ASC2 码数值数组for k=1:NfA_sym(k+1)=double(vpa(subs(As,n,k),Nn)); %获取串数组 A 所对应的 ASC2 码数值数组B_sym(k+1)=double(vpa(subs(Bs,n,k),Nn)); %获取串数组 B 所对应的 ASC2 码数值数组end ; if nargout==0 c=A_sym; disp(c);%输出 c 为三角级数展开系数:第 1 元素是直流项,其后元素依次是 1,2,3...次谐波cos 项展开系数 d=B_sym;disp(d); %输出 d 为三角级数展开系数: 第 2,3,4,...元素依次是 1,2,3...次谐波 sin 项展开系 数 t=-3*T:0.01:3*T; f0=c(1);% 直流 f1=c(2).*cos(2*pi*1*t/T)+d(2).*sin(2*pi*1*t/T); % 基波f2=c(3).*cos(2*pi*2*t/T)+d(3).*sin(2*pi*2*t/T); % 2 次谐波 f3=c(4).*cos(2*pi*3*t/T)+d(4).*sin(2*pi*3*t/T); % 3 次谐波 f4=c(5).*cos(2*pi*4*t/T)+d(5).*sin(2*pi*4*t/T);% 4 次谐波f5=c(6).*cos(2*pi*5*t/T)+d(6).*sin(2*pi*5*t/T); % 5 次谐波 f6=c(7).*cos(2*pi*6*t/T)+d(7).*sin(2*pi*6*t/T); % 6 次谐波 f7=c(8).*cos(2*pi*7*t/T)+d(8).*sin(2*pi*7*t/T); % 7 次谐波 f8=c(9).*cos(2*pi*8*t/T)+d(9).*sin(2*pi*8*t/T);% 8 次谐波 f9=c(10).*cos(2*pi*9*t/T)+d(10).*sin(2*pi*9*t/T); % 9 次谐波f10=c(11).*cos(2*pi*10*t/T)+d(11).*sin(2*pi*10*t/T); % 10 次谐波 f11=f0+f1+f2; % 直流+基波+2 次谐波f12=f11+f3; % 直流+基波+2 次谐波+3 次谐波f13=f12+f4+f5+f6; % 直流+基波+2 次谐波+3 次谐波+4 次谐波+5 次谐波+6 次谐波 f14=f13+f7+f8+f9+f10; %0~10 次 subplot(2,2,1) plot(t,f0+f1),hold on y=time_fun_e(t); % 调用连续时间函数 - 周期矩形脉冲plot(t,y,'r:') title('直流+基波') axis([-8,8,-0.5,1.5]) subplot(2,2,2) plot(t,f12),hold on y=time_fun_e(t); plot(t,y,'r:')title('1-3 次谐波+直流') axis([-8,8,-0.5,1.5]) subplot(2,2,3) plot(t,f13),hold onAs=2/T*int(x*cos(2*pi*n*t/T),t,a,T+a); Bs=2/T*int(x*sin(2*pi*n*t/T),t,a,T+a); A_sym(1)=double(vpa(A0,Nn)); %求出三角函数展开系数 Asy=time_fun_e(t);plot(t,y,'r:') title('1-6 次谐波+直流') axis([-8,8,-0.5,1.5]) subplot(2,2,4) plot(t,f14),hold on y=time_fun_e(t); plot(t,y,'r:') title('1-10 次谐波+直流') axis([-8,8,-0.5,1.5]) hold offend function y=time_fun_e(t)% 该函数是CTFShchsym.m 的子函它由符号函数和表达式写成a=1.5;T=4;h=1;tao=T/4;t=-3*T:0.01:3*T; e1=1/2+1/2.*sign(t-0.5+tao/2);e2=1/2+1/2.*sign(t-0.5-tao/2);y=h.*(e1-e2); %连续时间函数-周期矩形脉冲function x=time_fun_x(t)% 该函数是CTFShchsym.m 的子函数。