实验一 MATLAB语言环境的使用
- 格式:doc
- 大小:69.50 KB
- 文档页数:4
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 语⾔的基本使⽤⽅法1. 实验⽬的1) 了解MATLAB 程序设计语⾔的基本特点,熟悉MATLAB 软件运⾏环境。
2) 掌握创建、保存、打开⽂件及数据的⽅法,掌握设置⽂件路径的⽅法。
3) 掌握变量、函数等有关概念,具备初步的将⼀般数学问题转化为对应计算机模型并进⾏处理的能⼒。
2. MATLAB 基础知识2.1 MATLAB 程序设计语⾔简介MATLAB ,Matrix Laboratory 的缩写,是由MathWorks 公司开发的⼀套⽤于科学⼯程计算的可视化⾼性能语⾔,具有强⼤的矩阵运算能⼒。
与⼤家常⽤的Fortran 和C 等⾼级语⾔相⽐,MATLAB 的语法规则更简单,更贴近⼈的思维⽅式,被称之为“草稿纸式的语⾔”。
MATLAB 软件主要由主包、仿真系统(simulink )和⼯具箱(toolbox )三⼤部分组成。
2.2. MATLAB 界⾯简介下⾯我们主要对MATLAB 基本界⾯进⾏介绍。
如图 1-1所⽰,命令窗⼝包含标题栏、菜单栏、⼯具栏、命令⾏区、状态栏、垂直和⽔平波动条等区域。
标题栏菜单栏⼯具栏命令⾏区状态栏垂直和⽔平滚动条图 1-1 MATLAB 基本界⾯——命令窗⼝1) 菜单栏菜单栏中包括File 、Edit 、View 、Web 、Window 和Help 六个菜单项。
这⾥着重介绍File 项。
File 项是数据输⼊/输出的接⼝,包括10个⼦项,这⾥重点介绍其中的5个⼦项:New: 新建⽂件项。
有四个选择: M File(.M ,⽂本格式的MATLAB 程序⽂件,可以直接通过⽂件名的⽅式在MATLAB 环境下解释运⾏); Figure(图形);Model(仿真模型⽂件)和GUI(可视化界⾯⽂件)。
Open: 打开所有MATLAB⽀持的⽂件格式,系统将⾃动识别并采⽤相应的程序对⽂件进⾏处理。
例如, 打开⼀个.m⽂件,系统将⾃动打开M⽂件编辑器对它进⾏编辑。
实验一MATLAB环境及命令窗口的使用一、实验目的和要求1.熟练掌握MATLAB的启动和退出2.熟悉MATLAB的命令窗口3.熟悉常用选单和工具栏4.熟悉MATLAB桌面及其他窗口5.使用“帮助”查找帮助信息二、实验器材PC机一台,MATLAB6.5软件。
三、实验内容和步骤学习使用MATLAB必须先熟悉MATLAB的桌面环境。
MA TLAB的窗口包含命令窗口(Command Window)、历史命令窗口(Comand Histroy)、当前目录浏览器窗口(Current Directory Browser)、工作空间窗口(Workspace Browser)、帮助导航/浏览器窗口(Help Browser)、数组编辑器窗口(Array Editor)、交互界面分类目录窗口(Launch Pad)、M文件编辑/调试器窗口(Editor/Debugger)和程序性能剖析窗口(Profiler)。
1.启动MATLAB双击桌面上MA TLAB6.5的图标,或通过Windows的“开始”按钮,在“程序”中选择“MATLAB6.5”命令来启动。
启动后显示MATLAB6.5的集成化桌面。
2.使用命令窗口在命令窗口输入以下命令并查看运行结果。
>>a=2.5>>b=[1 2 ; 3 4]>>c=’a’>>d=cos(a*b*pi/180)>>e=a+c(1)单独显示命令窗口选择菜单“View”—“Undock Command Window”,则会出现单独的命令窗口。
然后选择命令窗口的选单“View”—“Dock Command Window”,可是单独的窗口返回桌面。
(2)使用标点符号修改命令行; 不显示结果>>a=2.5;% 用作注释>>b=[1 2 ; 3 4] %b为矩阵... 用于把后面的行与该行连接>>d=cos(a*b*pi/...180)(3)数值显示格式的设置使用MA TLAB的桌面选单“File”—“Preference”或“Format”命令,单击左栏的“Command Window”项,在右边的“Numeric Format”栏设置数据的显示格式,并查看各种格式下矩阵b的显示情况。
实验一 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 软件的用户环境;了解MATLAB 软件的一般命令;掌握MATLAB 向量、数组、矩阵操作与运算函数;掌握MATLAB 软件的基本绘图命令;掌握MATLAB 语言的几种循环、条件和开关选择结构,及其编程规范。
通过该实验的学习,使学生能灵活应用MATLAB 软件解决一些简单问题,能借助MATLAB 软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜想,发现进而证实其中的规律。
二、实验仪器、设备或软件: 电脑,MATLAB 软件三、实验内容 1.MATLAB 软件的数组操作及运算练习;2.直接使用MATLAB 软件进行作图练习;3.用MATLAB 语言编写命令M 文件和函数M 文件。
四、实验步骤1.在D 盘建立一个自己的文件夹;2.开启软件平台——MATLAB ,将你建立的文件夹加入到MATLAB 的搜索路径中;3.利用帮助了解函数max, min, sum, mean, sort, length ,rand, size 和diag 的功能和用法;4.开启MATLAB 编辑窗口,键入你编写的M 文件(命令文件或函数文件);5.保存文件(注意将文件存入你自己的文件夹)并运行;6.若出现错误,修改、运行直到输出正确结果;7.写出实验报告,并浅谈学习心得体会。
五、实验要求与任务根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→算法与编程→计算结果或图形→心得体会)1. 已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=321212113A , ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=101012111B 要求:(1)屏幕输出A 与B ;(2)A 的转置A′;(3)求A+B 的值;(4)求A-B 的值;(5)求4A ;(6)求A×B ;(7)求A -1.2. 有一函数f (x ,y )=x 2+sin xy +2y ,写一程序,输入自变量的值,输出函数值。
3. 用plot ,fplot 分别绘制函数y =cos(tan(πx ))图形。
实验一 MATLAB环境认识及基本操作一、实验目的1.熟悉MATLAB的开发环境;2.掌握MATLAB的一些常用命令;3.掌握矩阵、变量、表达式的输入方法及各种基本运算。
4.掌握MATLAB 绘图的基本方法,熟悉各种绘图函数的使用;5.掌握图形的修饰方法和标注方法;6.了解MATLAB 中图形窗口的操作。
二、实验原理1.熟悉MATLAB的开发环境:①MATLAB的各种窗口:命令窗口、命令历史窗口、启动平台窗口、工作空间窗口、当前路径窗口。
图1 MA TLAB界面窗口②路径的设置:建立自己的文件夹,加入到MA TLAB路径中,并保存。
设置当前路径,以方便文件管理。
③改变命令窗口数据的显示格式>> format short>> format long然后键入特殊变量:pi (圆周率,比较显示结果。
2.掌握MATLAB 常用命令>> who %列出工作空间中变量>> whos %列出工作空间中变量,同时包括变量详细信息>>save test %将工作空间中变量存储到test.mat 文件中>>load test %从test.mat 文件中读取变量到工作空间中>>clear %清除工作空间中变量>>help 函数名 %对所选函数的功能、调用格式及相关函数给出说明>>lookfor %查找具有某种功能的函数但却不知道该函数的准确名称如: lookfor Lyapunov 可列出与Lyapunov 有关的所有函数。
3.阅读参考文献《MATLAB 用法简介》,了解系统内部变量,矩阵、变量、表达式的输入方法及各种基本运算,以及掌握MATLAB 绘图的基本方法。
三. 实验内容1. 在MATLAB 的命令窗口计算:1 2sin(π2 5.44.05589(÷⨯+2. 设计M 文件计算:已知求出: 1 a+b a-b a+b*5 a-b+I (单位阵2 a*b a.*b a/b3 a^2 a.^2注意:点运算 . 的功能,比较结果。
MATLAB实验报告专业班级学号姓名实验一Matlab环境及命令窗口的使用实验目的与要求:熟练掌握MA TLAB的启动和退出;熟悉MATLAB的命令窗口;熟悉常用选单和工具栏;熟悉MA TLAB桌面的其它窗口。
实验内容:启动MATLAB,熟悉各环境窗口及作用,熟悉file、edit、View等菜单下各选项的功能;熟悉工具栏中各项的功能;打开演示程序(demo),开始其中的演示程序;退出MA TLAB(exit、quit)。
在命令窗口中,输入简单的命令操作;打开函数编辑窗,编写简单的程序并保存;程序:>> x1=sqrt(100),x2=5.48,y=9/x2x1 =10x2 =5.4800y =1.6423>>demo演示框左侧是库目录,选定demo下的图形类(Graphics)按钮,双击演示框右边的栏里的function of complex variable选项,就会出现如图中的演示框。
此例为复数Z的三次方:Z^3。
实验二Matlab数值计算实验目的与要求:熟练掌握matlab变量的使用;熟练掌握矩阵的创建;熟悉掌握matlab 的矩阵和数组的运算;熟悉matlab多项式的运算。
实验内容:给2×3阶矩阵变量a赋值(注意逗号与分号的使用),取其第2行第2个元素,取其第2行元素,取其第1列和第3列的元素;计算a/3、5*a、a+2等的值;程序:>> a=[7,9,5;5,9,4]a =7 9 55 9 4>> a=[7,9,5;5 9 4]a =7 9 55 9 4>> b=a([2],[2])b =9>> c=a([2],:)c =5 9 4>> d=a(:,[1,3])d =7 55 4>> e=a/3e =2.33333.0000 1.66671.6667 3.0000 1.3333>> 5*aans =35 45 2525 45 20>> a+2ans =9 11 77 11 62、生成2×3阶的全1矩阵x和3×3魔方矩阵y,计算a+x,x*y,x/y,y^2,2^a;a.*x, a.\x,y.^2,2.^a 的值。
石家庄铁道大学《Matlab语言及其应用》实验报告--实验1 Matlab软件环境的基本使用实验者姓名:韩云星实验者学号:20153254实验者班级:信1501-1所在学院:信息科学与技术学院课程编号:RL090011指导教师:刘展威报告完成日期:2017年 4月 28 日实验一熟悉MATLAB 工作环境一、实验目的1、了解Matlab的发展和主要功能;2、熟悉Matlab工作环境的各个窗口;3、掌握建立矩阵的方法;4、掌握Matlab各种表达式的书写规则以及常用函数的使用。
二、实验内容图 1实验内容1图 2实验内容2图 3实验内容3三、实验设备和软件环境处理器: Intel(R) Core(TM) i5-6200 CPU @ 2.30GHz (4 CPUs), ~2.3GHz内存: 4096MB RAMIntel(R) Core(TM) i5-6200 CPU @ 2.30GHz (8 CPUs), ~2.3GHz硬盘: Model: ATA ST2000DM001-1ER1 SCSI Disk Device操作系统: Windows 7 旗舰版 64-bit (6.1, Build 7601) (7601.win7_gdr.101026-1503)Matlab版本:9.0.0.341360 (R2016a)四、实验步骤或过程1.在命令窗口依次输入下列命令,根据执行结果分析其功能:help在命令窗口输入后,会看到帮助的目录信息,如下图所示图 4 帮助的目录信息lookfor inv输入后会在命令窗口显示帮助中含有字母inv的函数和函数功能的列表。
图 5 帮助中含有字母inv的函数和函数功能help inv查找函数inv,并显示其帮助信息。
图 6查找函数invWhich inv显示函数保存的位置信息和类型。
图 7显示函数保存的位置信息和类型2.建立自己的工作目录,再将自己的工作目录设置到Matlab搜索路径下。
实验一MATLAB环境及命令窗口1.使用命令窗口>> a=2.5a =2.5000>> b=[1 2;3 4]b =1 23 4>> c='a'c =a>> d=sin(a*b*pi/180)d =0.0436 0.08720.1305 0.1736>> e=a+ce =99.5000>> a=2.5;>> b=[1 2;3 4]b =1 23 4>> b=[1 2;3 4] %B为矩阵b =1 23 4>> d=sin(a*b*pi/...180)d =0.0436 0.08720.1305 0.17362.使用当前目录>> clear>> x=[1 2 3 4 5];>> y=sin(x)y =0.8415 0.9093 0.1411 -0.7568 -0.95893.自我练习>> x=[1 3 5 7 9];>> y=2*xy =2 6 10 14 18>> plot(y)实验二MATLAB的数值计算1.创建矩阵>> a=[1 2 3;4 5 6;7 8 9]a =1 2 34 5 67 8 9>> a=[1:3;4:6;7:9]a =1 2 34 5 67 8 9>> a=[linspace(1,3,3);linspace(4,6,3);linspace(7,9,3)]a =1 2 34 5 67 8 9>> a=ones(3)a =1 1 11 1 11 1 1>> a(1,:)=[1 2 3];>> a(2,:)=[4 5 6]a =1 2 34 5 61 1 1>> b=a(3:6)b =1 2 5 1>> b(1)=[]b =2 5 12.矩阵的运算(1).解线性方程组>> a=[2 -3 0 2;1 5 2 1;3 -1 1 -1;4 1 2 2]a =2 -3 0 21 52 13 -1 1 -14 1 2 2>> b=[8;2;7;12];>> x=a\bx =3.00000.0000-1.00001.0000(2).解矩阵方程>> A=[1/3 0 0;0 1/4 0;0 0 1/7];>> B=inv(A)*inv(inv(A)-eye(3))*6*AB =3.0000 0 00 2.0000 00 0 1.0000(3).计算特征值和特征向量,验证它们之间的关系>> x=[1 2 0;2 5 -1;4 10 -1]x =1 2 02 5 -14 10 -1>> [v,d]=eig(x)v =-0.2440 -0.9107 0.4472-0.3333 0.3333 0.0000-0.9107 -0.2440 0.8944d =3.7321 0 00 0.2679 00 0 1.0000>> x*vans =-0.9107 -0.2440 0.4472-1.2440 0.0893 0.0000-3.3987 -0.0654 0.8944>> x*dans =3.7321 0.5359 07.4641 1.3397 -1.000014.9282 2.6795 -1.00003.多项式的运算(1).表达式G(x)=(x-4)(x+5)(x^2-6x+9)>> p1=[1 -4]p1 =1 -4>> p2=[1 5]p2 =1 5>> p3=[1 -6 9]p3 =1 -6 9>> G=conv(p1,p2)G =1 1 -20>> G=conv(G,p3)G =1 -5 -17 129 -180>> x=0:20;>> y=polyval(G,x)y =Columns 1 through 8-180 -72 -14 0 0 40 198 576Columns 9 through 161300 2520 4410 7168 11016 16200 22990 31680Columns 17 through 2142588 56056 72450 92160 115600>> x0=roots(G)x0 =-5.00004.00003.00003.0000>> deconv(deconv(G,p3),p2)ans =1-4(2).多项式拟合与插值G(x)=x^4-5x^3-17x^2+129x-180>> G=[1 -5 -17 129 -180];>> x=0:20;>> y=polyval(G,x);>> y0=0.1*randn(1,21)y0 =Columns 1 through 100.0538 0.1834 -0.2259 0.0862 0.0319 -0.1308 -0.0434 0.0343 0.3578 0.2769Columns 11 through 20-0.1350 0.3035 0.0725 -0.0063 0.0715 -0.0205 -0.0124 0.1490 0.1409 0.1417Column 210.0671>> y1=y+y0y1 =1.0e+05 *Columns 1 through 10-0.0018 -0.0007 -0.0001 0.0000 0.0000 0.0004 0.0020 0.0058 0.0130 0.0252Columns 11 through 200.0441 0.0717 0.1102 0.1620 0.2299 0.3168 0.4259 0.5606 0.7245 0.9216Column 211.1560>> G1=polyfit(x,y1,4)G1 =1.0000-5.0019 -16.9766 128.9086 -179.9123实验三MATLAB的符号计算>> f=sym('sin(x)')f =sin(x)>> g=sym('y/exp(-2*t)') g =y*exp(2*t)>> syms x y t>> f=sym(sin(x))f =sin(x)>> g=sym(y/exp(-2*t)) g =y*exp(2*t)>> symvar(g)ans =[ t, y]>> symvar(g,1)ans =y>> findsym(g,2)ans =y,t>> x=0:10;>> y=subs(f,x)y =[ 0, sin(1), sin(2), sin(3), sin(4), sin(5), sin(6), sin(7), sin(8), sin(9), sin(10)] >> f1=subs(f,'5')f1 =sin(5)>> y1=double(f1)y1 =-0.9589>> y2=eval(f1)y2 =-0.9589>> digitsDigits = 32>> vpa(f1)ans =-0.95892427466313846889315440615599>> VPA(F1,10)Undefined function or variable 'F1'.Did you mean:>> vpa(f1,10)ans =-0.9589242747>> f=sym('sn(x)');>> g=sym('y/exp(-2*t)')g =y*exp(2*t)>> finverse(f)Warning: Functional inverse cannot be found.> In D:\Program Files\MATLAB\R2013a\toolbox\symbolic\symbolic\symengine.p>symengine at 56In sym.sym>sym.privBinaryOp at 1693In sym.finverse at 31ans =[ empty sym ]>> finverse(g,'t')ans =log(t/y)/2>> compose(g,'t')ans =t*exp(2*t)>> compose(f,g)ans =sn(y*exp(2*t))>> compose(f,g,'z')ans =sn(z*exp(2*t))>> diff(f)ans =diff(sn(x), x)>> cos(x)ans =Columns 1 through 81.0000 0.5403 -0.4161 -0.9900 -0.6536 0.2837 0.9602 0.7539 Columns 9 through 11-0.1455 -0.9111 -0.8391>> diff(g)ans =exp(2*t)>> diff(g,'t')ans =2*y*exp(2*t)>> syms t x>> limit((sin(x+t)-sin(x)/t,t,0)limit((sin(x+t)-sin(x)/t,t,0)|Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.>> limit((sin(x+t)-sin(x))/t,t,0)ans =cos(x)>> int(f)Warning: Explicit integral could not be found.ans =int(sn(x), x)>> f=sym('sin(x)")f=sym('sin(x)")|Error: A MATLAB string constant is not terminated properly. >> f=sym('sin(x)')f =sin(x)>>>> int(f)ans =-cos(x)>> int(g)ans =(y^2*exp(2*t))/2>> int(g,'t')ans =(y*exp(2*t))/2>> int(g,'t',0,10)ans =(y*(exp(20) - 1))/2>> f=sym('x^2+3*x+2')f =x^2 + 3*x + 2>> g=sym('x^3-1')g =x^3 - 1>> f+gans =x^3 + x^2 + 3*x + 1>> f~=gans =x^2 + 3*x + 2 ~= x^3 - 1>> f~=gans =x^2 + 3*x + 2 ~= x^3 - 1>> pretty(f)2x + 3 x + 2>> f1=horner(f)f1 =x*(x + 3) + 2>> f2=factor(f1)f2 =(x + 2)*(x + 1)>> somple(g)Undefined function 'somple' for input arguments of type 'sym'. >> simple(g)simplify:x^3 - 1radsimp:x^3 - 1simplify(Steps = 100): x^3 - 1combine(sincos):x^3 - 1combine(sinhcosh): x^3 - 1combine(ln):x^3 - 1factor:(x - 1)*(x^2 + x + 1) expand:x^3 - 1combine:x^3 - 1rewrite(exp):x^3 - 1rewrite(sincos):x^3 - 1rewrite(sinhcosh):x^3 - 1rewrite(tan):x^3 - 1mwcos2sin:x^3 - 1collect(x):x^3 - 1ans =x^3 - 1>> h=sym2poly(f)h =1 32 >> f=poly2sym(h)f =x^2 + 3*x + 2>> A=sym('[x x^2;2*x cos(2*t)]')A =[ x, x^2][ 2*x, cos(2*t)]>> A.'ans =[ x, 2*x][ x^2, cos(2*t)]>> det(A)ans =- 2*x^3 + cos(2*t)*x>> diff(A)ans =[ 1, 2*x][ 2, 0]>> eq1=sym('2*x1-3*x2+2*x4=8')eq1 =2*x1 - 3*x2 + 2*x4 == 8>> eq2=('x1+5*x2+2*x3+x4=2');>> eq3=('3*x1-x2+x3-x4=7');>> eq2=sym('x1+5*x2+2*x3+x4=2'); >> eq3=sym('3*x1-x2+x3-x4=7')eq3 =3*x1 - x2 + x3 - x4 == 7>> eq4=sym('4*x1+x2+2*x3+2*x4=12');>> [x1,x2,x3,x4]=solve(eq1,eq2,eq3,eq4)x1 =3x2 =x3 =-1x4 =1>> [y,z]=dsolve('Dy-z=cos(x),Dz+y=1','x')y =sin(x)*(C4 + (sin(x)*(sin(x) + 2))/2) + cos(x)*(C5 + x/2 + 2*cos(x/2)^3*sin(x/2) + 2*cos(x/2)^2 - cos(x/2)*sin(x/2))z =cos(x)*(C4 + (sin(x)*(sin(x) + 2))/2) - sin(x)*(C5 + x/2 + 2*cos(x/2)^3*sin(x/2) + 2*cos(x/2)^2 - cos(x/2)*sin(x/2))>>实验四MATLAB的计算可视化和GUI设计1.绘制二维曲线窗口1:y=sin(2πt),t∈[0,2]; 窗口2:y=e^(-t), y=e^(-2t), y=e^(-3t) ,t∈[0,2]; 窗口3:矩形脉冲:宽度为1,高度为2,开始时间为1;窗口4:单位圆>> subplot(2,2,1)>> t1=0:0.1:2;>> y1=sin(2*pi*t1);>> plot(t1,y1)>> title('y=sin(2\pit)')>> subplot(2,2,2)>> t2=0:0.1:2;>> y2=[exp(-t2);exp(-2*t2);exp(-3*t2)];>> plot(t2,y2)>> axis([0 2 -0.2 1.2]);>> title('y=e-t,y=e-2t,y=e-3t')>> subplot(2,2,3);>> t3=[0 1 1 2 2 3 4];>> y3=[0 0 2 2 0 0 0];>> plot(t3,y3);>> axis([0 4 -0.5 3]);>> title('脉冲信号')>> subplot(2,2,4);>> t4=0:0.1:2*pi;>> plot(sin(t4),cos(t4))>> axis([-1.2 1.2 -1.2 1.2]);>> axis equal;>> title('圆')2.绘制多条二阶系统时域曲线和三维图形二阶系统的时域响应为:y=1-1/(sqrt(1-zeta^2))*e^(-zetax)*sin(sqrt(1-zeta^2)x+a*cos(zeta)) >> x=0:0.1:20;>> zeta=0zeta =>> y1=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));>> plot(x,y1)>> zeta=0.3;>> y2=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));>> hold on>> plot(x,y2,'r:')>> zeta=0.5;>> y3=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));>> plot(x,y3,'g*')>> zeta=0.707;>> y4=1-1/sqrt(1-zeta^2)*exp(-zeta*x).*sin(sqrt(1-zeta^2)*x+acos(zeta));>> plot(x,y4,'m--')>> title('二阶系统曲线')>> legend('\zeta=0','\zeta=0.3','\zeta=0.5','zeta=0.707')>> grid on>> gtext('\zeta=0')>> gtext('\zeta=0.3')>> gtext('\zeta=0.5')>> gtext('\zeta=0.707')>> ginput(3)ans =4.5853 1.09067.9032 1.008814.2166 1.01463.特殊图形(1).绘制条形图>> x=0:0.3:2*pi;>> y=sin(x);>> subplot(2,2,1)>> bar(x,y,0.5)>> axis([0,2*pi,-1.2,1.2]) (2).绘制实心图>> subplot(2,2,2)>> fill(x,y,'r')(3).绘制阶梯图>> subplot(2,2,3)>> stairs(x,y)(4).绘制火柴杆图>> subplot(2,2,4)>> stem(x,y)。
实验报告
实验内容:
一基本操作界面及其功能
图为matlab操作界面
左上为文件路径以及文件列表
左下为工作区显示所定义的变量
右上为打开的m文件编辑器
右下为命令行窗口
二Matlab语言的基本语法和程序文件
2.1常数矩阵输入
2.2循环命令程序及问题一
三基本绘图命令
3.1向量绘图
3.2保持作图
3.3矩阵作图设定颜色和线型
3.4多窗口绘图
3.5三维绘图及问题二
实验总结:
1)Matlab矩阵输入用[],空格代表数据为行向量,加;则为列向量,矩阵则结合空格和;,语句后面加;代表不输出,条件语句要以end结束。
2)Matlab绘图用plot(),参数包括自变量和因变量图形颜色线条形状字体大小……。
3)plot3()绘制三维图像,比plot参数多一个,hold on保持作图hold off 关闭,subplot()可以多窗口绘图,参数222则为二行二列图像,位置为一行二列surf()为曲面mesh()为网面图。
MATLAB实验报告一.实验目的1.熟悉MATLAB的语言环境。
2.练习MATLAB的语言应用及仿真。
3.应用MATLAB控制系统仿真。
二.实验仪器计算机,MATLAB语言环境。
三.实验内容1. MATLAB语言环境的熟悉。
①.MATLAB集成度高,使用方便,输入简捷,运算高效,内容丰富,并且很容易由用户自行扩展,与其它计算机语言相比,MA TLAB有以下显著特点:⑴MA TLAB是一种解释性语言⑵变量的“多功能性”⑶智能化程度高功能丰富,⑷可扩展性强运算符号的“多功能性”⑸人机界面适合科技人员⑹强大而简易的作图功能②MA TLAB语言的工作环境⑴MA TLAB系统的安装⑵MA TLAB系统的启动⑶MA TLAB的命令窗口⑷工作空间⑸命令窗口与当前路径窗口⑹MA TLAB的图形窗⑺文本编辑窗2. MATLAB的练习。
⑴>> s=[1,2,3,4] %可当做一个矢量s =1 2 3 4⑵>> y=linspace(1,2,5) %把区间[1,2]5等分y =⑶>> k=1:10;>> disp(k);1 2 3 4 5 6 7 8 9 10⑷>> X=[43.12,657.32;-56.45,0.00345];>> [F,E]=log2(X)F =0.6737 0.6419-0.8820 0.8832E =6 106 -8⑸>> z=0:0.1:2*pi;x=sin(z);y=cos(z);>> subplot(1,2,1),plot(x,y);>> subplot(1,2,2),plot(x,y),axis('equal')-0.50.5-1.5-1-0.500.511.5⑹..写出完成下列操作的命令。
(1)、将矩阵A 第2~5行中第1、3、5列元素赋给矩阵B 。
B=A (2:5,[1、3、5]) (2)、删除矩阵A 的第七号元素。
《MATLAB 语言及其用》实验指导书目录实验一Matlab 使用方法和程序设计........................实验二控制系统的模型及其转换.............................实验三控制系统的时域、频域和根轨迹分析...........实验四动态仿真集成环境-Simulink.........................实验一Matlab使用方法和程序设计一、实验目的1、掌握Matlab软件使用的基本方法;2、熟悉Matlab的数据表示、基本运算和程序控制语句3、熟悉Matlab绘图命令及基本绘图控制4、熟悉Matlab程序设计的基本方法二、实验内容:1、帮助命令使用help命令,查找 sqrt(开方)函数的使用方法;在 CommandWindowL里输入help,接在在search里输入sqr即可。
sqrtSquare rootSyntaxB = sqrt(X)DescriptionB = sqrt(X) returns the square root of each element of the array X. For the elements of X that are negative or complex, sqrt(X) produces complex results.TipsSee sqrtm for the matrix square root. Examplessqrt((-2:2)')ans =0 + 1.4142i0 + 1.0000i1.00001.4142See Alsonthroot | realsqrt | sqrtm2、矩阵运算(1)矩阵的乘法已知A=[1 2;3 4]; B=[5 5;7 8];求A^2*BA=[1 2;3 4];B=[5 5;7 8];C=A^2*B>> format compactC =105 115229 251(2)矩阵除法已知 A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3];A\B,A/BA=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3];C=A\B,D=A/BC =1.0e+016 *0.3152 -1.2609 0.9457-0.6304 2.5218 -1.89130.3152 -1.2609 0.9457D =1.0000 1.0000 1.00004.0000 2.5000 2.00007.0000 4.0000 3.0000(3)矩阵的转置及共轭转置已知A=[5+i,2-i,1;6*i,4,9-i];求A.', A'A=[5+i,2-i,1;6*i,4,9-i];B=A.', C=A'B =5.0000 + 1.0000i 0 +6.0000i2.0000 - 1.0000i 4.00001.0000 9.0000 - 1.0000iC =5.0000 - 1.0000i 0 -6.0000i2.0000 + 1.0000i 4.00001.0000 9.0000 + 1.0000i(4)使用冒号表达式选出指定元素已知: A=[1 2 3;4 5 6;7 8 9];求A中第3列前2个元素;A中所有列第2,3行的元素;A=[1 2 3;4 5 6;7 8 9];B1=A([1,2],[3])B2=A([2,3],:)B1 =36B2 =4 5 67 8 9方括号[]用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列A=magic(4)B=A(:,[1,2,3])或A=magic(4)A(:,4)=[]A =16 2 3 135 11 10 89 7 6 124 14 15 1B =16 2 35 11 109 7 64 14 153、多项式(1)求多项式4xxp的根=x)2(3--Y=[1 0 -2 -4];S=roots(Y)S =2.0000-1.0000 + 1.0000i-1.0000 - 1.0000i(2)已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A的特征多项式;把矩阵A作为未知数代入到多项式中;A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4]P=poly(A)polyval(P,A)A =1.2000 3.0000 5.0000 0.90005.0000 1.7000 5.00006.00003.0000 9.0000 0 1.00001.00002.00003.00004.0000P =1.0000 -6.9000 -77.2600 -86.1300 604.5500ans =1.0e+003 *0.3801 -0.4545 -1.9951 0.4601-1.9951 0.2093 -1.9951 -2.8880-0.4545 -4.8978 0.6046 0.43530.4353 0.0840 -0.4545 -1.16174、基本绘图命令(1)绘制余弦曲线 y=cos(t),t∈[0,2π](2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π](1)t=[0:0.05:2*pi];y=cos(t);plot(t,y)-1-0.8-0.6-0.4-0.20.20.40.60.81(2)t=[0:0.05:2*pi];y1=cos(t-0.25);y2=sin(t-0.5);plot(t,y1)hold onplot(t,y2)5、基本绘图控制绘制[0,4π]区间上的x1=10sint曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;t=[0:0.1:4*pi];x1=10*sin(t);plot(t,x1,'r-.+'); %画图,显示红色、点划线、标记加号;axis([0,15,-10,10]); %定义显示范围,横轴为[0,15],纵轴为[-10,10];title('曲线x1=10sint'); %显示标题;xlabel('T轴');ylabel('X1轴'); %显示坐标轴名称;set(gca,'xminortick','on');set(gca,'yminortick','on'); %显示刻度线;grid on %显示网络线T 轴X 1轴6、基本程序设计(1)编写命令文件:计算1+2+…+n<2000 时的最大n 值; (2)编写函数文件:分别用for 和while 循环结构编写程序,求2的0到n 次幂的和。
目录实验一Matlab语言编程 (1)一.实验目的 (1)二.具体实验内容、步骤、要求: (1)实验二数值积分算法及函数调用练习 (3)一.实验目的 (3)二.实验实例介绍: (3)实验三控制工具箱与SIMULINK软件应用 (9)一.实验目的 (9)二.实验预习要求: (9)三.学会调出、运行已由SIMULINK建立的仿真模型。
(9)四.实验设计题目与要求: (10)实验一 Matlab 语言编程一. 实验目的熟悉Matlab 语言及其编程环境,掌握编程方法 要求认真听取实验指导老师讲解与演示二. 具体实验内容、步骤、要求:1.运行交互式学习软件,学习Matlab 语言2.在Matlab 的命令窗口下输入如下命令:INTRO,然后根据显示出来的幻灯片右面按钮进行操作,可按START —>NEXT —>NEXT 按钮,一步步运行,观察。
3.自编程序并完成上机编辑、调试、运行,存盘。
(1). 用Matlab 命令完成矩阵的各种运算,例如:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=44434241343332312423222114131211A 求出下列运算结果,并上机验证。
A(:,1),A(2,:),A(1:2,2:3),A(2:3,2:3),A(:,1:2),A(2:3), A(:),A(:,:),ones(2,2), eye(2)⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=41312111A(:,1)[]24232221:)A(2,=⎥⎦⎤⎢⎣⎡=232213123):2,2:A(1 ⎥⎦⎤⎢⎣⎡=333223223):3,2:A(2⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=42413231222112112):A(:,1[]31213):A(2=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=44342414433323134232221241312111A(:)⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=44434241343332312423222114131211:)A(:,⎥⎦⎤⎢⎣⎡=1111)2,2(ones ⎥⎦⎤⎢⎣⎡=1001)2(eye(2). 绘制数学函数图形t=0:0.1:8;y=1-2*t.*sin(t); plot(t,y)12345678-15-10-551015时间t输出y绘制数学函数图形4.理解命令文件和函数文件的区别,并自编函数文件并调用。
试验一MATLAB 语言基础实验(软件仿真)一、MATLAB的基本操作1、实验目的(1)学习了解MATLAB语言环境(2)练习MATLAB命令的基本操作(3)练习m文件的基本操作2、实验内容(练习MATLAB命令的基本操作中的内容)1)常规矩阵输入>> a=[1 2 3]a =1 2 3>> a=[1;2;3]a =123>> b=[1 2 5]b =1 2 5>> b=[1 2 5];>> aa =123>> a'ans =1 2 3>> bb =1 2 5>> b'ans =125>> c=a*bc =1 2 52 4 103 6 15>> c=a*b'??? Error using ==> *Inner matrix dimensions must agree.>> a=[1 2 3;4 5 6;7 8 0]a =1 2 34 5 67 8 0>> a^2ans =30 36 1566 81 4239 54 69>> a^0.5ans =0.5977 + 0.7678i 0.7519 + 0.0979i 0.5200 - 0.4680i1.4102 + 0.1013i 1.7741 + 0.6326i 1.2271 - 0.7467i1.2757 - 1.0289i 1.6049 - 1.0272i 1.1100 + 1.6175i 2)作循环命令程序>> makesum=0;for i=1:1:100makesum=makesum+i;end>> makesummakesum =50503)分别执行下列命令>> a=[1 2 3;4 5 6;7 8 0]a =1 2 34 5 67 8 0>> poly(a)ans =1.0000 -6.0000 -72.0000 -27.0000>> rank(a)ans =3>> det(a)ans =27>> trace(a)ans =6>> inv(a)ans =-1.7778 0.8889 -0.11111.5556 -0.7778 0.2222-0.1111 0.2222 -0.1111 >> eig(a)ans =12.1229-0.3884-5.73454)练习m文件的基本操作>> penddemo倒立摆控制系统:二、MATLAB的数值运算1、实验目的(1)学习MATLAB语言的基本矩阵运算(2)学习MATLAB语言的点运算(3)学习复杂运算2、实验内容(1)基本矩阵运算1)创建数值矩阵>>a=[1 2 3;4 5 6;7 8 9];>> aa =1 2 34 5 67 8 9>> a(3,2)ans =8>> a(:,1)ans =147>>t=0:10t =Columns 1 through 100 1 2 3 4 5 6 7 8 9 Column 1110>> u=0:0.1:10u =Columns 1 through 60 0.1000 0.2000 0.3000 0.4000 0.5000 Columns 7 through 120.6000 0.7000 0.8000 0.9000 1.0000 1.1000 Columns 13 through 181.2000 1.3000 1.4000 1.5000 1.6000 1.7000 Columns 19 through 241.8000 1.90002.0000 2.1000 2.2000 2.3000 Columns 25 through 302.4000 2.5000 2.6000 2.7000 2.8000 2.9000 Columns 31 through 363.0000 3.1000 3.2000 3.3000 3.4000 3.5000 Columns 37 through 423.6000 3.7000 3.8000 3.90004.0000 4.1000Columns 43 through 484.2000 4.3000 4.4000 4.5000 4.6000 4.7000 Columns 49 through 544.8000 4.90005.0000 5.1000 5.2000 5.3000 Columns 55 through 605.4000 5.5000 5.6000 5.7000 5.8000 5.9000 Columns 61 through 666.0000 6.1000 6.2000 6.3000 6.4000 6.5000 Columns 67 through 726.6000 6.7000 6.8000 6.90007.0000 7.1000 Columns 73 through 787.2000 7.3000 7.4000 7.5000 7.6000 7.7000 Columns 79 through 847.8000 7.9000 8.0000 8.1000 8.2000 8.3000 Columns 85 through 908.4000 8.5000 8.6000 8.7000 8.8000 8.9000 Columns 91 through 969.0000 9.1000 9.2000 9.3000 9.4000 9.5000 Columns 97 through 1019.6000 9.7000 9.8000 9.9000 10.0000>>a(:,3)=[2;3;4]a =1 2 24 5 37 8 4>>b=[1 1+2i;3+4i 3]b =1.0000 1.0000 +2.0000i3.0000 +4.0000i 3.00002)创建特殊矩阵>> a=ones(3,3)a =1 1 11 1 11 1 1>> b=zeros(2,2)b =0 00 0>> c=eye(4)c =1 0 0 00 1 0 00 0 1 00 0 0 1>> magic(4)ans =16 2 3 135 11 10 89 7 6 124 14 15 13)练习矩阵运算>>a=[0 1 0;0 0 1;-6 -11 -6];>> b=[1 2;3 4;5 6];>> c=[1 1 0;0 1 1];>> v1=c*av1 =0 1 1-6 -11 -5>> v2=a*bv2 =3 45 6-69 -92>> v3=c*a*bv3 =8 10-64 -86>> v4=b*cv4 =1 3 23 7 45 11 6>> v5=c*bv5 =4 68 10>> a^2ans =0 0 1-6 -11 -636 60 25>> a^(1/2)ans =0.0000 + 0.4894i -0.0000 - 0.5588i -0.0000 - 0.0482i0.0000 + 0.2891i 0.0000 + 1.0195i -0.0000 - 0.2696i0.0000 + 1.6179i 0.0000 + 3.2553i 0.0000 + 2.6374i >> a1=a+b*ca1 =1 4 23 7 5-1 0 0>> a2=c*b-a(1:2,1:2)a2 =4 58 10>> a3=a(1:2,2:3)+c*ba3 =5 68 11>> ar=c/aar =-0.8333 -1.0000 -0.16671.0000 1.0000 0 >> al=a\bal =-5.6667 -8.66671.00002.00003.00004.00004)练习矩阵特征运算>> a'ans =0 0 -61 0 -110 1 -6>> inv(a)ans =-1.8333 -1.0000 -0.16671.0000 0 00 1.0000 0 >> diag(a)ans =-6>> tril(a)ans =0 0 00 0 0-6 -11 -6>> inv(a)ans =-1.8333 -1.0000 -0.16671.0000 0 00 1.0000 0>> poly(a)ans =1.0000 6.0000 11.0000 6.0000>> rank(a)ans =3>> det(a)ans =-6>> trace(a)ans =-6>> eig(a)ans =-1.0000-2.0000-3.0000(2)MATLAB语言点的运算1)练习点乘与点除>>a1=[1 2;3 4];>> a2=0.2*a1;>> [a1 a2]ans =1.00002.0000 0.2000 0.40003.00004.0000 0.6000 0.8000>> [a1.*a2 a1./a2]ans =0.2000 0.8000 5.0000 5.00001.8000 3.2000 5.0000 5.00002)由点运算完成标量函数运算与作图>>t=0:2*pi/180:2*pit =Columns 1 through 60 0.0349 0.0698 0.1047 0.1396 0.1745Columns 7 through 120.2094 0.2443 0.2793 0.3142 0.3491 0.3840Columns 13 through 180.4189 0.4538 0.4887 0.5236 0.5585 0.5934Columns 19 through 240.6283 0.6632 0.6981 0.7330 0.7679 0.8029Columns 25 through 300.8378 0.8727 0.9076 0.9425 0.9774 1.0123 Columns 31 through 361.0472 1.0821 1.1170 1.1519 1.1868 1.2217 Columns 37 through 421.2566 1.2915 1.3265 1.3614 1.3963 1.4312 Columns 43 through 481.4661 1.5010 1.5359 1.5708 1.6057 1.6406 Columns 49 through 541.6755 1.7104 1.7453 1.7802 1.8151 1.8500 Columns 55 through 601.8850 1.9199 1.9548 1.98972.0246 2.0595 Columns 61 through 662.0944 2.1293 2.1642 2.1991 2.2340 2.2689 Columns 67 through 722.3038 2.3387 2.3736 2.4086 2.4435 2.4784 Columns 73 through 782.5133 2.5482 2.5831 2.6180 2.6529 2.6878 Columns 79 through 842.7227 2.7576 2.7925 2.8274 2.8623 2.8972 Columns 85 through 902.9322 2.96713.0020 3.0369 3.0718 3.1067 Columns 91 through 963.1416 3.1765 3.2114 3.2463 3.2812 3.3161 Columns 97 through 1023.3510 3.3859 3.4208 3.4558 3.4907 3.5256 Columns 103 through 1083.5605 3.5954 3.6303 3.6652 3.7001 3.7350 Columns 109 through 1143.7699 3.8048 3.8397 3.8746 3.9095 3.9444 Columns 115 through 1203.97944.0143 4.0492 4.0841 4.1190 4.1539 Columns 121 through 1264.1888 4.2237 4.2586 4.2935 4.3284 4.3633 Columns 127 through 1324.3982 4.4331 4.4680 4.5029 4.5379 4.5728 Columns 133 through 1384.6077 4.6426 4.6775 4.7124 4.7473 4.7822 Columns 139 through 1444.8171 4.8520 4.8869 4.9218 4.9567 4.9916 Columns 145 through 1505.0265 5.0615 5.0964 5.1313 5.1662 5.2011 Columns 151 through 1565.2360 5.2709 5.3058 5.3407 5.3756 5.4105 Columns 157 through 1625.4454 5.4803 5.5152 5.5501 5.5851 5.6200Columns 163 through 1685.6549 5.6898 5.7247 5.7596 5.7945 5.8294Columns 169 through 1745.8643 5.8992 5.9341 5.96906.0039 6.0388Columns 175 through 1806.0737 6.1087 6.1436 6.1785 6.2134 6.2483Column 1816.2832>>y1=sin(t)y1 =Columns 1 through 60 0.0349 0.0698 0.1045 0.1392 0.1736Columns 7 through 120.2079 0.2419 0.2756 0.3090 0.3420 0.3746Columns 13 through 180.4067 0.4384 0.4695 0.5000 0.5299 0.5592Columns 19 through 240.5878 0.6157 0.6428 0.6691 0.6947 0.7193Columns 25 through 300.7431 0.7660 0.7880 0.8090 0.8290 0.8480Columns 31 through 360.8660 0.8829 0.8988 0.9135 0.9272 0.9397Columns 37 through 420.9511 0.9613 0.9703 0.9781 0.9848 0.9903Columns 43 through 480.9945 0.9976 0.9994 1.0000 0.9994 0.9976Columns 49 through 540.9945 0.9903 0.9848 0.9781 0.9703 0.9613Columns 55 through 600.9511 0.9397 0.9272 0.9135 0.8988 0.8829Columns 61 through 660.8660 0.8480 0.8290 0.8090 0.7880 0.7660Columns 67 through 720.7431 0.7193 0.6947 0.6691 0.6428 0.6157Columns 73 through 780.5878 0.5592 0.5299 0.5000 0.4695 0.4384Columns 79 through 840.4067 0.3746 0.3420 0.3090 0.2756 0.2419Columns 85 through 900.2079 0.1736 0.1392 0.1045 0.0698 0.0349Columns 91 through 960.0000 -0.0349 -0.0698 -0.1045 -0.1392 -0.1736Columns 97 through 102-0.2079 -0.2419 -0.2756 -0.3090 -0.3420 -0.3746 Columns 103 through 108-0.4067 -0.4384 -0.4695 -0.5000 -0.5299 -0.5592 Columns 109 through 114-0.5878 -0.6157 -0.6428 -0.6691 -0.6947 -0.7193 Columns 115 through 120-0.7431 -0.7660 -0.7880 -0.8090 -0.8290 -0.8480 Columns 121 through 126-0.8660 -0.8829 -0.8988 -0.9135 -0.9272 -0.9397 Columns 127 through 132-0.9511 -0.9613 -0.9703 -0.9781 -0.9848 -0.9903 Columns 133 through 138-0.9945 -0.9976 -0.9994 -1.0000 -0.9994 -0.9976 Columns 139 through 144-0.9945 -0.9903 -0.9848 -0.9781 -0.9703 -0.9613 Columns 145 through 150-0.9511 -0.9397 -0.9272 -0.9135 -0.8988 -0.8829 Columns 151 through 156-0.8660 -0.8480 -0.8290 -0.8090 -0.7880 -0.7660 Columns 157 through 162-0.7431 -0.7193 -0.6947 -0.6691 -0.6428 -0.6157 Columns 163 through 168-0.5878 -0.5592 -0.5299 -0.5000 -0.4695 -0.4384 Columns 169 through 174-0.4067 -0.3746 -0.3420 -0.3090 -0.2756 -0.2419 Columns 175 through 180-0.2079 -0.1736 -0.1392 -0.1045 -0.0698 -0.0349 Column 181-0.0000>> y2=cos(t)y2 =Columns 1 through 61.0000 0.9994 0.9976 0.9945 0.9903 0.9848 Columns 7 through 120.9781 0.9703 0.9613 0.9511 0.9397 0.9272 Columns 13 through 180.9135 0.8988 0.8829 0.8660 0.8480 0.8290 Columns 19 through 240.8090 0.7880 0.7660 0.7431 0.7193 0.6947 Columns 25 through 300.6691 0.6428 0.6157 0.5878 0.5592 0.5299 Columns 31 through 360.5000 0.4695 0.4384 0.4067 0.3746 0.3420 Columns 37 through 420.3090 0.2756 0.2419 0.2079 0.1736 0.1392 Columns 43 through 480.1045 0.0698 0.0349 0.0000 -0.0349 -0.0698 Columns 49 through 54-0.1045 -0.1392 -0.1736 -0.2079 -0.2419 -0.2756 Columns 55 through 60-0.3090 -0.3420 -0.3746 -0.4067 -0.4384 -0.4695 Columns 61 through 66-0.5000 -0.5299 -0.5592 -0.5878 -0.6157 -0.6428 Columns 67 through 72-0.6691 -0.6947 -0.7193 -0.7431 -0.7660 -0.7880 Columns 73 through 78-0.8090 -0.8290 -0.8480 -0.8660 -0.8829 -0.8988 Columns 79 through 84-0.9135 -0.9272 -0.9397 -0.9511 -0.9613 -0.9703 Columns 85 through 90-0.9781 -0.9848 -0.9903 -0.9945 -0.9976 -0.9994 Columns 91 through 96-1.0000 -0.9994 -0.9976 -0.9945 -0.9903 -0.9848 Columns 97 through 102-0.9781 -0.9703 -0.9613 -0.9511 -0.9397 -0.9272 Columns 103 through 108-0.9135 -0.8988 -0.8829 -0.8660 -0.8480 -0.8290 Columns 109 through 114-0.8090 -0.7880 -0.7660 -0.7431 -0.7193 -0.6947 Columns 115 through 120-0.6691 -0.6428 -0.6157 -0.5878 -0.5592 -0.5299 Columns 121 through 126-0.5000 -0.4695 -0.4384 -0.4067 -0.3746 -0.3420 Columns 127 through 132-0.3090 -0.2756 -0.2419 -0.2079 -0.1736 -0.1392 Columns 133 through 138-0.1045 -0.0698 -0.0349 -0.0000 0.0349 0.0698 Columns 139 through 1440.1045 0.1392 0.1736 0.2079 0.2419 0.2756 Columns 145 through 1500.3090 0.3420 0.3746 0.4067 0.4384 0.4695 Columns 151 through 1560.5000 0.5299 0.5592 0.5878 0.6157 0.6428 Columns 157 through 1620.6691 0.6947 0.7193 0.7431 0.7660 0.7880 Columns 163 through 1680.8090 0.8290 0.8480 0.8660 0.8829 0.8988 Columns 169 through 1740.9135 0.9272 0.9397 0.9511 0.9613 0.9703 Columns 175 through 1800.9781 0.9848 0.9903 0.9945 0.9976 0.9994 Column 1811.0000>>y=y1.*y2y =Columns 1 through 60 0.0349 0.0696 0.1040 0.1378 0.1710 Columns 7 through 120.2034 0.2347 0.2650 0.2939 0.3214 0.3473 Columns 13 through 180.3716 0.3940 0.4145 0.4330 0.4494 0.4636 Columns 19 through 240.4755 0.4851 0.4924 0.4973 0.4997 0.4997 Columns 25 through 300.4973 0.4924 0.4851 0.4755 0.4636 0.4494 Columns 31 through 360.4330 0.4145 0.3940 0.3716 0.3473 0.3214 Columns 37 through 420.2939 0.2650 0.2347 0.2034 0.1710 0.1378 Columns 43 through 480.1040 0.0696 0.0349 0.0000 -0.0349 -0.0696 Columns 49 through 54-0.1040 -0.1378 -0.1710 -0.2034 -0.2347 -0.2650 Columns 55 through 60-0.2939 -0.3214 -0.3473 -0.3716 -0.3940 -0.4145 Columns 61 through 66-0.4330 -0.4494 -0.4636 -0.4755 -0.4851 -0.4924 Columns 67 through 72-0.4973 -0.4997 -0.4997 -0.4973 -0.4924 -0.4851 Columns 73 through 78-0.4755 -0.4636 -0.4494 -0.4330 -0.4145 -0.3940 Columns 79 through 84-0.3716 -0.3473 -0.3214 -0.2939 -0.2650 -0.2347 Columns 85 through 90-0.2034 -0.1710 -0.1378 -0.1040 -0.0696 -0.0349 Columns 91 through 96-0.0000 0.0349 0.0696 0.1040 0.1378 0.1710 Columns 97 through 1020.2034 0.2347 0.2650 0.2939 0.3214 0.3473 Columns 103 through 1080.3716 0.3940 0.4145 0.4330 0.4494 0.4636 Columns 109 through 1140.4755 0.4851 0.4924 0.4973 0.4997 0.4997 Columns 115 through 1200.4973 0.4924 0.4851 0.4755 0.4636 0.4494 Columns 121 through 1260.4330 0.4145 0.3940 0.3716 0.3473 0.3214 Columns 127 through 1320.2939 0.2650 0.2347 0.2034 0.1710 0.1378 Columns 133 through 1380.1040 0.0696 0.0349 0.0000 -0.0349 -0.0696 Columns 139 through 144-0.1040 -0.1378 -0.1710 -0.2034 -0.2347 -0.2650 Columns 145 through 150-0.2939 -0.3214 -0.3473 -0.3716 -0.3940 -0.4145 Columns 151 through 156-0.4330 -0.4494 -0.4636 -0.4755 -0.4851 -0.4924 Columns 157 through 162-0.4973 -0.4997 -0.4997 -0.4973 -0.4924 -0.4851 Columns 163 through 168-0.4755 -0.4636 -0.4494 -0.4330 -0.4145 -0.3940 Columns 169 through 174-0.3716 -0.3473 -0.3214 -0.2939 -0.2650 -0.2347 Columns 175 through 180-0.2034 -0.1710 -0.1378 -0.1040 -0.0696 -0.0349 Column 181-0.0000>> plot(t,[y' y1' y2']);>> w=0.1:0.1:2w =Columns 1 through 60.1000 0.2000 0.3000 0.4000 0.5000 0.6000 Columns 7 through 120.7000 0.8000 0.9000 1.0000 1.1000 1.2000 Columns 13 through 181.3000 1.4000 1.5000 1.6000 1.7000 1.8000 Columns 19 through 201.90002.0000>> g1=(1+0.5*w*i)/(1-0.5*w*i)g1 =-1.0296>>g2=(1+0.5*w*i)./(1-0.5*w*i)g2 =Columns 1 through 6-1.5000 -1.2222 -1.1429 -1.1053 -1.0833 -1.0690 Columns 7 through 12-1.0588 -1.0513 -1.0455 -1.0408 -1.0370 -1.0339 Columns 13 through 18-1.0313 -1.0290 -1.0270 -1.0253 -1.0238 -1.0225 Columns 19 through 20-1.0213 -1.0202>>plot(g2)>>xlabel('real g2(w)')>>ylabel('imag g2(w)')>>axis('square')(3)多项式运算1)建立多项式向量>>ap=[1 3 3 1]a p=1 3 3 1>> b=[-1 -2 -3]b =-1 -2 -3>>bp=poly(b)bp =1 6 11 62)练习多项式乘与求根>>p=conv(ap,bp)p =1 9 32 58 57 29 6 >> roots(p)ans =-3.0000-2.0000-1.0003-1.0000 + 0.0003i-1.0000 - 0.0003i-0.99973)练习多项式运算>>a=[1 2 3 4]a =1 2 3 4>> b=[1 -1]b =1-1>>c=a+[zeros(1,length(a)-length(b)) b]c =1 2 4 3>>poly2str(c,'x')ans =x^3 + 2 x^2 + 4 x + 3>> polyvalm(a,3)ans =58三、MATLAB的符号运算1、实验目的(1)学习MATLAB语言的基本符号运算(2)学习MATLAB语言的矩阵符号运算2、实验内容(1)基本符号运算1)符号微分、积分>>syms t>> f1=sin(2*t)f1 =sin(2*t)>> df1=diff(f1)df1 =2*cos(2*t)>> if1=int(f1)if1 =-1/2*cos(2*t)2)泰勒级数展开>>tf1=taylor(f1,8)tf1 =2*t-4/3*t^3+4/15*t^5-8/315*t^73)符号代数方程求解>>syms a b c x>> f=a*x^2+b*x+cf =a*x^2+b*x+c>> ef=solve(f)ef =[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))][ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]4)符号微分方程求解>>f='D2x+2*Dx+10*x=0'f =D2x+2*Dx+10*x=0>> g='Dx(0)=1,x(0)=0'g =Dx(0)=1,x(0)=0>> dfg=dsolve(f,g)dfg =1/3*exp(-t)*sin(3*t)5)积分变换>>syms t>>f1=exp(-2*t)*sin(5*t)>>F1=laplace(f1)F1=5/((s+2)^2+25)>>syms s>>F2=1/(s+2)^2>>f2=ilaplace(F2)>>f2=t*exp(-2*t)>>syms t>>f1=sin(t)>>Fz1=ztrans(f1)Fz1=-z*sin(1)/(2*z*cos(1)-z^2-1)>>syms z>>Fz2=z/(z-2)+z/(z-3)>>fz2=iztrans(Fz2)fz2=2^n+3^n6)计算精度>>g=sym('[pi/2 2;3 exp(1)]')g=[pi/2, 2][ 3,exp(1)]>>g1=vpa(g)g1=[1.570796326794897...,2. ][ 3.,2.718281828459045...] >>digitsDigits=32>>g1=vpa(g,5)g1=[1.5708, 2.][ 3.,2.7183](2)符号矩阵运算1)创建与修改符号矩阵>>G1=sym('[1/(s+1),s/(s+1)/(s+2);1/(s+1)/(s+2),s/(s+2)]') G1 =[ 1/(s+1), s/(s+1)/(s+2)][ 1/(s+1)/(s+2), s/(s+2)]>> G2=subs(G1,G1(2,2),'0')G2 =[ 1/(s+1), s/(s+1)/(s+2)][ 1/(s+1)/(s+2), 0]>> G3=G1(1,1)G3 =1/(s+1)2)符号线性代数>> a=[1 2 3 4];>> inv aans =0.0103>> det aans =97>> eig aans =97>> transpose aans =a3)常规符号运算>>syms s>> d1=1/(s+1);d2=1/(s+2);d=d1*d2d =1/(s+1)/(s+2)>> ad=sym('[s+1 s;0 s+2]');G=d*adG =[ 1/(s+2), s/(s+1)/(s+2)][ 0, 1/(s+1)]>> n1=[1 2 3 4 5];n2=[1 2 3];>> p1=poly2sym(n1);p2=poly2sym(n2);>> p=p1+p2p =x^4+2*x^3+4*x^2+6*x+8>> pn=sym2poly(p)pn =1 2 4 6 8>> a=[0 1;-2 -3];>> gcha=poly2sym(poly(eig(a)))gcha =x^2+3*x+2>> sym sans =s>> mg=s*eye(2)-amg =[ s, -1][ 2, s+3]>> geig=transpose(eig(mg))geig =[ s+1, s+2]>> gdet=det(mg)gdet =s^2+3*s+2>> groot=transpose(solve(gdet))groot =[ -2, -1]>> G=inv(mg)G =[ (s+3)/(s^2+3*s+2), 1/(s^2+3*s+2)][ -2/(s^2+3*s+2), s/(s^2+3*s+2)]>> g11=ilaplace(G(1,1));>> g12=ilaplace(G(1,2));>> g21=ilaplace(G(2,1));>> g22=ilaplace(G(2,2));>> g=[g11 g12;g21 g22]g =[ -exp(-2*t)+2*exp(-t), exp(-t)-exp(-2*t)] [ -2*exp(-t)+2*exp(-2*t), 2*exp(-2*t)-exp(-t)]。
实验一:MATLAB语言平台与SIMULINK工具箱一、实验目的:1.学习了解MATLAB语言环境;2.练习MATLAB命令;4.掌握SIMULINK工具箱的应用。
二、实验要求:1.实验内容(1)学习了解MATLAB语言环境;(2)练习MATLAB命令的基本操作;(3)掌握SIMULINK仿真环境的使用方法;(4) 掌握线性系统仿真常用基本模块的用法2.要求按照实验文档的要求与步骤完成实验,撰写实验报告。
三、实验基本知识:1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器、文件和搜索路径浏览器。
2.掌握MATLAB常用命令3.了解SIMULINK模块库中各子模块基本功能四、实验内容:1.学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)help eyeEYE Identity matrix.EYE(N) is the N-by-N identity matrix.EYE(M,N) or EYE([M,N]) is an M-by-N matrix with 1's onthe diagonal and zeros elsewhere.EYE(SIZE(A)) is the same size as A.EYE with no arguments is the scalar 1.EYE(M,N,CLASSNAME) or EYE([M,N],CLASSNAME) is an M-by-N matrix with 1'sof class CLASSNAME on the diagonal and zeros elsewhere.Example:x = eye(2,3,'int8');See also speye, ones, zeros, rand, randn.Reference page in Help browserdoc eyeA=eye(3)A=1 0 00 1 00 0 12.任意创建3个变量,分别为数值、矩阵、字符串,保存到mydat.mat文件,再把my_data.mat文件中的变量读取到MatLab工作空间内;查找已创建变量的信息,删除变量;学习使用clc、clear,观察command window、command history和workspace等窗口的变化结果。
实验一MATLAB语言环境的使用
一、实验目的:
1.了解MATLAB的安装;
2.掌握MATLAB的开发环境;
3.熟悉MATLAB文件编辑器。
二、实验装置:
计算机
三、实验内容:
1.熟悉命令窗口的功能命令窗口的参数设置
(1)在命令窗口中,直接键入命令或函数,系统自动反馈信息或结果。
如键入
18+(5*sin(pi/6))/(2+cos(pi/6)),按Enter键,即可得到计算结果:ans=18.8723 。
(2)若想修改上式,不必逐一重新输入,只需按一次↑键,调入已经输入的语句加以修
改即可。
(3)使用clc命令清楚命令窗口显示内容,但不清除工作空间中的变量。
(4)在命令窗口中,有许多功能键的使用方法,这里不祥述,具体内容参见教材。
2.熟悉命令窗口的参数设置
(1)matlab的命令窗口的参数设置如图1所示。
Text display(文本显示),其中Numeric
format(数据格式),Numeric display(数据显示方式)可以在loose和compact之间选择,选择loose,命令窗口中的命令和结果都隔行显示,而选择compact则以紧凑方式显示。
(2)display(显示参数),其中Echo on 控制M文件的运行中M文件的内部命令是否在命
令窗口中显示:Wrap line(自动换行)选择该项,输入输出行根据命令窗口的宽度自动换行,否则,无论输入输出行的长度是多少都显示在第一行宽度不够时出现滚动条。
(3)在树状展开结构Command window项,可以设置Fonts&Colors(字体和颜色),如图
2所示。
图1 命令窗口设置窗口
图2 命令窗口-字体和颜色设置窗口
3.熟悉和掌握命令历史窗口的功能;Command History (命令历史)窗口显示已执行过的命令。
4.熟悉当前路径窗口和MATLAB 的收索路径的作用。
5. 在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。
(1)(365-52 2-70) 3
(2)>>area=pi*2.5^2
(3)已知x=3,y=4,在MATLAB 中求z :
()
23
2y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。
m1= ⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡11514412679810115133216 执行以下命令
>>m1( 2 , 3 )
>>m1( 11 )
>>m1( : , 3 )
>>m1( 2 : 3 , 1 : 3 )
>>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1)
(5)执行命令>>help abs
查看函数abs 的用法及用途,计算abs( 3 + 4i )
(6)执行命令
>>x=0:0.1:6*pi;
>>y=5*sin(x);
>>plot(x,y)
(6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。
四、实验要求:
1.在MATLAB 命令窗口键入5*cos(2*pi/8)/sin(pi/9)+2,按回车键,运行其结果。
2.在MATLAB 命令窗口键入5cos(2pi)/sin(pi/9)+2,按回车键,观察运行结果。
3.将字体设置为24号,颜色设置为蓝色,要求写出操作过程(可通过图示演示操作过程)。
4.将当前路径设置为c:\matlabp5\work\demo,如何操作,写出操作过程(同上)。
5.MATLAB操作桌面有几个窗口?各个窗口的作用分别是什么?公式1。