matlab实验十--周期函数

合集下载

信号与系统实验指导书信号与系统matlab实验

信号与系统实验指导书信号与系统matlab实验

信号与系统实验指导书信号与系统matlab实验信号与系统实验指导书一、实验目的1、掌握用Matlab绘制波形图的方法,学会常见波形图的绘制。

2、掌握用Matlab编写函数的方法3、通过对周期信号和非周期信号的观察,加深对周期信号的理解。

二、实验内容1、实验原理与计算实例1.1 绘制波图的基本函数 Matlab是一种基于矩阵和数组的编程语言,它将所有的变量都看成矩阵。

它不仅有强大的计算功能,还有各种各样的画图功能。

这里主要介绍信号与系统分析中常见的几个Matlab函数,包括Matlab提供的内部函数和自定义函数。

我们可以在命令窗口中每次执行一条Matlab语句;或者生成一个程序,存为M文,供以后执行;或是生成一个函数,在命令窗口中执行。

下面介绍几个基本函数。

(1)单位阶跃函数 M文名:u.m%单位阶跃函数(连续或离散)%调用格式 y=u(t)产生单位阶跃函数 function y=u(t) y=(t>=0)(2)门函数 M文名:rectplus.m,是Matlab的内部函数。

调用格式 y=rectplus(t)产生高度为1,宽度为1的门函数调用格式y=rectplus(t,W) 产生高度为1,宽度为W的门函数(3)三角脉冲函数 M文名:tripuls.m,是Matlab的内部函数。

调用格式 y=tripuls(t) 产生高度为1,宽度为1的三角脉冲函数调用格式 y=tripuls(t,w) 产生高度为1,宽度为w的三角脉冲函数调用格式 y=tripuls(t,w,s)产生高度为1,宽度为w的三角脉冲函数,-1<s<1。

当s=0时,为对称三角形;当S=-1时,为三角形顶点左边。

(4)抽样函数 M文名:Sa.m %抽样函数(连续或者离散)% 高度为1 % 调用格式 y=Sa(t),产生高度为1,第一个过零点为π function f=Sa(t)f=sinc(t./pi) %sinc(t)=sin(πt)/(πt)是MATLAB函数(5)符号函数 M文名:sign.m是Matlab的内部函数。

matlab信号与系统实验报告

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软件仿真实验(信号与系统)(1)

matlab软件仿真实验(信号与系统)(1)

matlab软件仿真实验(信号与系统)(1)《信号与系统实验报告》学院:信息科学与⼯程学院专业:物联⽹⼯程姓名:学号:⽬录实验⼀、MATLAB 基本应⽤实验⼆信号的时域表⽰实验三、连续信号卷积实验四、典型周期信号的频谱表⽰实验五、傅⽴叶变换性质研究实验六、抽样定理与信号恢复实验⼀MATLAB 基本应⽤⼀、实验⽬的:学习MATLAB的基本⽤法,了解 MATLAB 的⽬录结构和基本功能以及MATLAB在信号与系统中的应⽤。

⼆、实验内容:例⼀已知x的取值范围,画出y=sin(x)的图型。

x=0:0.05:4*pi;y=sin(x);plot(y)例⼆计算y=sin(π/5)+4cos(π/4)例三已知z 取值范围,x=sin(z);y=cos(z);画三维图形。

z=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)xlabel('x')ylabel('y')zlabel('z')例四已知x的取值范围,⽤subplot函数绘图。

参考程序:x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(2,2,1),plot(x,y1),title('sin(x)')subplot(2,2,2),plot(x,y2),title('1.5*cos(x)')subplot(2,2,3),plot(x,y3),title('sin(2*x)')subplot(2,2,4),plot(x,y4),title('5*cos(2*x)')连续信号的MATLAB表⽰1、指数信号:指数信号Ae at在MATLAB中可⽤exp函数表⽰,其调⽤形式为:y=A*exp(a*t) (例取 A=1,a=-0.4)参考程序:A=1;a=-0.4;t=0:0.01:10;ft=A*exp(a*t);plot(t,ft);grid on;2、正弦信号:正弦信号Acos(w0t+?)和Asin(w0t+?)分别由函数cos和sin表⽰,其调⽤形式为:A*cos(w0t+phi) ;A*sin(w0t+phi) (例取A=1,w0=2π,?=π/6) 参考程序:A=1;w0=2*pi; phi=pi/6; t=0:0.001:8;ft=A*sin(w0*t+phi);plot(t,ft);grid on ;3、抽样函数:抽样函数Sa(t)在MATLAB中⽤sinc函数表⽰,其定义为:sinc(t)=sin(πt)/( πt)其调⽤形式为:y=sinc(t)参考程序:t=-3*pi:pi/100:3*pi;ft=sinc(t/pi);plot(t,ft);grid on;4、矩形脉冲信号:在MATLAB中⽤rectpuls函数来表⽰,其调⽤形式为:y=rectpuls(t,width),⽤以产⽣⼀个幅值为1,宽度为width,相对于t=0点左右对称的矩形波信号,该函数的横坐标范围由向量t决定,是以t=0为中⼼向左右各展开width/2的范围,width的默认值为1。

MATLAB实训实验

MATLAB实训实验

2015/2016学年下学期《信号与系统》实验报告班级:学号:学生姓名:指导教师:2016年3月8 日实验一 基本函数仿真实验项目: 基本函数仿真实验时间: 2016年 3 月 8 日 星期 二 第 34 节课 实验地点: 1501实验室 实验目的:1、 学习使用MATLAB 软件2、 学习MATLAB 中各种函数,并应用函数分析3、 对MATALB 的进一步的学习了解,熟练掌握MATALB 的各种操纵,学会使用MATALB 解决复杂的运算并学会用MATALB 解决平时学习4、 了解MATALB 的数值运算5、 了解MATALB 的基本函数和命令6、 学习掌握MATALB 有关命令 实验内容: 1、(1) 题目:应用MA TLAB 方法实现单位阶跃信号和矩形脉冲。

(2) 程序清单(源程序)解:对于阶跃函数,MATLAB 中有专门的stairs 绘图命令。

例如,实现)(t 和矩形脉冲的程序如下:t=-1:2; % 定义时间范围向量t x=(t>=0);subplot(1,2,1),stairs(t,x);axis([-1,2,-0.1,1.2]); grid on % 绘制单位阶跃信号波形 t=-1:0.001:1; % 定义时间范围向量t g=(t>=(-1/2))-(t>=(1/2));subplot(1,2,2),stairs(t,g);axis([-1,1,-0.1,1.2]); grid on % 绘制矩形脉冲波形(3) 运行结果(截图)00.20.40.60.8100.20.40.60.81图1 例1图(4)函数解析Subplot:使用方法:subplot (m,n,p )或者subplot (m n p )。

是将多个图画到一个平面上的工具。

其中,m 表示是图排成m 行,n 表示图排成n 列,也就是整个figure 中有n 个图是排成一行的,一共m 行,如果m=2就是表示2行图。

MATLAB实验报告

MATLAB实验报告
注: 式1、式2在仿真中,无限积分范围被近似在-T/2<t<T/2、-Bs<f<Bs内。
仿真程序:
I. 傅里叶正变换的m函数
II. 傅里叶反变换的m函数
图像:
正变换图像:
反变换图像:
二、能量信号的能量谱密度仿真
【例二】(矩形脉冲的能量谱密度) 宽度为 的矩形脉冲的表达式为
g(t)=
其能量谱密度为
Eg(f)= =
参考仿真程序:
图像:
图像:
三、信号通过线性系统
若线性系统的输入是x(t),输出是y(t),则输出与输入的关系可以用卷积来描述y(t)= (式4),其中h(t)是系统的单位冲激相应。
在离散时间和截短的情况下,式4对应到离散卷积
仿真中更为简便的做法是借助频域关系来实现滤波
Y(y)=H(f)X(f)
【例三】(矩形脉冲通过巴特沃斯低通滤波器) 将一个宽为 =1ms的矩形脉冲通过一个3dB带宽为500Hz的6阶巴特沃思滤波器。矩形脉冲的主瓣带宽为1khz。仿真中设置的时间分辨率为1/32ms,频谱分辨率为1/64khz,抽样率为fs=32khz,总观察时间为T=64ms。参考仿真程序:图像:心得体会:
通过此次仿真实验实验中,我学会了如何使用MATLAB建立脚本文件实现函数之间的调用
也学到了通信原理中周期函数的频谱使用MATLAB仿真实现,收获了傅里叶正变换与傅里叶反变换图像十分清晰可见,有助于我对傅里叶变换更加深入地学习。有信号能量密度的仿真图像可知傅里叶反变换与傅里叶正变换是不同的。信号通过线性系统是傅里叶正变换为不规则的频谱,傅里叶反变换时为规则的矩形谱。不管怎么样自己动手做出来的收获就是不一样。
一、周期信号的频谱仿真
虽然Matlab中有许多现成的频域分析工具,如fft、ifft等,但对通信原理的学习者来说,直接进行傅里叶变换更为直观。为此,我们用Matlab提供的函数为基础,编制了两个m函数t2f.m及f2t.m。t2f是傅里叶正变换,对应

MATLAB实验指导书

MATLAB实验指导书

实验一MATLAB集成环境使用与运算基础一、实验目的1.熟悉启动和退出MA TLAB的方法。

2.熟悉MATLAB命令窗口的组成。

3.掌握建立矩阵的方法。

4.掌握MATLAB各种表达式的书写规则以及常用函数的使用。

二、实验原理1.MA TLAB的启动MATLAB系统的启动有三种常见方法:1)使用Windows“开始”菜单。

2)运行MATLAB系统启动程序MA TLAB.exe。

3)利用快捷方式。

2.MA TLAB系统的退出要退出MA TLAB系统,也有三种常见方法:1)在MA TLAB主窗口File菜单中选择Exit MATLAB 命令。

2)在MA TLAB命令窗口输入Exit或Quit命令。

3)单击MATLAB主窗口的“关闭”按钮。

3.MA TLAB帮助窗口进入帮助窗口可以通过以下三种方法:1)单击MATLAB主窗口工具栏中的help按钮。

2)在命令窗口中输入helpwin、helpdesk或doc。

3)选择help菜单中的“MA TLAB help”选项。

4.MA TLAB帮助命令1)help命令在MA TLAB命令窗口直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。

同样,可以通过help加函数名来显示该函数的帮助说明。

2)lookfor命令help命令只搜索出那些关键字完全匹配的结果,lookfor命令对搜索范围内的m文件进行关键字搜索,条件比较宽松。

3)模糊查询用户只要输入命令的前几个字母,然后按tab键,系统就会列出所有以这几个字母开头的命令。

5.赋值语句1)变量=表达式2)表达式6.矩阵的建立1)直接输入法:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分开,不同行的元素之间用分号分开。

2)利用m 文件建立矩阵3)利用冒号表达式建立一个向量 e1:e2:e3 4) 利用linspace 函数产生行向量 linspace(a,b,n).三、实验仪器和设备1.计算机1台。

周期函数解读

周期函数解读

实验十 周期函数【实验目的】1. 了解几周期函数的基本概念。

2. 了解周期函数经过四则运算、复合运算、求导运算、积分运算后的周期性。

3. 学习掌握MATLAB 软件有关的命令。

【实验内容】从图形上观测六个三角函数的周期性【实验准备】1.周期函数的基本概念函数)(x f 是以T 为周期的周期函数是指对任何x ,有)()(x f T x f =+.使得上式成立的最小正数T 称为函数的最小正周期。

2.周期函数的四则运算若)(),(x g x f 都是周期函数,一般地,他们的和(差)积商都未必再是周期函数。

例如][)(x x x f -=在),(+∞-∞以11=T 为最小正周期,x x g sin )(=在),(+∞-∞以π=2T 为最小正周期,但)()(x g x f +并非周期函数。

事实上,对任意实数0>a ,总有.0)0()0()()(=+>+g f a g a f但我们有如下具有一般意义的结论:若)(),(x g x f 都是周期函数,具有正周期21,T T ,且21T T 为有理数,则 )0)(()()(),()(),()(≠±x g x g x f x g x f x g x f 仍是周期函数。

事实上,设q p qpT T ,,21=是互质的自然数,则可以证明21pT qT T ==是)(),(x g x f 的周期,从而是经过四则运算后函数的周期。

3.周期函数的最小正周期一般说来,周期函数未必有最小正周期。

例如,常值函数c x f =)(显然是没有最小正周期的,事实上,容易证明任何实数T 都是)(x f 的周期。

然而,非常值的周期函数也未必有最小正周期,例如⎩⎨⎧-=是理数,是有理数x x x g 1,1)( 由于有理数与有理数(无理数)之和必为有理数(无理数),因此任何一个有理数都是)(x g 的周期,显然)(x g 没有最小正周期。

但我们有如下具有普遍意义的结论:非常值函数M x x f y ∈=),(,如果在M 的某聚点处有一单边有限或无限的极限,则)(x f 必有最小正周期。

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析自相关是一种描述信号之间相似性的统计方法,主要用于分析时间序列数据。

在MATLAB中,可以使用`xcorr`函数来计算自相关。

周期函数是一种以固定时间间隔重复的函数,可以通过分析函数的振幅、相位和频率来研究其周期性。

下面我将介绍如何在MATLAB中编写自相关程序,并进行周期函数的分析。

首先,我们来编写一个自相关的程序。

考虑一个包含2个正弦波的信号,我们可以使用`sin`函数生成这个信号。

程序的步骤如下:1.定义一个时间向量t,表示信号的采样时间点。

例如,可以设置t 从0到10,采样间隔为0.01```t=0:0.01:10;```2. 定义两个正弦波信号,分别表示频率为2Hz和5Hz的信号。

可以使用`sin`函数生成这些信号。

```x1 = sin(2*pi*2*t);x2 = sin(2*pi*5*t);```3.将这两个信号相加,得到包含两个正弦波的信号。

```x=x1+x2;```4. 使用`xcorr`函数计算信号的自相关。

```[R, lags] = xcorr(x);```其中,`R`表示自相关系数,`lags`表示时间延迟。

接下来,我们将进行周期函数的分析。

考虑一个三角波函数,其周期为T,可以使用以下方式来表示:```t=0:0.01:10;T=2;f = sawtooth(2*pi/T*t);plot(t, f);```这段代码中,`sawtooth`函数用于生成三角波形,`plot`函数用于绘制信号。

为了了解周期函数的频域特性,我们可以使用傅里叶变换来获得其频谱。

在MATLAB中,可以使用`fft`函数进行快速傅里叶变换,并使用`abs`函数取绝对值得到频谱幅值。

代码如下:```Fs=100;%采样率N = length(f); % 信号长度frequencies = 0:Fs/N:Fs/2; % 频率向量transformed = fft(f); % 快速傅里叶变换amplitude = abs(transformed(1:N/2+1)); % 幅值谱plot(frequencies, amplitude);```这段代码中,`Fs`表示采样率,`N`表示信号长度,`frequencies`表示频率向量,`transformed`表示傅里叶变换结果,`amplitude`表示频谱幅值。

Matlab实验报告

Matlab实验报告

实验结果及分析实验1:程序如下x=1:10y=2*x;plot(x,y)仿真结果:实验结果分析:仿真结果是条很规则的直线,X轴和Y轴一一对应,清楚明了,而序又特别简单。

所以用Maltab 软件很方便地画出规则的直线,方便研究。

实验结果及分析1、A=2、A=1A=实验结果及分析实验三 Matlab在信号与系统中的应用实验名称实验1、掌握信号与系统课程中基本知识的Matlab编程、仿真方法目的实验原理实验1程序:b=[1];a=[1 1];p=;t=0:p:5;x=exp(-3*t);subplot(1,2,1);impulse(b,a,0:p:5);title('冲激响应');subplot(1,2,2);step(b,a,0:p:5);title('阶跃响应');实验内容<设计性实验>1、用MATLAB在时域中编程求解y′(t)+y(t)=f(t), f(t)= exp(-3t)ε(t)的冲激响应、阶跃响应。

在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。

<设计性实验>(选做)2、用MATLAB在时域中编程求解y′(t)+y(t)=f(t), f(t)=(1+exp(-3t))ε(t)的冲激响应、阶跃响应,要求用conv编程实现系统响应。

在simulink仿真环境下,设计系统框图,分析系统的冲激响应、阶跃响应。

实验结果及分析实验1仿真结果:simulink仿真环境下冲激响应阶跃响应实验名称实验四 Matlab在数字信号处理中的应用实验结果及分析实验1仿真结果:6khz12kHZ。

matlab实验报告

matlab实验报告

MATLAB程序设计软件实验报告专业及班级____通信中兴131_______姓名____魏增_______________学号_____6102213869________日期_____2015.6.15_________南昌大学实验报告学生姓名: 魏增 学 号: 6102213869 班级: 中兴131班 实验类型:□ 验证 □ 综合 ■ 设计 □ 创新 实验日期: 实验成绩:实验一 MA TLAB 的基本使用一、 实验目的1.了解MA TALB 程序设计语言的基本特点,熟悉MA TLAB 软件的运行环境;2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力;3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。

二、 MATLAB 的基础知识通过本课程的学习,应基本掌握以下的基础知识: 一. MA TLAB 简介二. MA TLAB 的启动和退出 三. MA TLAB 使用界面简介 四. 帮助信息的获取五. MA TLAB 的数值计算功能六. 程序流程控制 七. M 文件八. 函数文件九. MATLAB 的可视化 三、上机练习1. 仔细预习第二部分内容,关于MA TLAB 的基础知识。

2. 熟悉MA TLAB 环境,将第二部分所有的例子在计算机上练习一遍3、已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=123456789,987654321B A 。

求A*B ,A .* B ,比较二者结果是否相同。

并利用MA TLAB 的内部函数求矩阵A 的大小、元素和、长度以及最大值。

解:>> A=[1 2 3;4 5 6;7 8 9]; >> B=[9 8 7;6 5 4;3 2 1];>> A*Bans =30 24 18 84 69 54 138 114 90 >> A.*B ans =9 16 2124 25 2421 16 9 两者结果不同 >> [m,n]=size(A) m =3 n =3 >> b=sum(A) b =12 15 18 >> a=length(A) a = 3 >>max(A)ans =7 8 94、Fibonacci 数组的元素满足Fibonacci 规则:),2,1(,12=+=++k a a a k k k ;且121==a a 。

MATLAB周期信号的频谱分析解读

MATLAB周期信号的频谱分析解读

0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8
y=sawtooth((t-1) *pi) (see also)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -10
-1 -10
-8
-6
-4
-2
0
2
4
6
8
10
-8
-6
-4
-2
0
2
4
6
8
10
MATLAB在信号与系统课程中的应用
EE of BUPT
7.2 三角函数形式的傅里叶级数
1.三角函数集
cosn 1t , sinn 1t 是一个完备的正交函数集
由积分可知
t在一个周期内,n=0,1,...
cos n1 t sin m1 dt 0 T T , 2 T2 cos n1t cos m1t dt 2 0, T T , 2 T2 sin n1t sin m1t dt 2 0,
PAUSE causes a procedure to stop and wait for the user to strike any key before continuing.
MATLAB在信号与系统课程中的应用
EE of BUPT
结果显示
1.5
1
0.5
0
-0.5
-1
-1.5
0
1
2
3
4
5
6
7
line([1,2,3],[4,5,7]) text(2.1,4.8,'here')
7 6

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析班级:机自23姓名:***学号:**********1.在Matlab环境下编写自相关分析程序,并给出周期信号、含随机噪声的正弦信号的相关分析结果。

答:绘制纯净正弦函数自相关的程序,如下:dt=.1; 采样间隔t=[0:dt:100];x=sin(t); 生成正弦函数[a,b] = xcorr(x,'unbiased'); 对正弦函数进行无偏自相关subplot(4,1,1);plot(t,x); 绘制正弦函数图subplot(4,1,2);plot(b*dt,a); 绘制正弦函数自相关图绘制加了噪声的正弦函数自相关程序如下:dt=0.1; 采样间隔t=[0:dt:100];x=sin(t); 生成正弦函数y=randn(1,1001);z=awgn(x,15,'measured');subplot(4,1,3);plot(t,z); 绘制添加噪声的正弦函数Title 添加噪声的正弦信号[a,b] = xcorr(z,'unbiased'); 求有噪声正弦函数的无偏自相关subplot(4,1,4);plot(b*dt,a); 绘制自相关图形title绘制结果如下:分析:正弦函数的自相关图像具有明显的周期性,添加随机噪声后自相关图像的周期性下降,可以看出在机械设备运行过程中可以通过采集相关信号进行自相关分析,当自相关图像无任何周期性时,可以初步认为干扰主要是由于周边环境无规则干扰所致;如果其自相关图像具有明显的周期性,可以初步认为干扰是其内部故障,产生周期性的干扰。

2。

绘制三角波。

t = 0:0.0001:1.5;x = sawtooth(2*pi*30*t,0.5);subplot(3,1,1);plot(t,x),axis([0 0.4 -1 1])fsnt = fftshift(fft(x));pfsnt = abs(fsnt);subplot(3,1,2);plot(pfsnt),axis([5000 10000 0 8000]);绘制结果如下:。

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析

MATLAB自相关编写及周期函数分析自相关是一种用于分析时间序列数据的方法,可以帮助我们了解序列中不同时间点之间的相关性。

在MATLAB中,可以使用内置函数`xcorr`来计算自相关函数,并进行周期性分析。

自相关函数是由原始序列与滞后版本的序列之间的相关性统计量构成的。

滞后是指将序列向后移动几个时间单位。

在MATLAB中,通过将滞后长度作为参数传递给`xcorr`函数,可以计算得到自相关函数。

下面是使用MATLAB编写的自相关函数的示例代码:```matlab%生成一个时间序列t=0:0.1:10;x = sin(t); % 原始序列为正弦函数%计算自相关函数lags = -20:1:20;acf = xcorr(x, lags, 'coeff'); % 'coeff'参数用于计算相关系数%绘制自相关函数图像figure;stem(lags, acf);title('自相关函数');xlabel('滞后');ylabel('相关系数');```在这个示例中,我们生成了一个时间序列`t`,然后计算了与原始序列`x = sin(t)`自相关函数。

我们使用了`-20`到`20`的滞后长度,并使用`'coeff'`参数计算相关系数。

最后,我们使用`stem`函数绘制了自相关函数的图像。

自相关函数的图像描述了序列与其自身滞后版本之间的相关性。

图像上的峰值表示序列中存在的周期性,峰值的位置对应于序列中的周期。

在上面的例子中,由于原始序列是一个正弦函数,所以我们期望在自相关函数中看到一个峰值,其位置对应于正弦函数的周期。

除了计算自相关函数,MATLAB还提供了其他一些函数用于周期函数的分析。

例如,`findpeaks`函数可以用于提取自相关函数中的峰值,`fft`函数可以用于计算信号的频谱,`periodogram`函数可以用于绘制信号的功率谱密度图等等。

matlab实验报告

matlab实验报告

南昌大学信息工程学院信号与系统实验报告班级:通信122班姓名:***学号:**********软件实验部分:1.用matlab实现π的求解解:相应程序如下:for n=1:10000sum=qiuhe(n);pai(1,n)=sqrt(6*sum);endt=[1:10000];plot(t,pai,'r')调用函数sum如下function sum=qiuhe(m);sum=0;for n=1:ma=1/(n^2);sum=sum+a;end2.用simulink实现冲激响应观察波形如图所示:3.1.已知某系统微分方程为r’’(t)+r’(t)+r(t)=e’(t)+e(t)分别用两种方法计算其冲激响应h(t)和阶跃响应g(t),对比理论结果进行验证。

解:a=[1,1,1];b=[1,1];sys=tf(b,a); %定义LTI系统模型t=[0:0.01:10]; %生成0到10s,间隔0.01s的抽样时间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); %仿真x_step激励sys的响应并绘图subplot(2,2,3);[h1,t1]=impulse(sys,t);plot(t1,h1,'k');title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');subplot(2,2,4); %在右下角的子图中用第二种方法绘制冲激响应x_delta=zeros(size(t)); %产生冲激信号x_delta(t==0)=100; %保证数值积分为1[y1,t]=lsim(sys,x_delta,t); %仿真x_delta激励sys的响应并保存y2=y1'-x_delta;plot(t,y2,'k');title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');结论:通过比较发现两种方法求解冲击响应和阶跃响应的结果是一致的3.2. 请编写一个自定义函数【F,tF】=int1(f,tf,a).实现数值积分,其中f和tf 分别用列矢量表示待积函数的抽样值和抽样时间,a表示积分的其实时间,F和tF分别表示积分结果的抽样值和抽样时间。

信号与系统Matlab实验作业

信号与系统Matlab实验作业

实验一典型连续时间信号和离散时间信号一、实验目的掌握利用Matlab画图函数和符号函数显示典型连续时间信号波形、典型时间离散信号、连续时间信号在时域中的自变量变换。

二、实验内容1、典型连续信号的波形表示(单边指数信号、复指数信号、抽样信号、单位阶跃信号、单位冲击信号)1)画出教材P28习题1-1(3) ()[(63)(63)]t=----的波形图。

f t e u t u t2)画出复指数信号()()j t f t e σω+=当0.4, 8σω==(0<t<10)时的实部和虚部的波形图。

t=0:0.01:10;f1='exp(0.4*t)*cos(8*t)';f2='exp(0.4*t)*sin(8*t)';figure(1)ezplot(f1,t);grid on;figure(2)ezplot(f2,t);grid on;3)画出教材P16图1-18,即抽样信号Sa(t)的波形(-20<t<20)。

t=-10:0.01:10;f='sin(t)/t';ezplot(f,t);grid on;4)用符号函数sign画出单位阶跃信号u(t-3)的波形(0<t<10)。

t=0:0.01:10;f='(sign(t-3)+1)/2';ezplot(f,t);grid on;5)单位冲击信号可看作是宽度为∆,幅度为1/∆的矩形脉冲,即t=t 1处的冲击信号为11111 ()()0 t t t x t t t otherδ∆⎧<<+∆⎪=-=∆⎨⎪⎩画出0.2∆=, t 1=1的单位冲击信号。

t=0:0.01:2;f='5*(u(t-1)-u(t-1.2))';ezplot(f,t);grid on;axis([0 2 -1 6]);2、典型离散信号的表示(单位样值序列、单位阶跃序列、实指数序列、正弦序列、复指数序列)编写函数产生下列序列:1)单位脉冲序列,起点n0,终点n f,在n s处有一单位脉冲。

信号与系统实验(MATLAB 西电版)实验10 周期信号的合成与分解

信号与系统实验(MATLAB 西电版)实验10  周期信号的合成与分解

逼近
t=-2:0.001:2;
%
N=20; c0=0.5;
f1=c0*ones(1,length(t)); %
for n=1:N %
f1=f1+cos(pi*n*t)*sinc(n/2);
end plot(t,f1); axis([-2 2 -0.2 0.8]);
方波的傅里叶级数逼近如图10.3
实验10 周期信号的合成与分解 图 10.3 方波的傅里叶级数逼近
实验10 周期信号的合成与分解
3) 用正弦信号的叠加近似合成一频率为50 Hz,幅值为3
MATLAB clear all;
fs=10000; t=[0:1/fs:0.1]; f0=50; sum=0; subplot(211) for n=1:2:9;
实验10 周期信号的合成与分解
plot(t,4/pi*1/n*sin(2*pi*n*f0*t),′k′); title(′信号叠加前′); hold on;
写出相应MATLAB
实验10 周期信号的合成与分解
五、
简述实验目的及原理,按实验步骤附上相应的信号波形
六、
(1) (2) 傅里叶级数分解有三种形式,请以另外两种形式重
(3) 若周期函数为奇谐波函数,重复上述实验,比较实 验结果。
end subplot(221); plot(t,xN) xlabel(′time′); ylabel(′approximation N′); axis([-2 2 -0.7 0.7]);
实验10 周期信号的合成与分解 2.
x(t)=
4
π n1
sin(2πnf0t)
1 n
n=1,3,5,…
Hale Waihona Puke 用前5项谐波近似合成一频率为50 Hz,幅值为3的方波,

应用MATLAB实现周期信号和非周期信号频谱仿真课程设计

应用MATLAB实现周期信号和非周期信号频谱仿真课程设计

设计题目:应用MATLAB实现周期信号和非周期信号频谱仿真1 课程设计目的通过课程设计,提高学生综合运用所学知识来解决实际问题、查阅文献资料、及进行科学实验或技术设计的能力。

学会用MATLAB 语言编写信号与系统及数字信号处理的仿真程序;认真分析每个题目的具体要求;上机前初步编好程序,上机时认真调试程序;增加学生对仿真软件MATLAB的感性认识,熟悉MATLAB软件平台的使用和MATLAB编程方法及常用语句;了解MATLAB的编程方法和特点;加深理解采样与重构的概念,掌握连续系统频率响应概念,掌握利用MATLAB分析系统频率响应的方法和掌握利用MATLAB实现连续信号采用与重构的方法初步掌握线性系统的设计方法,培养独立工作能力。

培养学生正确的设计思想,理论联系实际的科学态度,严肃认真、实事求是的科学态度和勇于探索的创新精神。

培养学生综合运用所学信号与系统及数字信号处理的知识,分析和解决工程技术问题的能力。

为毕业设计打下基础。

2 设计原理2.1 MATLAB软件说明MATLAB(Matrix Laboratory)是美国Math Works公司产品,Matrix Laboratory意为“矩阵实验室”,最初的MATLAB只是一个数学计算工具。

但现在的MATLAB已经远不仅仅是一个“矩阵实验室”,它已经成为一个集概念设计、算法开发、建模仿真,实时实现于一体的集成环境,它拥有许多衍生子集工具。

MATLAB现已被广泛于数学、通信、信号处理、自动控制、神经网络、图形处理等许多不同学科的研究中。

MATLAB特点:(1)此高级语言可用于技术计算(2)此开发环境可对代码、文件和数据进行管理(3)交互式工具可以按迭代的方式探查、设计及求解问题(4)数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数积分等(5)二维和三维图形函数可用于可视化数据(6)各种工具可用于构建自定义的图形用户界面(7)各种函数可将基于MATLAB 的算法与外部应用程序和语言(如 C 、C++、Fortran 、Java 、COM 以及 Microsoft Excel )集成 (8)不支持大写输入,内核仅仅支持小写2.2 周期信号的频谱分析——傅里叶级数FS(1) 任何满足狄义赫利条件周期函数都可展成傅里叶级数。

MATLAB常用函数使用说明

MATLAB常用函数使用说明

MATLAB常用函数使用说明MATLAB常用函数使用说明matlab常用到的永久变量ans:计算结果的默认变量名。

i j:基本虚数单位。

eps:系统的浮点(F10a9Bg个oht):inf: 无限大,例1/0nan NaN:非数值(N航a nmnb谢)pi:圆周率n(n=3.1415926..)。

realmax:系统所能表示的最大数值。

realmin: 系统所能表示的最小数值,nargin: 函数的输入参数个数:nargout:函数的输出多数个数①matlab的所有运算都定义在复数城上。

对于方根问题运算只返回处于第一象限的解。

⑦matlab分别用左斜/和右\\来表示―左除和―右除‖运算。

对于标量运算而言,这两者的作用没有区别:但对于矩阵运算来说,二者将产生不同的结果。

多项式的表示方法和运算p(x)=x^3-3x-5 可以表示为p=[1 0 –3 5],求x=5时的值用plotval(p,5)也可以求向量:a=[3 4 5],plotval(p,a)函数roots求多项式的根roots(p)p=[1 0 -3 5];r=roots(p)由根重组多项式poly(根)q=poly(r)real(q) 有时会产生虚根,这时用real抽取实根即可conv(a,b)函数多项式乘法(执行两个数组的卷积)a=[1 2 3 4];b=[1 4 9 16];c=conv(a,b)多项式的加减法,低阶的多项式必须用首零填补,使其与高阶多项式有同样的阶次多项式除法[q , r]=deconv(c , b) 表示b/c q为商多项式,r为余数多项式的导数polyder(f)f=[ 2 4 5 6 2 1];s=polyder(f)多项式的曲线拟合x=[1 2 3 4 5];y=[5.6 40 150 250 498.9];p=polyfit(x,y,n) 数据的n次多项式拟合poly:矩阵的特征多项式、根集对应的多项式x2=1:0.1:5; n取1时,即为最小二乘法y2=polyval(p,x2); 计算多项式的值(polyvalm计算矩阵多项式)plot(x,y,'*',x2,y2);grid on最小二乘法x=[1 2 3 4 5];y=[5.6 40 150 250 498.9];plot(x,y,‘*‘),lsline多项式插值YI=interp1(x,y,XI,‘method‘) 一维插值(XI为插值点的自变量坐标向量,可以为数组或单个数。

信号与系统课程设计应用MATLAB实现周期信号和非周期信号频谱仿真

信号与系统课程设计应用MATLAB实现周期信号和非周期信号频谱仿真

沈阳大学其中,x1、x2、y2、x3、y3等符号均代表需要绘制的参数,它门可以是向量、矩阵、复数矩阵等,plot指令将根据不同的参数绘制不同的图形。

2.1.3多子图绘制指令---subplotMATLAB为方便用户进行仿真分析,设置了subplot指令,利用它可以在不同的子图下绘制图形,以进行对比分析。

subplot的基本指令格式如下:subplot(m,n,k)%作出(m n)幅子图中的第k幅图形subplot(‘position’,[left bottom width height])%在人工指定位置作出字图。

subplot(m,n,k)指令表示在图形窗口中产生(m n)幅子图,k代表当前绘制子图号。

如subplot(2,2,1)就是产生22幅子图,当前在子图1绘制图形。

2.1.4sinc序列Sinc函数是Matlab软件中经常使用的函数之一,sinc序列定义为:⎪⎩⎪⎨⎧=≠=1sin)(nnnnnSaππ这个信号可以利用Signal Processing Toolbox中的函数sinc来实现。

2.2连续时间信号系统是连续事物或各个部分的一个复杂的整体,有形或无形事物的组成体。

系统可以分为即时系统与动态系统;连续系统与离散系统;线性系统与非线形系统;样时变系统和非时变系统等等。

在连续时间系统中,如一个连续时间系统接收,输入信号x(t),并产生输出信号y(t)。

连续时间信号:在连续时间范围内定义的信号值,信号的幅值可以是连续数值,也可以是离散数值。

当信号幅值连续是,则称之为模拟信号。

沈阳大学2.3信号采样取样定理论述了在一定条件下,一个连续时间信号完全可以用该信号在等时间间隔上的瞬时值(或称样本值)表示,这些样本值包含了连续时间信号的全部信息,利用这些样本值可以恢复原信号。

可以说取样定理在连续时间信号与离散时间信号中架起了一座桥梁。

为了使数字信号的频谱能完全反应采样前连续非周期信号的频谱特性,以致不丢失有用信息,要求对于一般具有低通特性的连续时间信号,用于进行时间采样的采样频率必须大于或等于两倍原连续信号的最大频率,才不会致使采样后数字离散信号的频谱出现混叠失真,这就是有名的奈奎斯特采样定律,而是最高频率两倍的采样频率叫做"奈奎斯特频率"或"临界采样频率"。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十周期函数
【实验目的】
1.了解周期函数的基本概念。

2.了解周期函数经过四则运算、复合运算、求导运算、积分运算后的周期性。

3.学习、掌握MATLAB软件有关命令。

【实验内容】
从图形上观察六个三角函数的周期性。

【实验准备】
1.周期函数的基本概念
函数()
f x是以T为周期的周期函数是指对任何x,有
+=
()()
f x T f x
使得上式成立的最小正数T称为函数的最小正周期。

2.周期函数的四则运算
3.周期函数的最小正周期
【实验重点】
1、周期函数的四则运算与复合
2、周期函数的求导与积分运算
【实验难点】
1、最小正周期的确定
【实验方法与步骤】
练习 1 图形上观察六个三角函数
sinx,cosx,tanx,cotx,secx,cscx的周期性。

绘制正弦函数y=sinx 在区间[-6π,6π]的图形,相应的MATLAB代码为
>>x=-6*pi:2*pi/30:6*pi;
>>y=sin(x);
>>plot(x,y);
>>xlabel('x');ylabel('y');
运行结果见图10.1。

从图形中可以看出y=sinx为周期函数,最小正周期T≈6。

实际上,最小正周期T=2π=6.28…。

同样,可以画出余弦函数y=cosx的图形,见图10.2,其最小正周期也为T=2π。

画正切函数y=tanx 的图形时,要注意函数在,0,1,2,...2x k k π
π=+=±±是不连续,所以我们只能分别绘出函数在区间(,),0,1,2,...22k k k ππ
ππ-+=±±的图形。

相应的MATLAB 代码为 >>x=-1.5:0.01:1.5;
>>x1=x-pi;x2=x+pi;
>>y=tan(x);y1=tan(x1);y2=tan(x2);
>>plot(x,y,x1,y1,x2,y2);
>>xlabel('x');ylabel('y');
运行结果见图10.3。

从图
10.3可看出,函数y=tanx 在每个区间(,),0,1,2, (22)
k k k ππππ-+=±±的图形是相同的,故其最小正周期为π。

同样,注意到余切函数y=cotx 在,0,1,2,...x k k π==±±上不连续,可画出函数在各个区间(,(1)),0,1,2,...k k k ππ+=±±上的图形,这个函数是以π为最小正周期的奇函数。

图10.4 正割函数1sec cos
y x ==
在,0,1,2,...x k k π==±±上没有定义,它是个无界的偶函数。

图10.5 余割函数1c sin
y cs x ==在,0,1,2,...x k k π==±±上没有意义,它是个无界的奇函数,且是以2π为最小正周期的周期函数。

图10.6
练习2研究函数sin2sin23sin3
=++的周期性。

在区间[-6π,
y x x x
6π]绘图,相应的MATLAB代码为
>>x=-6*pi:2*pi/30:6*pi;
>>y=sin(x)+2*sin(2*x)+3*sin(3*x);
>>plot(x,y);
>>xlabel('x');ylabel('y');
从图10.7可见,函数sin2sin23sin3
y x x x
=++仍然为周期函数,最小正周期T≈6。

【练习与思考】
1. 画图研究下列函数的周期性,并从理论上证明。

(1)sin2x;
(2)cos2cos23cos34cos4
x x x x
+++
(3)sin(cos(sin()));
++
x x x
(4)sin(sin(sin()));
++
x x x
(5)sin(2cos(sin()));
++
x x x。

相关文档
最新文档