matlab实验
- 格式:doc
- 大小:623.00 KB
- 文档页数:15
实验一 MATLAB 运算基础1. 先求以下表达式的值,尔后显示 MATLAB 工作空间的使用情况并保存全部变量。
(1)2sin 85 z1 21 e(2) 12z ln( x 1 x ) ,其中22 x2 1 2i5(3)ae e az sin( a 0.3) ln , a 3.0, 2.9, L , 2.9, 32 22t 0 t 1(4) 2z t 1 1 t 242t 2t 1 2 t 3,其中解:M 文件:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1)4. 完成以下操作:(1) 求[100,999] 之间能被 21 整除的数的个数。
(2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:m=100:999;n=find(mod(m,21)==0);length(n)ans =43(2). 建立一个字符串向量比方:ch='ABC123d4e56Fg9'; 那么要求结果是:ch='ABC123d4e56Fg9';k=find(ch>='A'&ch<='Z');ch(k)=[]ch =123d4e56g9实验二 MATLAB矩阵解析与办理1. 设有分块矩阵 A E R3 3 3 2O S2 3 2 2,其中 E、R、O、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试经过数值计算考据 2A E R RS2O S。
MATLAB语言及其应用实验报告.doc一、实验目的1、熟悉MATLAB语言及其基本操作;2、掌握利用MATLAB进行数据分析和可视化的方法;3、掌握MATLAB应用于科学计算的基本方法。
二、实验环境MATLAB R2018a三、实验内容及方法3.1 实验内容1、打开MATLAB环境;2、读入数据文件,并对数据进行分析和处理;3、通过MATLAB绘制图表,对数据进行可视化。
四、实验细节及流程4.1 读入数据文件本实验使用的数据文件为sales.xlsx,其中包括2018年各个季度的销售数据。
首先,通过以下命令导入数据:data=xlsread('sales.xlsx');4.2 数据分析和处理1、计算各季度销售总额通过以下代码计算每个季度的销售额并求和,得到每年的销售总额:Q1=data(:,2);TotalSales=sum([Q1 Q2 Q3 Q4],2);2、计算增长率根据每年的销售总额,计算出每年的增长率。
具体代码如下:GrowthRate(1)=0;for i=2:length(TotalSales)GrowthRate(i)=((TotalSales(i)-TotalSales(i-1))/TotalSales(i-1))*100; endSalesGrowth=[TotalSales GrowthRate];3、计算每个季度的均值和标准差meanQ1=mean(Q1);stdQ1=std(Q1);4、计算出每年第一个季度的销售额所占比例首先,我们将第一个季度的销售额单独提出来,具体代码如下:4.3 数据可视化1、柱形图对于销售总额,使用柱形图进行可视化,具体代码如下:结果如下图所示:图1 销售总额2、线性图3、箱形图boxplot([Q1 Q2 Q3 Q4],{'Q1','Q2','Q3','Q4'});图3 每个季度的销售额4、饼图pie(FirstQSalesRatio(:,1));五、结论本实验通过对销售数据的分析和可视化,得出以下结论:1、2018年销售总额呈逐年上升趋势,其中2017年到2018年的增长率最高;2、每年第一个季度的销售额所占比例在40%至45%之间,与其他季度相比,显著高于其他季度;3、2018年第二季度的销售额经过调整后,表现出了相对较高的波动。
基于matlab的实验报告实验报告:基于MATLAB 的实验一、实验目的通过使用MATLAB 软件,掌握如何进行数据分析、图像处理、算法实现等一系列实验操作,提高实验者的实践能力和动手能力。
二、实验原理MATLAB 是一种在科学计算和技术开发领域广泛应用的计算机软件。
它能进行矩阵计算、绘制函数和数据图像、实现算法以及进行数据分析等。
通过掌握MATLAB 的使用,能够快速、高效地解决各种科学和工程问题。
三、实验内容1. 数据分析:使用MATLAB 的数据分析工具进行数据的导入、处理和分析。
2. 图像处理:利用MATLAB 的图像处理工具包对图像进行滤波、增强、分割等操作。
3. 算法实现:使用MATLAB 实现常用的算法,如排序、搜索、图像压缩等。
四、实验步骤1. 数据分析:(1)使用MATLAB 的读取数据函数将数据导入MATLAB 环境中。
(2)利用MATLAB 的数据处理函数进行数据清洗和预处理。
(3)使用MATLAB 的统计工具进行数据分析,如求平均值、标准差等。
(4)利用MATLAB 的绘图函数将分析结果可视化。
2. 图像处理:(1)使用MATLAB 的读取图像函数将图像导入MATLAB 环境中。
(2)利用MATLAB 的图像处理工具包进行滤波操作,如均值滤波、中值滤波等。
(3)使用MATLAB 的图像增强函数对图像进行锐化、变换等操作。
(4)利用MATLAB 的图像分割算法对图像进行分割。
3. 算法实现:(1)使用MATLAB 编写排序算法,如冒泡排序、快速排序等。
(2)使用MATLAB 编写搜索算法,如二分查找、线性搜索等。
(3)使用MATLAB 实现图像压缩算法,如离散余弦变换(DCT)。
五、实验结果实验中,我们使用MATLAB 完成了数据分析、图像处理和算法实现的一系列实验操作。
通过数据分析,我们成功导入了数据并对其进行了清洗和预处理,最后得到了数据的统计结果。
在图像处理方面,我们对图像进行了滤波、增强和分割等操作,最终得到了处理后的图像。
MATLAB全部实验及答案实验一、MATLAB基本操作实验内容及步骤1、命令窗口的简单使用(1)简单矩阵的输入(2)求[12+2×(7-4)]÷32的算术运算结果2、有关向量、矩阵或数组的一些运算(1)设A=15;B=20;求C=A+B与c=a+b?(2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与A.*B?A*B就是线代里面的矩阵相乘 A.*B是对应位置的元素相乘(3)设a=10,b=20;求i=a/b=0.5与j=a\b=2?(4)设a=[1 -2 3;4 5 -4;5 -6 7]请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全下标的形式),并将其单下标转换成全下标。
clear,clca=[1 -2 3;4 5 -4;5 -6 7];[x,y]=find(a<0);c=[];for i=1:length(x)c(i,1)=a(x(i),y(i));c(i,2)=x(i);c(i,3)=y(i);c(i,4)=(y(i)-1)*size(a,2)+x(i);endc(5)在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?前面那个是虚数矩阵,后面那个出错(6)请写出完成下列计算的指令:a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=?a^2= 22 16 1625 26 2326 24 28a.^2=1 4 99 16 425 4 9(7)有一段指令如下,请思考并说明运行结果及其原因clearX=[1 2;8 9;3 6];X( : ) 转化为列向量(8)使用三元组方法,创建下列稀疏矩阵2 0 8 00 0 0 10 4 0 06 0 0 0方法一:clear,clcdata=[2 8 1 4 6];ir=[1 1 2 3 4 ];jc=[1 3 4 2 1];s=sparse(ir,jc,data,4,4);full(s)方法二:不用三元组法clear,clca=zeros(4,4);a(1,[1,3])=[2,8];a(2,4)=1;a(3,2)=4;a(4,1)=6;a(9) 写出下列指令的运行结果>> A = [ 1 2 3 ]; B = [ 4 5 6 ];>> C = 3.^A>> D = A.^B3、 已知⎪⎭⎫ ⎝⎛+⋅=-334sin 234πt e y t 若需要计算t ∈[-1,1],取间隔为0.01,试计算出相对应的y 值。
程序设计实验报告(matlab)实验一: 程序设计基础实验目的:初步掌握机器人编程语言Matlab。
实验内容:运用Matlab进行简单的程序设计。
实验方法:基于Matlab环境下的简单程序设计。
实验结果:成功掌握简单的程序设计和Matlab基本编程语法。
实验二:多项式拟合与插值实验目的:学习多项式拟合和插值的方法,并能进行相关计算。
实验内容:在Matlab环境下进行多项式拟合和插值的计算。
实验方法:结合Matlab的插值工具箱,进行相关的计算。
实验结果:深入理解多项式拟合和插值的实现原理,成功掌握Matlab的插值工具箱。
实验三:最小二乘法实验目的:了解最小二乘法的基本原理和算法,并能够通过Matlab进行计算。
实验内容:利用Matlab进行最小二乘法计算。
实验方法:基于Matlab的线性代数计算库,进行最小二乘法的计算。
实验结果:成功掌握最小二乘法的计算方法,并了解其在实际应用中的作用。
实验六:常微分方程实验目的:了解ODE的基本概念和解法,并通过Matlab进行计算。
实验内容:利用Matlab求解ODE的一阶微分方程组、变系数ODE、高阶ODE等问题。
实验方法:基于Matlab的ODE工具箱,进行ODE求解。
实验结果:深入理解ODE的基本概念和解法,掌握多种ODE求解方法,熟练掌握Matlab的ODE求解工具箱的使用方法。
总结在Matlab环境下进行程序设计实验,使我对Matlab有了更深刻的认识和了解,也使我对计算机科学在实践中的应用有了更加深入的了解。
通过这些实验的学习,我能够灵活应用Matlab进行各种计算和数值分析,同时也能够深入理解相关的数学原理和算法。
这些知识和技能对我未来的学习和工作都将有着重要的帮助。
实验一 MATLAB基本操作一、实验目的1、了解MATLAB应用程序环境2、掌握MATLAB语言程序的书写格式和MATLAB语言程序的结构。
3、掌握在MATLAB应用环境下编写程序4、掌握MATALB调试过程,帮助文件5、掌握MATLAB语言上机步骤,了解运行一个MATLAB程序的方法。
6、本实验可在学习完教材第一章后进行。
二、主要仪器及耗材PC电脑,MATLAB6.5软件三、实验内容和步骤1、MATLAB语言上机步骤:(1)、进入系统在C盘或其他盘上找到MATLAB或MATLAB6.5,然后双击其图标打开文件夹。
然后进行编辑源程序->编译->连接->执行程序->显示结果(2)、常用命令编辑切换(F6),编译(F9),运行(CTRL+F9),显示结果(ALT+F5)其它常用命令见“附录一”。
2、有下面的MATLAB程序。
(1)数值计算功能:如,求方程 3x4+7x3 +9x2-23=0的全部根p=[3,7,9,0,-23]; %建立多项式系数向量x=roots(p) %求根(2)绘图功能:如,绘制正弦曲线和余弦曲线x=[0:0.5:360]*pi/180;plot(x,sin(x),x,cos(x));(3)仿真功能:如,请调试上述程序。
3、熟悉MATLAB环境下的编辑命令,具体见附录一。
三、实验步骤1、静态地检查上述程序,改正程序中的错误。
2、在编辑状态下照原样键入上述程序。
3、编译并运行上述程序,记下所给出的出错信息。
4、按照事先静态检查后所改正的情况,进行纠错。
5、再编译执行纠错后的程序。
如还有错误,再编辑改正,直到不出现语法错误为止。
四、实验注意事项1、记下在调试过程中所发现的错误、系统给出的出错信息和对策。
分析讨论对策成功或失败的原因。
2、总结MATLAB程序的结构和书写规则。
五、思考题1、matlab到底有多少功能?2、MATLAB的搜索路径3、掌握使用MATLAB帮助文件实验二 MATLAB 矩阵及其运算一、 实验目的1、了解矩阵的操作,包括矩阵的建立、矩阵的拆分、矩阵分析等2、了解MATLAB 运算,包括算术运算、关系运算、逻辑运算等3、掌握字符串的操作,了解结构数据和单元数据。
MATLAB实验一:MATLAB语言基本概念实验实验目的:1. 熟悉MATLAB语言及使用环境;2.掌握MATLAB的常用命令;3.掌握MATLAB的工作空间的使用;4.掌握MATLAB的获得帮助的途径。
5.掌握科学计算的有关方法,熟悉MATLAB语言及其在科学计算中的运用;6.掌握MATLAB的命令运行方式和M文件运行方式;7.掌握矩阵在MATLAB中的运用。
实验方案分析及设计:本次实验主要目的是了解MATLAB的使用环境,以及常用的一些命令的使用;了解矩阵在MATLAB实验中的具体运用,以及相关的一些符号命令的使用。
实验器材:电脑一台,MATLAB软件实验步骤:打开MATLAB程序,将实验内容中的题目依次输入MATLAB中,运行得到并记录结果,最后再对所得结果进行验证。
实验内容及要求:1.熟悉MATLAB的菜单和快捷键的功能2.熟悉MATLAB的命令窗口的使用3.熟悉常用指令的使用format clc clear help lookfor who whos 4.熟悉命令历史窗口的使用5. 熟悉MATLAB工作空间的功能将工作空间中的变量保存为M文件,并提取该文件中的变量6.熟悉MATLAB获取帮助的途径将所有plot开头的函数列出来,并详细给出plotfis函数的使用方法1. 输入 A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2;3 3 3],在命令窗口中执行下列表达式,掌握其含义:A(2, 3) A(:,2) A(3,:) A(:,1:2:3)A(:,3).*B(:,2) A(:,3)*B(2,:) A*BA.*BA^2 A.^2 B/A B./AA=[7 1 5;2 5 6;3 1 5]7 1 52 5 63 1 5>> B=[1 1 1; 2 2 2;3 3 3]1 1 12 2 23 3 3>> A(2, 3)6>> A(:,2)151>> A(3,:)3 1 5>> A(:,1:2:3)7 52 63 5>> A(:,3).*B(:,2)51215>> A(:,3)*B(2,:)10 10 1012 12 1210 10 10>> A*B24 24 2430 30 3020 20 20>> A.*B7 1 54 10 129 3 15>> A^266 17 6642 33 7038 13 46>> A.^249 1 254 25 369 1 25>> B/A0.1842 0.2105 -0.23680.3684 0.4211 -0.47370.5526 0.6316 -0.7105>> B./A0.1429 1.0000 0.20001.0000 0.4000 0.33331.0000 3.0000 0.60002.输入 C=1:2:20,则 C (i )表示什么?其中 i=1,2,3, (10)1到19差为2,i 代表公差3. 试用 help 命令理解下面程序各指令的含义:cleart =0:0.001:2*pi;subplot(2,2,1);polar(t, 1+cos(t))subplot(2,2,2);plot(cos(t).^3,sin(t).^3)subplot(2,2,3);polar(t,abs(sin(t).*cos(t)))subplot(2,2,4);polar(t,(cos(2*t)).^0.5)4计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡638976242之和。
实验一:Matlab操作环境熟悉一、实验目的1.初步了解Matlab操作环境。
2.学习使用图形函数计算器命令funtool及其环境。
二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:1.单函数运算操作。
求下列函数的符号导数(1) y=sin(x);(2) y=(1+x)^3*(2-x);求下列函数的符号积分(1) y=cos(x);(2) y=1/(1+x^2);(3) y=1/sqrt(1-x^2);(4) y=(x-1)/(x+1)/(x+2);求反函数(1) y=(x-1)/(2*x+3);(2) y=exp(x);(3) y=log(x+sqrt(1+x^2));代数式的化简(1) (x+1)*(x-1)*(x-2)/(x-3)/(x-4);(2) sin(x)^2+cos(x)^2;(3) x+sin(x)+2*x-3*cos(x)+4*x*sin(x);2.函数与参数的运算操作。
从y=x^2通过参数的选择去观察下列函数的图形变化(1) y1=(x+1)^2(2) y2=(x+2)^2(3) y3=2*x^2(4) y4=x^2+2(5) y5=x^4(6) y6=x^2/23.两个函数之间的操作求和(1) sin(x)+cos(x)(2) 1+x+x^2+x^3+x^4+x^5乘积(1) exp(-x)*sin(x)(2) sin(x)*x商(1) sin(x)/cos(x);(2) x/(1+x^2);(3) 1/(x-1)/(x-2);求复合函数(1) y=exp(u) u=sin(x)(2) y=sqrt(u) u=1+exp(x^2)(3) y=sin(u) u=asin(x)(4) y=sinh(u) u=-x三、设计提示1.初次接触Matlab应该注意函数表达式的文本式描述。
试验一熟悉matlab环境(实验报告) 实验报告:熟悉MATLAB环境一、实验目的1.掌握MATLAB的基本操作方法,熟悉MATLAB的界面和工具栏。
2.了解MATLAB的变量类型、数据结构、矩阵运算等基本概念。
3.学会使用MATLAB进行数值计算、绘图和数据分析。
二、实验内容1.MATLAB界面与工具栏:熟悉MATLAB的启动界面,了解MATLAB的菜单栏、工具栏和命令窗口。
掌握如何创建、保存和打开MATLAB脚本文件。
2.变量与数据类型:学习MATLAB的变量命名规则,了解变量类型(如标量、向量、矩阵等)及其在内存中的存储方式。
掌握如何声明变量并赋值,理解MATLAB中的数据结构(如结构体、细胞数组等)。
3.矩阵运算:学习MATLAB的矩阵运算规则,了解矩阵的基本操作(如转置、逆等)。
掌握矩阵运算的常用函数(如求行列式、矩阵的秩等)。
4.数值计算与绘图:学习使用MATLAB进行数值计算和绘图。
掌握MATLAB的数值计算函数(如sin、cos、exp等)及其应用,了解如何绘制二维和三维图形。
5.数据分析:学习使用MATLAB进行数据分析。
了解如何读取和导出数据文件,掌握基本的统计方法和数据分析技术(如求平均值、中位数、标准差等)。
三、实验步骤与操作方法1.打开MATLAB软件,进入命令窗口。
2.创建并保存脚本文件:使用“edit”命令创建一个新的脚本文件,保存文件并命名(如“熟悉MATLAB环境.m”)。
3.变量与数据类型操作:在脚本文件中输入不同类型的变量并赋值,观察变量的输出结果。
例如,声明一个标量变量a和一个向量变量b,然后分别对它们进行赋值和输出。
4.矩阵运算:在脚本文件中输入一个矩阵并进行基本操作。
例如,声明一个3x3的矩阵A,对其进行转置、逆等操作,并输出结果。
5.数值计算与绘图:在脚本文件中使用数值计算函数并进行绘图操作。
例如,创建一个包含0到2π范围内100个点的向量x,计算sin(x)和cos(x)的值,绘制它们的图形并保存结果。
实验一Matlab的基本运算及绘图一、实验目的1.学习了解MATLAB语言环境;2.练习MATLAB命令的基本操作;3.学习Matlab语言的基本矩阵运算;4.学习Matlab语言的各种绘图命令;二、实验内容1.学习了解MATLAB语言操作界面。
在Windows界面上双击MATLAB图标,即可打开MATLAB命令平台,如图1所示。
图1 matlab操作界面2.练习MATLAB命令的基本操作1)常数矩阵输入a=[1 2 3]a=[1;2;3] 记录结果,比较显示结果有何不同。
b=[1 2 5]b=[1 2 5];比较显示结果有何不同。
a=[1 2 3;4 5 6;7 8 0]a^2a^0.5 记录显示结果。
3.循环命令程序 makesum=0; for i=1:1:100makesum=makesum+i; end键入makesum ,按enter 键,记录计算结果,说明程序功能。
问题:请编程求取级数求和问题∑=+=1000001)3121(i iiS ,并记录程序及结果。
4.练习m 文件的基本操作打开file 菜单,单击命令open ,可以在m 文件编辑器上打开m 文件。
选中编辑器菜单选项下的run ,可以运行该文件(也可以在命令平台上直接键入文件名来执行。
注意:大部分m 文件需要输入变量才可以运行,此时命令平台上给出缺少输入变量的警告提示)。
例如,打开matlab\toolbox\matlab\graph2d\plot.m 阅读绘图命令的功能以及变量格式。
5.基本二维绘图plot ()函数 (1)向量绘图。
x=0:0.1:2*pi y1=sin(2*x); y2=cos(2*x); plot(x,y1) plot(x,y2) plot(x,y1,x,y2) (2)保持作图 plot(x,y1);hold on plot(x,y2);hold off (3)矩阵作图 plot(x,[y1',y2'])plot(x,y1,'c:',x,y2,'ro')(5)多窗口绘图subplot(221);plot(x,y1)subplot(222);plot(x,y2)subplot(223);plot(x,y1,x,y1+y2)subplot(224);plot(x,y2,x,y1-y2)6.三维绘图(1)三维曲线绘制plot3()函数t=0:0.1:2*pi;x=t.^3;y=cos(3*t);z=t.^2;plot3(x,y,z),grid(2)三维曲面绘制mesh surf函数[x,y]=meshgrid();z=f(x,y);mesh(x,y,z)--------------可自定义三维曲面函数surf(x,y,z)三、试验报告要求按照上述步骤进行试验,并按照要求作试验记录完成试验报告实验二 控制系统模型及转换一、 实验目的(1) 学习控制系统的模型在MATLAB 里的表示方法; (2) 掌握结构图化简的一般方法; 二、实验内容 1.建立系统模型 1) 传递函数模型(TF ) num=[b m b m-1 …b 1 b 0]; dun=[a n a n-1 ... a 1 a 0]; sys=tf(num,den) 2) ZPK 模型 z=[z 1 z 2 ...z m ]; p=[p 1 p 2 .. p n ]; k=k 0; G=zpk(z,p,k); 3)定义算子方法s=tf('s');G=3*(s+8)/(s^4+10*s^3+35*s+24) Transfer function: 3 s + 24 ------------------------ s^4 + 10 s^3 + 35 s + 24 2 结构图化简练习结构图化简函数feedback () 三、实验练习题P110页 3-1(1),3-2 ,3-8 以及书上例题 3-1 将下面的传递函数模型输入到MATLAB 环境(1)G(s)=]52)1)[(2(2432233++++++s s s s s s>> sym s;>> G=(s^3+4*s+2)/(s^3*(s^2+2)*[(s^2+1)^3+2*s+5]) G =(s^3+4*s+2)/s^3/(s^2+2)/((s^2+1)^3+2*s+5) 3-2 将零极点模型输入到MATLAB 环境 (1)G(s)=)1)(6)(5()1)(1(822+++++-+s s s s j s j s>> G=zpk(z,p,k)Zero/pole/gain: 8 (s^2 + 2s + 2) -------------------------- s^2 (s+5) (s+6) (s^2 + 1)3-8 假设某单位负反馈系统中,G(s)=52)1(2+++s Js s ,Gc(s)=sK s K i P +试将MATLAB 推导出闭环系统的传递函数模型。
>> syms s;>> G=(s+1)/(J*s^2+2*s+5) G =(s+1)/(J*s^2+2*s+5) >> Gc=(Kp*s+Ki)/s Gc =(Kp*s+Ki)/s>> GG=feedback(G ,Gc)??? Error using ==> feedback --feedback 只能用于G 和Gc 为具体参数给定的情况,处理符号模型的化简需要写M文件。
>> GG=G/(sym(1)+G*Gc); simple(GG) %多项式化简ans =s*(s+1)/(J*s^3+2*s^2+5*s+Kp*s^2+s*Ki+Kp*s+Ki)实验三控制系统性能分析一、实验目的(3)观察学习控制系统的单位阶跃响应;(4)记录单位阶跃响应曲线;(5)掌握时间响应分析的一般方法;二、实验内容1.建立系统模型3)传递函数模型(TF)num=[b m b m-1 …b1 b0];dun=[a n a n-1 ... a1 a0];sys=tf(num,den)4)ZPK模型z=[z1 z2 ...z m];p=[p1 p2 .. p n];k=k0;sys=sys(z,p,k);3)定义算子方法s=tf('s');G=3*(s+8)/(s^4+10*s^3+35*s+24)Transfer function:3 s + 24------------------------s^4 + 10 s^3 + 35 s + 242.matlab的阶跃响应1)阶跃响应曲线step()函数step(sys) 给定系统数学模型sys,画出系统的单位阶跃响应曲线。
例如G(s)=4/(s2+s+4);Matlab程序为num=[4];den=[1 1 4];sys=tf(num,den);step(sys)阶跃响应曲线为2)拉普拉斯反变换求时域解析解ilaplace()函数>> syms s;G=(s^3+7*s^2+3*s+4)/(s^4+7*s^3+17*s^2+17*s+6) G =(s^3+7*s^2+3*s+4)/(s^4+7*s^3+17*s^2+17*s+6)>> y=ilaplace(G/s),latex(y)y =31/12*exp(-3*t)-9*exp(-2*t)-7/2*t*exp(-t)+23/4*exp(-t)+2/33)residue()函数r [r,p,K]=residue([1 2 3],[4 8 6 9]) ∑-i i psr =0.15630.0469 - 0.1343i0.0469 + 0.1343ip =-1.8473-0.0763 + 1.1010i-0.0763 - 1.1010i三、实验步骤(1)二阶系统为G(s)=10/(s2+2s+10);(1)键入程序,观察记录阶跃响应曲线(三种方法皆可)。
(2)键入num=[10];den=[1 2 10];sys=tf(num,den);damp(den)计算系统的闭环根,阻尼比,无阻尼振荡频率,并作记录。
键入step(sys)[y,t,x]= step(sys);%返回变量输出y和时间t(变量x为状态变量矩阵)[y,t]%显示输出向量y和时间向量t记录实际测取的峰值大小c max(t p),峰值时间t p,过渡时间t s填入表一并与理论计算值相比较。
表一阶跃响应数据(2)修改参数,分别实现ξ=1和ξ=2的响应曲线,并作记录。
程序为n0=10;d0=[1 2 10]; step(n0,d0)hold onn1=n0;d1=[1 6.32 10];step(n1,d1)%ξ=1hold onn2=n0;d2=[1 12.65 10];step(n2,d2)%ξ=2修改参数,分别实现ωn1=0.5ωn0,ωn2=2ωn0的响应曲线,并作记录。
四试验报告要求(1)分析系统的阻尼比和无阻尼振荡频率对系统阶跃响应的影响;(2)分析响应曲线的稳态值和系统模型的关系;(3)分析系统零点对阶跃响应的影响。
实验四Simulink仿真技术一、实验目的认识simulink基本模块;练习在simulink下搭建控制系统框图;实现控制系统的仿真研究,掌握系统分析的一般方法;二、实验步骤1.打开simulink,可以在matlab命令窗口输入simulink,也可以点击matlab菜单栏中的simulink图标打开simulink.2.分别点击simulink下常用模块了解各个模块,包括continuous(连续模块),discontinuities(非线性模块),discrete(离散模块),math operations(数学函数模块),look-up talbles(查表模块),signal routing(信号模块),signal attributes (信号属性模块),sinks(输出模块),sources(输入模块),user-defined functions (用户自定义模块)等。
3.simulink建模步骤:首先,打开模型编辑窗口,即在simulink菜单栏file-new-model(也可在matlab 菜单栏file-new-model)其次,复制或者拖拽相应的模块到model文件中。
(注意,要实现模块的翻转,可以选中模块,点击右键-format-flip bolck)再次,双击模块,修改相应的参数,并把模块链接起来,点菜单栏上的箭头(如下图示)或者点击菜单栏上simulation-start即可开始仿真。