1 matlab 简介
MATLAB简介
logspace 对数等分的行矢量
Logspace(x1,x2,n)生成从10x1到10x2包含n 个数据的矢量 >> logspace(1,3,3) >> magic(3) ans = ans = 10 100 1000 8 1 6 >> cell(3) 3 5 7 >> eye(3) ans = 4 9 2 ans = [] [] [] 1 0 0 Magic(n)为元素1到n^2 [] [] [] 0 1 0 之间,行、列、对角线 [] [] [] 0 0 1 的和都相等的n维矩阵
例1:
0 5 cos 47 例2:计算表达式的值 并将结果赋给变量x 1 7 2i
4、表达式从左至右、指数最先,乘除加减、括号提前。
>>6+4*3^2 ans = >> x=(5+cos(47*pi/180))/(1+sqrt(7)-2i) 42
例9:演示内带程序 >>ballode %自由下落小球与地面非弹性碰撞的运动轨迹 >>demo %演示Matlab的基本功能
2、数据格式:
① 10的幂为e加上正负数字: 1.062e-20 6.022e23 ② 数字后直接加 i 或 j表示虚数 :-3.14i 5+3i
3、算符
算术运算算符: + - * / ^ ( ) sqrt( ) 关系运算算符:<、>、 <=、 ==、 >=、 ~= 逻辑运算算符:与 &、或│、非 ~
例3:输入10个学生的成绩并对成绩按升序排序。 在指令窗口输入命令: g=input('请输入学生成绩:') sort(g) 请输入学生成绩: [65 78 96 98 91 84 79 83 74 81]
第一章 Matlab简介
~=
三峡大学理学院 杜廷松
它们用于比较两个元素的大小关系,结果是1表明为 它们用于比较两个元素的大小关系,结果是 表明为 结果是0表明为假 表明为假. 真,结果是 表明为假
3.逻辑运算符 逻辑运算符
&与
| 或
~ 非
它们用于元素或矩阵的逻辑运算. 它们用于元素或矩阵的逻辑运算
三峡大学理学院 杜廷松
20
三峡大学理学院 杜廷松
10
(2) 函数 函数zeros和ones分别产生 和1矩阵 例如 分别产生0和 矩阵 矩阵.例如 和 分别产生 zeros(n) 为阶方阵 zeros(m,n) 为阶矩阵 zeros(size(A)) 为与矩阵 同阶的矩阵 为与矩阵A同阶的矩阵 函数ones与此类同 与此类同. 函数 与此类同 (3) 函数 函数rand(m,n)产生阶随机数矩阵 产生阶随机数矩阵. 产生阶随机数矩阵 (4) 函数 函数diag(A),tril(A),triu(A)分别取矩阵 的 对角、 分别取矩阵A的 对角、 , , 分别取矩阵 下三角、上三角部分.其中 三角矩阵包含对角部分. 其中, 下三角、上三角部分 其中,三角矩阵包含对角部分
三峡大学理学院 杜廷松
22
3.矩阵的乘法 3.矩阵的乘法 矩阵的乘、 在Matlab中,矩阵的乘、除、乘方及各种 中 矩阵的乘 函数运算等有两种方式: 函数运算等有两种方式: (1)矩阵运算; 矩阵运算; 矩阵运算 (2)元素运算(.运算) 元素运算( 运算) 元素运算 运算 矩阵乘(*): 两个同维相同的矩阵相乘 两个同维相同的矩阵相乘. 矩阵乘 元素乘(.*): 两个同维的矩阵相应元素 元素乘 相乘. 相乘
二 矩阵运算
1.矩阵转置 矩阵转置
>> x=[1,2,3]' >> A=[1 2 3 456 7 8 9]; >> B=A'
matlab简介
MATLAB简介一.MATLAB的特点MATLAB(Matrix Laboratory)是美国Math Works软件公司于1982年推出的一套用于工程和科学计算的可视化工具软件。
以矩阵运算为基础,把计算、可视化、程序设计融合到了一个简单易用的交互式工作环境中。
在这里可以实现工程计算、算法研究、符号运算、建模和仿真、原型开发、数据分析及可视化、科学和工程绘图、应用程序设计等等功能。
它现在已经成为世界上应用最广泛的工程计算软件。
以下为其几个特色:•功能强的数值运算 - 在MATLAB环境中,有超过500种数学、统计、科学及工程方面的函数可使用,函数的标示自然,使得问题和解答像数学式子一般简单明了,让使用者可全力发挥在解题方面,而非浪费在电脑操作上。
•先进的资料视觉化功能 - MATLAB的物件导向图形架构让使用者可执行视觉数据分,并制作高品质的图形,完成科学性或工程性图文并茂的文章。
•高阶但简单的程式环境 - 做为一种直译式的程式语言,MATLAB容许使用者在短时间内写完程式,所花的时间约为用 FORTRAN 或 C 的几分之一,而且不需要编译(compile)及联结 (link) 即能执行,同时包含了更多及更容易使用的内建功能。
•开放及可延伸的架构 - MATLAB容许使用者接触它大多数的数学原使码,检视运算法,更改现存函数,甚至加入自己的函数使 MATLAB成为使用者所须要的环境。
•丰富的程式工具箱 - MATLAB的程式工具箱融合了套装前软体的优点,与一个灵活的开放但容易操作之环境,这些工具箱提供了使用者在特别应用领域所需之许多函数。
现有工具箱有:符号运算(利用Maple V的计算核心执行)、影像处理、统计分析、讯号处理、神经网路、模拟分析、控制系统、即时控制、系统确认、强建控制、弧线分析、最佳化、模糊逻辑、mu分析及合成、化学计量分析。
MATLAB主要包括主包、Simulink和工具箱三大部分组成。
第2章 MATLAB的基础知识
a=[1 2 1;2 2 1;2 1 2]; b=[1;2;3]; a/b %矩阵右除
运行程序,得到结果:
??? Error using ==> mrdivide Matrix dimensions must agree.
重新输入语句
a\b
%矩阵左除 ans = 1.0000 -0.3333 0.6667
运行程序,得到结果:
c= 0 0 1 1 1 0
说明 对于复数运算,“= =”与“~ =”运算,既比较实部, 又比较虚部。而其他运算仅比较实部。关系运算同样也可用于 常量与矩阵的比较,在这种情况下,该常量与矩阵的每一个元 素进行比较,其结果是一个与矩阵同维数的0、1矩阵。
逻辑操作符
逻辑操作符 说 明 相对应函数
-0.1667 0 0
(3)矩阵特征值运算
矩阵条件数cond( ) 矩阵的秩rank() 矩阵特征值eig ( )
矩阵范数norm( ) 矩阵的迹trace ( ) 矩阵奇异值svd ( )
例2-7 分别计算矩阵a的有关特征参数。输入以下 MATLAB语句
a=[1 2 3;4 5 6;7 8 0] [cond(a),norm(a),rank(a)]
2.MATLAB工作环境
图形窗口“Figure”
M文件窗口
3.MATLAB的M文件
所谓M文件,就是用户把要实现的命令写在一个 以.m为扩展名的文件中
M文件有两种格式(统称为M文件) 函数式M文件 程序式M文件 程序式M文件用于把很多需要在命令窗口输入的命 令放在一起,就是命令的简单叠加 函数式M文件用于把重复的程序段封装成函数供用 户调用。
&
|
逻辑与
逻辑或
and(a,b)
MATLAB简介
3、矩阵运算
基本算术运算 、-( *(乘 /(右除 右除) 左除) +(加)、-(减)、*(乘)、/(右除)、\(左除)、 ^(乘方 乘方) ^(乘方) • 运算是在矩阵意义下进行的,单个数据的算术 运算是在矩阵意义下进行的, 运算只是一种特例。 运算只是一种特例。 • 加减运算允许参与运算的两矩阵之一是标量。 加减运算允许参与运算的两矩阵之一是标量。 标量与矩阵的所有元素分别进行加减操作。 标量与矩阵的所有元素分别进行加减操作。 • 标量可与任何矩阵相乘。 标量可与任何矩阵相乘。
2、函数文件: 函数文件:
在函数文件中,定义了用户所需要的函数, 在函数文件中,定义了用户所需要的函数, 当某些程序使用该函数时即可调用该函数。 当某些程序使用该函数时即可调用该函数。 MATLAB函数文件的组成: MATLAB函数文件的组成: 函数文件的组成 文件第一行: ★文件第一行:函数定义行
常用的矩阵生成函数有: 常用的矩阵生成函数有: eye 产生单位矩阵 产生0 zeros(m,n) 产生0矩阵 ones(m,n) 产生幺矩阵 rand(m,n) 产生0~1间均匀分布的随机矩阵 产生0 产生均值为0 方差为1 randn 产生均值为0,方差为1的标准正 态分布随机矩阵。 态分布随机矩阵。
function[返回参数1 返回参数2 function[返回参数1,返回参数2,……]= 返回参数 ]= 函数名(输入参数1 输入参数2 函数名(输入参数1,输入参数2,……) )
这一行的有无, 这一行的有无,是区分命令文件与函数文件 的重要标志; 的重要标志; 注意: 注意:函数文件保存的文件名应与用户定义 的函数名一致。 的函数名一致。
MATLAB简介 MATLAB简介
Matlab操作基础 一、Matlab操作基础
第1章 MATLAB简介
帮助演示
选择菜单Help中的“Demo”选项。 在帮助导航/浏览器窗口中选择“Demo”面板。 在命令窗口中输入“Demo”命令。
河北科技大学信息学院
27
1.6 SIMULINK简介
1.6.1 Simulink基本知识
Simulink模块库
在命令窗口输入simulink 或者单击工具栏中的 Simulink图标,打开 Simulink模块库窗口。
河北科技大学信息学院
16
MATLAB主窗口
工具栏
工具栏中各项的作用由左到右依次是: 新建一个M文件; 打开一个已有的M文件; 剪切; 复制; 粘贴; 撤销上一步操作; 恢复上一步操作; 打开Simulink仿真器; 打开用户界面设计窗口; 打开MATLAB帮助系统; 设置当前目录
河北科技大学信息学院
河北科技大学信息学院
3
河北科技大学信息学院
4
有用的网址
/products/m
atlab/
/ /
河北科技大学信息学院
5
1.2 MATLAB的特点
友好的工作平台和编程环境
河北科技大学信息学院
30
Logic and Bit Operations:逻辑和位操作模数块组
包含常用的逻辑运算(Logical Operator)和关系运算(Relation Operator)模块, 另外还有检测开区间(Interval Test)、动态检测开区间(Interval Test Dynamic)、组合逻辑(Combinatorial Logic)、与零比较 (Compare to Zero)、与常数比较(Compare to Constant)、 位置位(Bit Set)、位清零(Bit Clear)、逐位操作(Bitwise Operator)、移位运算(Shift Arithmetic)、位提取(Extract Bits)、检测递增(Detect Increase)、检测递减(Detect Decrease)、检测跳变(Detect Change)、检测正上升沿 (Detect Rise Positive)、检测负下降沿(Detect Fall Negative)、检测非负上升沿(Detect Rise Nonnegative)、检 测非负下降沿(Detect Fall Nonnegative)。
理论力学实验仿真工具MATLAB简介
6 常微分方程的数值求解 .......................................................................................... 10 6.1 Matlab中常微分方程的数值求解命令......................................................... 10 6.2 动力学微分方程的数值求解 ........................................................................11
+
-
*
.*
^
加
减
乘
数组乘法
乘方
.^
\
/
数组乘方
左除
右除
【例 1-3】矩阵运算。
>> a=[1 2;3 4];
>> b=[1 1;2 2];
MATLAB简介
数学软件MATLAB简介MATLAB是美国MathWorks公司于1984年推出的数学软件,它集数值分析、矩阵运算、信号处理和图形显示于一身,构成了一个使用方便、界面友好的用户环境。
在MATLAB窗口下,对于所要求解的问题,用户只需简单地列出数学表达式,其结果便以数值或图形的方式显示出来。
1.MATLAB的发展历程(1)20世纪70年代中期:Cleve Moler博士等人开发了EISPACK(求解特征值)和LINPACK(求解线性方程)的FORTRAN程序库(代表了当时矩阵计算软件的最高水平)。
(2)20世纪70年代后期,Cleve Moler(美国New Mexico大学计算机系主任)给学生讲授线性代数时,为学生编写了使用EISPACK 和LINPACK的接口程序,并以MARLAB来命名(Matrix Laboratory 两个单词的前3个字母组合,即矩阵实验室)。
以后数年中,MARLAB在多所大学里作为教学辅助软件使用,并作为免费软件广为流传。
(3)1983年春天,Cleve Moler到Stanford大学讲学,MATLAB 引起了工程师John Little的极大兴趣,他敏锐地觉察到MATLAB 在工程领域的广阔前景。
同年他和Cleve Moler、Steve Bangert一起,用C语言开发了第二代专业版MATLAB,使之同时具备了数值计算和数据图视化功能。
(4)1984年,Cleve Moler和John Little成立了MathWorks 公司,正式把MATLAB推向市场,并继续进行MATLAB的研究与开发。
1992年MathWorks公司推出MATLAB4.0。
1997年推出MATLAB5.0(真正32位计算)。
2000年推出MATLAB6.0版本,2003年推出MATLAB6.5。
2004年7月,推出MATLAB7.0版本,2007年推出MATLAB7.3。
经过多年的国际竞争,MATLAB已经占据了数值计算软件市场的主导地位,发展成为适合多学科、多种工作平台的功能强劲的大型数学软件。
1.Matlab简介&环境配置
(以上窗口在主窗口VIEW中根据需要组合使用)
M文件编辑器m-file 图形编辑窗figure(image图像) 用户图形界面设计窗gui 仿真模型编辑窗modle
(以上窗口在主菜单里file/new根据需要进行选择) 除此之外,字处理软件word与matlab有一个共 享界面,成为m-book,具体目录 matlab/notebook/pc/m_book
三.事件驱动逻辑/行为建模
(此章节略) 支持代码自动生成
MATLAB窗口及其功能
matlab主窗口 matlab中常用的用户界面窗口
命令窗口command window 历史命令窗口history command window 当前目录窗口current directory 起始面板窗口launch pad(展示拥有matlab 模块) 工作空间窗口workspace
②
matlab工具箱
围绕matlab这个核心有许多各个领域的工具箱可 以使用
应用数学 电子技术 图形图像 通讯 财会金融 类神经网络
③
matlab的编译器
matlab是一种高级语言,他能快速的讲高级语言 转化为c语言,结合matlab的矩阵数据结构,使 得matlab具有高速的运行速度. 支持一下编译环境:
WeiSteven
MATLAB简介&环境配置
MATLAB三大组成部分
matlab的基础层 matlab的仿真应用层 事件驱动逻辑/行为建模
MATLAB基础层(三个部分)
一.Matlab的基础层是整个系统的核心: ①
软件包matlab的组成
matlab语言 matlab 数学函数 matlab图像处理 matlab应用程序接口 matlab环境管理
第1章matlab基础知识
2.Edit菜单
Undo:取消输入。 Redo:重新输入。 Cut:剪切。 Copy:复制。 Paste:粘贴。 Paste to Workspace:将所选内容粘贴到 工作空间。 Select All:全选。 Delete:删除。 Find:寻找。 Find Files:在指定的文件或路径中寻找。 Clear Command Window:清除命令窗口 中的显示。 Clear Command History:清除命令历史窗 口中的显示。 Clear Workspace:清除工作空间变量。
在命令窗口中运行的命令,都会被保留在Command History(命令历史)窗口中,并且标明指令运行 的日期和时间。
1.3.5 Workspace
用于存储各种变量 和结果的内存空间 ,其中显示了工作 空间中所有变量的 名称、大小、最大 及最小值,可以对 变量进行观察、编 辑、保存和删除等 操作。
(2)直观
程序语言设计符合人们的思维习惯和数学表达方式。 丰富的二、三维图形及动画,对计算结果进行可视化 显示,给用户以直观的认识。 Simulink的仿真环境,省去了用户画图布线的烦恼。
(3)简单
丰富的函数库和工具箱,使用户不必进行具体代码的 编写,只需调用简单的函数指令,就可以执行任务操 作,解决问题。 所有数值对象都默认以双精度浮点类型数组存储,无 须用户进行数据类型的声明和转换。
Save Layout:保存当前布局。 Organize Layout:组织布局。 Command Window:显示或隐藏命令窗口。 Command History:显示或隐藏命令历史窗口。 Current Folder:显示或隐藏当前文件夹。 Workspace:显示或隐藏工作空间。 Help:显示或隐藏帮助。 Profiler:显示或隐藏性能分析器。 File Exchange:用于实现文件的切换。 Editor:显示或隐藏编辑器。 Figures:显示或隐藏图形显示窗口。 Web Browser:打开网络浏览器。 Variable Editor:用于显示变量编辑器。 Comparison Tool:打开对照工具。 Toolbars:显示或隐藏工具栏。 Titles:显示或隐藏窗体标题。
1第一章 Matlab语言概述
(Ⅰ)基础篇第一章 Matlab语言概述§1.语言特点MATLAB是Mathworks公司于20世纪80年代推出的数值计算软件。
得到了广泛的应用。
MATLAB的全称是Mateix Laboratory,意思是矩阵实验室。
它是以矩阵运算为基础的新一代程序语言。
MATLAB是集数学运算、图形处理、程序设计和系统建模为一体的著名编程语言软件,它具有功能强大、使用简单等优点,是进行科学研究和工程实践的有力工具。
与Fortran和C相比,MATLAB语句更简洁、明了,更加符合人们的思维习惯。
并且还具有良好的数据可视化功能。
MATLAB包括两部分:基本部分-主要指数据计算和可视化功能。
扩展部分-主要指工具箱。
§2 基本操作和简单语句输入1. 简单语句输入(简单计算器用法)例1:计算a⨯y÷⨯=(a = 2,b =3,c = 5 )+acbb[程序] 在命令窗口输入>> a=2;b=3;c=5;>> y=a*b+c*b/a 回车[输出] y =13.5000例2:计算64(tan3⨯+45)/2760cos[程序] >> (tan(pi/4)+cos(pi/3))*27^(1/3)/sqrt(64)ans =0.56252. 变量表达式数值(1)变量* matlab语句一般形式为:变量=表达式(或数),若变量和“=”省略,输出时自动建立“ans”默认变量。
* 对大小写敏感,如sqrt(平方根)对,而SQRT,Sqrt全错。
* 变量名第一个字符必须是英文字母,最多可包含31个字符,(含英文、数字、下连符)。
不得包含空格和标点。
* 系统遇到一个新变量名时,它会自动生成变量,若该变量早已存在,系统会自动更新内容。
表1-1 默认预定义变量(永久变量)例3:无穷大的使用>> x =1/0Warning: Divide by zero.x =Inf* 在MATLAB中这样的操作不会引起程序执行中断,只是在给出警告信息的同时,用一个特殊的符号Inf来表示。
Matlab基础介绍
•程序流程控制
• 顺序结构:Matlab 从上到下依次执行各语句, 该结构最简单。 A = input(‘输入A矩阵:’), disp(A) pause(), Ctrl+C, save, load • 循环结构 (1)for-end 循环 用于循环次数事先确定的,格式为 for ii=n:s:m 语句体 end s 为步长,可以为正数,负数或小数。
Matlab基础介绍
一 二 三 四 Matlab 简介 Matlab 的学习方法 Matlab 编程基础 Matlab 应用简例
一 Matlab 简介
• Matlab名字是由Matrix和Laboratory两个词的前三个字母 组合而成的,是由MathWorks公司于1984年推出的一套高 性能的数值计)编程运算与 人进行科学计算的思路和表达方式完全一致。不象学习 其)和C等那样难于掌握。 • 其基本元素是矩阵 。 • 具有强大的数值计算和图示能力。 • 具有丰富的工具箱(ToolBox)。 • 在高校中,Matlab已成为数学,信息,控制等诸多学科 有关课程的有效教学工具。 • 缺点:解释性语言,慢;程序不能脱离Matlab独立运行
• (1) plot(y) 当y为一向量时,以y的序号作为x轴,按 向量y的值绘制曲线。 • (2) plot(x,y) x,y均为向量时,以x向量作为X轴,向量 y作为Y轴绘制曲线。
• 注意:x和y种元素的个数必须相同!
3.8编程举例 •
例一:画出衰减震荡曲线 y e sin 3t t 及其包络线 y0 e 3 t的取值范围是 [0,4 ] 程序如下:
• (2) switch 语句 根据表达式的取值不同,分别执行不同的语句。 Switch 表达式 case 结果表1 语句块1 case 结果表2 语句块2 。。。 otherwise 语句块 end
Matlab软件介绍
龙格库塔方法应用实例之一
采用ode45求解如下方程:
y ' ( y 3t ) / t 2 , 且1 t 4 t0 1, y (t0 ) 2
odefun=@(t,y) (y+3*t)/t^2; %定义函数 tspan=[1 4];%求解区间 y0=-2;%初值 [t,y]=ode45(odefun,tspan,y0); plot(t,y)%作图 title('t^2y''=y+3t,y(1)=-2,1<t<4') legend('t^2y''=y+3t') xlabel('t') ylabel('y')
[x,y]=ode45('myfun02',[0 15],[25 2]); plot(x,y(:,1),'-',x,y(:,2),'*') %画出y(1),y(2)的函数图 legend('y1函数图','y2函数图')
Matlab工具箱扩展(Robotics Toolbox )
安装Robotics Toolbox for MATLAB 1、下载该工具箱 2、将压缩包解压到Toolbox文件夹下
拆分窗口:subplot命令
x=0.1:pi/15:2*pi 拆分窗口绘图实例。在同一窗口作出如下的函数图 y1=exp(x); x y log(x) y sin(x) y cos(x) y e y2=log(x); y3=sin(x); y4=cos(x); subplot(2,2,1); plot(x,y1); title('exp(x)'); subplot(2,2,2); plot(x,y2); title('ln(x)'); subplot(2,2,3); plot(x,y3); title('sin(x)'); subplot(2,2,4); plot(x,y4); title('cos(x)');
1.1 MATLAB简介
1.1.2 命令窗口
例 1.1.2 说明 (6)同一行如果输入多个命令,命令之间必须 要用逗号或分号隔开,逗号和分号所起的作用如前所 述. (7)一行输入未完,需要换行继续输入时,用 接续号“...”结束并按回车键换行. (8)以上提到的冒号、逗号、分号、单引号、 句点等标点符号都是英文输入法的标点符号,如果误 输入中文输入法的标点符号,就会导致语法错误.
1.1.1 MATLAB的特点和组成
工 具 箱 ( toolbox ) 包 括 生 物 信 息 (bioinformatics) 、系统控制(control systems) 、曲 线拟合(curve fitting) 、金融(financial) 、模糊逻辑 ( fuzzy logic ) 遗 传 算 法 和 直 接 搜 索 ( genetic 、 algorithm and direct search ) 图 像 处 理 ( image 、 processing) 、神经网络( neural networks) 、优化 (optimization) 、偏微分方程(partial differential equation ) 信 号 处 理 ( signal processing ) 样 条 、 、 (spline) 、统计(statistics) 、符号数学(symbolic math) 、小波(wavelets) 、仿真(simulation)等.
例 1.1.1 说明 (1)等号“=”是赋值号,将它右边的表达式的 值赋值给它左边的变量名. 运算符的优先级:圆括号→乘幂→乘除→加减. (2)pi 是 MATLAB 函数,表示圆周率 π. (3)sin 是 MATLAB 函数,在圆括号内输入弧 度制的数值,返回正弦值. (4)ans 是 MATLAB 函数,用在未把表达式赋 值给变量名的时候, 表示最近的回答, 此时 MATLAB 自动把结果存储在 ans.
一 MATLAB 开发环境简介
17
一 MATLAB 开发环境简介
5. 内存数组编辑器(Array Editor)
利用内存数组编辑器可以输入大数组。 首先,在指令窗口创建新变量。然后,在工作空间浏览 器中双击该变量,在数组编辑器( Array Editor )中打开变量。 在Numeric format中选择适当的数据类型,在size中输入行列 数,即可得到一个大规模数组。修改数组元素值,直到得到 所需数组。
指令窗口工作空间浏览器窗口历史指令窗口通过在指令窗口输入rtwintgtsetup回车可以完成执行该命令一matlab开发环境简介一matlab开发环境简介当前工作目录设定9matlab窗口图解历史指令窗口工作空间浏览器指令窗口当前目录浏览器后台开始按钮切换按钮一matlab开发环境简介10matlab常用窗口简介
一 MATLAB 开 发 环 境 简 介
MATLAB的特点 MATLAB运行环境 MATLAB安装 MATLAB启动 MATLAB窗口
帮助系统
MATLAB基本操作 数值、变量和表达式 指令窗常用指令 内存变量的操作
1
一 MATLAB 开发环境简介
§1.1 MATLAB特点:
2. 历史指令窗口(Command History)
历史指令窗口位于MATLAB操作桌 面的左下侧。历史指令窗口记录用户在 MATLAB指令窗口输入过的所有指令行。 历史指令窗可以用于单行或多行指 令的复制和运行、生成M文件等。使用 方法:选中单行(鼠标左键)或多行指令 ( Ctrl 或 Shift +鼠标左键),鼠标右键激 活菜单项,菜单项中包含有复制( Copy )、 运行( Evaluate Selection )、和生成M文 件( Create M File )命令,以及删除等指 令。 历史指令窗口也可以切换成独立窗 口和嵌入窗口,切换方法和指令窗口相 同。
1.1 MATLAB入门简介
练习2 计算下列各函数的值
1、y
sin 3x 1 x2
cos 4x 2 x
,求 y( )
7
2、y 3 * 22x 4 * e4x,求 y(3)
3、y
5
3 ln x log 3 x5 log 2 x 2 log10
,求
5
y(3)
第1.1节 MATLAB简介
1、MATLAB 操作入门 2、命令行基础 3、MATLAB的变量及管理 4、MATLAB的函数 小结
新版的Mat lab自1984年推向市场以来,历 经十多年的发展和竞争,现已成为国际认可的 最优化的科技应用软件。与其他高级语言相比, Mat lab提供了一个人机交互的数学系统环境, 可以大大节省编程时间。Mat lab语法规则简 单、容易掌握、调试方便,具有高效、简单和 直观的特性。使用者只需输入一条命令而不用 编制大量的程序即可解决许多数字问题,正是 由于Mat lab的强大功能,受到国内外专家学 者的欢迎和重视,他已成为许多大学生的重要 工具。
幂函 数 指数 函数
数学式 命令 类别 数学式 命令
sinx sin(x) 反
arcsinx asin(x)
cosx cos(x) 三
arccosx acos(x)
tanx tan(x) 角
arctanx atan(x)
cotx cot(x) 函 secx sec(x) 数
arccotx acot(x) arcsecx asec(x)
inf
无穷大
NaN
不定值
i或j realmin realmax
-1的开方= 1
最小可用2正.实2数2=51 10
1-Matlab简介详细
2 3 B 5 6 1 0 0 1
0 0 1 1
>> D=[C;eye(2),ones(2,1)] 输出: D= 2 3 0 5 6 0 1 0 1 0 1 1
MATLAB简介 4. 矩阵的运算
MATLAB中常用的算术运算符: + 数量加法,矩阵加法 * 数量乘法,矩阵乘法 数量减法,矩阵减法 .* 数组乘法
☆到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。
MATLAB简介
MATLAB 1.0 1984 MATALB 2 1986 MATLAB 3 1987 MATLAB 3.5 1990 MATLAB 4 1992 MATLAB 4.2c R7 1994 MATLAB 5.0 R8 1996 MATLAB 5.1 R9 1997 MATLAB 5.1.1 R9.1 1997 MATLAB 5.2 R10 1998 MATLAB 5.2.1 R10.1 1998 MATLAB 5.3 R11 1999 MATLAB 5.3.1 R11.1 1999 MATLAB 6.0 R12 2000 MATLAB 6.1 R12.1 2001 MATLAB 6.5 R13 2002 MATLAB 6.5.1 R13SP1 2003 MATLAB 6.5.2 R13SP2 2003 MATLAB 7 R14 2004
MATLAB简介 但是,要用好MATLAB却不是在短时间就可以达到的。 这并不是因为MATLAB语言复杂难懂,而是实际问题的求解 往往更多的是需要使用者具备数学知识和专业知识。 MATLAB使得人们摆脱了常规计算机编程的繁琐,让人们能 够将大部分精力投入到研究问题的数学建模上。可以说,应 用 MATLAB 这一数学计算和系统仿真的强大工具,可以使 科学研究的效率得以成百倍的提高。 目前, MATLAB 已经广泛用于理工科大学从高等数学 到几乎各门专业课程之中,成为这些课程进行虚拟实验的有 效工具。在科研部门,MATLAB更是极为广泛地得到应用, 成为全球科学家和工程师进行学术交流首选的共同语言。在 国内外许多著名学术期刊上登载的论文,大部分的数值结果 和图形都是借助MATLAB来完成的。
MATLAB软件简介
1 MATLAB软件简介1.1 概述MATLAB是美国Math Works 公司开发的大型数学计算软件,它具有强大的矩阵处理功能和绘图功能,已经广泛地应用于科学研究和工程技术的各个领域在科学研究和工程应用中,往往要进行大量的数学计算,其中包括矩阵运算。
这些运算一般来说难以用手工精确和快捷地进行,而要借助计算机编制相应的程序做近似计算。
MATLAB的主要功能具体包括:一般数值分析、矩阵运算、数字信号处理、建模和系统控制和优化等应用程序,并集应用程序和图形于一便于使用的集成环境中。
在此环境下所解问题的Matlab语言表述形式和其数学表达形式相同,不需要按传统的方法编程。
MATLAB语言的这一特点大大降低了对使用者的数学基础和计算机语言知识的要求,而且使编程效率和计算效率极高,还可在计算机上直接输出结果和精美的图形拷贝。
综上所述,Matlab语言有如下特点:1.编程语言接近人的思维方式,编程效率高,易学易懂它是一种面向科学与工程计算的高级语言,允许用数学形式的语言编写程序,且比其他计算机语言更加接近我们书写计算公式的思维方式,用Matlab编写程序犹如在演算纸上排列出公式与求解问题。
因此,Matlab语言也可通俗地称为演算纸式科学算法语言由于它编写简单,所以编程效率高,易学易懂。
2.程序调试方便灵活,Matlab语言是一种解释执行的语言,它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。
Matlab语言与其它语言相比,省去了编辑、编译、连接以及执行和调试四个步骤。
它把编辑、编译、连接和执行融为一体。
它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度。
Mat1ab语言不仅是一种语言,广义上讲是一种该语言开发系统,即语言调试系统。
3.源程序开放,库函数丰富,扩展能力强高版本的Matlab语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab的库函数同用户文件在形成上一样,所以用户文件也可作为Matlab的库函数来调用。
(完整版)Matlab简介
Matlab 简介1980 年,美国CleveMoier 博士在新墨西哥大学讲课时,认为高级语言的运用十分不便,于是创立了Matlab(MatrixLaboratory 的缩写),即矩阵实验室,早期的Matlab 软件是为了帮助老师和学生更好地学习,是作为一个辅助工具而之后逐渐演变成了一种实用性很强的工具。
1984,MathWorks 软件公司推出了一种高级语言。
它不但能编程还能用于数值计算以及图形显示,并用与控制系统以及工程设计。
90年,MathWorks 软件公司为Matlab 开发了一种新的用于图形控制及仿真模型建立的软件Simulink 。
它是Matlab 的一个扩展软件模块,这个模块为用户提供了一个用于建模仿真各种数学物理模型的软件,并且提供各种动态的结构模型,是用户可以快速方便的建模并且仿真,而不必写任何程序。
基于此优点,该工具很快被业界认可,并用于各种控制系统。
Matlab 编程工具不像C 语言那样难以掌握,所以在这种仿真环境下用户只需要简单的列出计算式,结果便会以数值或图形的方式显示出来。
从Matlab 被发明以来,它的快速性集成性、以及应用的方便性在高校中得到了好评。
它可以很方便的进行图形输出输入,同时还具有工具箱函数库,也能针对各个学科领域实现各种计算功能。
另外,Matlab 和其他高级语言也具有良好的接口,可以方便地与其他语言实现混合编程,这都进一步拓宽了它的应用范围和使用领域。
Matlab 由主程序、Simulink 动态仿真系统、和Matlab 工具箱三部分组成。
其中主程序包括Matlab 语言、工作环境以及应用程序;Simulink 动态仿真系统是一个相互交互的系统,用户制作一个模拟系统,并动态控制它;而工具箱就是Matlab 基本语句的各种子程序和函数库。
它有可以分为功能性和学科性工具箱。
功能性的工具箱主要用于扩展Matlab 的符号计算功能、图形建模功能、文字处理功能和与硬件的实时交互过程,如符号计算工具箱等;学科性的工具箱则有较强的专业性,用于解决特定的问题,如信号处理工具箱和通信工具箱。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• ⑦语句简单,内涵丰富 MATLAB语言中最基本最重要的成分是函数,其 一般形式为[a,b,c…]=fun(d,e,f…),即一 个函数由函数名,输入变量d,e,f…和输出变量 a,b,c…组成,同一函数名F,不同数目的输入 变量(包括无输入变量)及不同数目的输出变量, 代表着不同的含义。这不仅使MATLAB的库函数 功能更丰富,而且大大减少了需要的磁盘空间, 使得MATLAB编写的M文件简单、短小而高效。
• MATLAB以商品形式出现后的短短几年,就以其 良好的开放性和运行的可靠性,使原先控制领域 里的封闭式软件包纷纷淘汰,而改在MATLAB平 台上重建。在时间进入20世纪九十年代的时候, MATLAB已经成为国际控制界公认的标准计算软 件。
• 从1997年春的5.0版起,后历经5.1、5.2、5.3、6.0、 6.1等多个版本的不断改进,MATLAB“面向对象” 的特点愈加突出,数据类型愈加丰富,操作界面 愈加友善。2002年初夏所推6.5版的最大特点是: 该版本采用了JIT加速器,从而使MATLAB运算 速度前进了一大步。目前功能更加强大的7.1版 也已上市。
MATLAB工具箱主要应用 • 数据分析 • 数值和符号计算 • 工程与科学绘图 • 控制系统设计 • 数字图象信号处理 • 财务工程 • 建模、仿真、原型开发 • 图形用户界面设计等
• MATLAB工具箱被广泛地应用于包括信号与图像 处理、控制系统设计、通信、系统仿真等诸多领 域。开放式的结构使MATLAB产品组很容易针对 特定的需求进行扩充,从而在不断深化对问题的 认识的同时,提高自身的竞争力。 • MATLAB工具箱的一大特性是有众多的面向具 体应用的工具箱和仿真块,包含了完整的函数集 用来对信号图像处理、控制系统设计、神经网络 等特殊应用进行分析和设计。
二、计算机仿真的概念 仿真的定义 • 仿真:模仿真实世界。基本思想是利用物理 的或数学的模型来类比模仿现实过程,以寻 求对真实过程的认识。它所遵循的基本原则 是相似性原理。 计算机仿真的定义 • 计算机仿真:基于所建立的系统仿真模型, 利用计算机对系统进行分析与研究的方法。
三、仿真技术的主要用途
1.2.2 MATLAB语言的特色
• 一、MATLAB的五大功能:
• • • • • 数值计算功能 符号计算功能 图形和可视化功能 记事本功能 可视化建模和仿真功能
二、MATLAB语言主要优点:
①.功能强大的数值运算——在MATLAB环境中,有 超过500种数学、统计、科学及工程方面的函数可使 用,函数的标示自然,使得问 题和解答像数学式子 一般简单明了,让使用者可全力发挥在解题方面,而 非浪费在电脑操作上。 ②.语言简洁紧凑——MATLAB语言允许用户以数学形 式的语言编写程序,比BASIC、FORTRAN语言和C语言 等更接近于书写计算公式的思维方式。由于它是用C 语言开发的,它的不多的几个程序流程控制语句同C 语言差别甚微,易于初学者掌握。
教学内容
MATLAB语言基础及常用功能 控制系统的数学描述与建模 控制系统的分析方法 控制系统设计与校正 SIMULINK仿真基础 常用工具箱简介
参考书目
教 材:《基于MATLAB的控制系统计算机仿真》
参考书: • 《 MATLAB在自动控制中的应用》 西安电子科技大学出版社,2006年,吴晓燕 • 《反馈控制系统设计与分析—— MATLAB语言应用》 清华大学出版社,2000年,薛定宇 • 《控制系统数字仿真与CAD》 电子工业出版社,2003年,李国勇 • 《控制系统MATLAB计算及仿真实训》 国防工业出版社,2006年,黄忠霖
1.1.4 仿真技术的应用与发展
一、仿真技术在工程中的应用
1、航空与航天工业 • 飞行器设计中的三级仿真体系:纯数学模拟(软件)、半 实物模拟、实物模拟或模拟飞行实验。 • 飞行员及宇航员训练用飞行仿真模拟器。 2、电力工业 • 电力系统动态模型实验:电力系统负荷分配、瞬态稳定性 以及最优潮流控制等。 • 电站操作人员培训模拟系统。
• ⑥移植性和开放性好 MATLAB是用C语言编写的,而C语言的可 移植性很好。于是MATLAB可以很方便地移植到 能运行C语言的操作平台上。MATLAB适合的工 作平台有;Windows系列、Unix、Linux。 除了内部函数外,MATLAB所有的核心文件 和工具箱文件都是公开的,都是可读可写的源文 件,用户可以通过对源文件的修改和自己编程构 成新的工具箱。
基于MATLAB的控制系统 计算机仿真
北华大学
二00八年九月
课程任务
通过本课程的学习, 能初步掌握 MATLAB语言的基本知识,结合所学课程 《自动控制原理》、《现代控制理论》 《电力拖动自动控制系统》等,学会运用 MATLAB语言进行控制系统仿真和辅助设 计的基本技能,为今后从事科学研究打下 较好的基础。
3、原子能工业 • 模拟核反应堆 • 核电站仿真器用来训练操作人员以及研究异常故 障的排除处理。 4、冶金工业及石油、化工 5、非工程领域 • 医学 • 社会学 • 宏观经济与商业策略的研究
二、应用仿真技术的意义
1、经济 • 大型、复杂系统直接实验是十分昂贵的,如:空 间飞行器的一次飞行实验的成本约在1亿美元左右, 而采用仿真实验仅需其成本的1/10~1/5,而且设 备可以重复使用。 2、安全 • 某些系统(如载人飞行器、核电装置等),直接 实验往往会有很大的危险,甚至是不允许的,而 采用仿真实验可以有效降低危险程度,对系统的 研究起到保障作用。
• ⑧高效方便的矩阵和数组运算——MATLAB语言 像FORTRAN和C语言一样规定了矩阵的算术运算 符、关系运算符、逻辑运算符、条件运算符及赋 值运算符,而且这些运算符大部分可以毫无改变 地照搬到数组间的运算。另外,它不需定义数组 的维数,并给出矩阵函数、特殊矩阵专门的库函 数,使之在求解诸如信号处理、建模、系统识别、 控制、优化等领域的问题时,显得大为简捷,这 是其他高级语言所不能比拟的。高版本的 MATLAB已逐步扩展到科学及工程计算的其他领 域。因此,不久的将来,MATLAB一定能名副其 实地成为“万能演算纸”式的科学算法语言。
第一章、MATLAB概述
1.1 系统、模型与仿真
1.1.1 计算机应用与工程问题
• 在我们迈入二十一世纪的此时,回顾近年来的重大工 程成就,影响世界深远的为数不少,而依据美国国家 工程学院在近几年所选出的25年来的十大重大工程成 就有: • 微处理机 ;登陆月球 ;人造卫星的应用 ;电脑辅助 设计及制造;大型越洋客机;先进复合材料 ;电脑断 层扫描 ;基因工程 ;激光 ;光纤 等。
3、快捷 • 提高设计效率:比如电路设计,服装设计等等。 4、具有优化设计和预测的特殊功能 • 对一些真实系统进行结构和参数的优化设计是非 常困难的,这时仿真可以发挥它特殊的优化设计 功能。 • 在非工程系统中(如社会、管理、经济等系统), 由于其规模及复杂程度巨大,直接实验几乎不可 能,这时通过仿真技术的应用可以获得对系统的 某种超前认识。
• ⑨方便的绘图功能—— MATLAB的绘图是十分 方便的,它有一系列绘图函数(命令),例如线 性坐标、对数坐标、半对数坐标及极坐标,均 只需调用不同的绘图函数(命令),在图上标出 图题、XY轴标注,格(栅)绘制也只需调用相应 的命令,简单易行。另外,在调用绘图函数时 调整自变量可绘出不变颜色的点、线、复线或 多重线。这种为科学研究着想的设计是通用的 编程语言所不能及的。
1.2 MATLAB简介
• MATLAB是美国math works公司推出的一个高性能的数值 计算和可视化软件,它集数值分析、矩阵运算、信号处 理和图形显示于一体,构成了一个方便的、界面友好的 用户环境。 MATLAB的推出得到了各个领域的广泛关注, 其强大的扩展功能为各个领域的应用提供了基础。由各 个领域的专家学者相继推出了MATLAB工具箱,其中控制 类的主要有信号处理、控制系统、神经网络、图像处理 等。借助MATLAB的这些工具箱,人们可直观、方便地进 行分析、计算及设计工作,从而大大节省了时间,并能 很快地设计出更多的解决方案来确保未来更多的技术需 要。
1.2.1 MATLAB的发展历程和影响
• MATLAB名字由MATrix和 LABoratory 两词的前 三个字母组合而成(矩阵实验室)。那是20世纪 七十年代后期的事:时任美国新墨西哥大学计算 机科学系主任的Cleve Moler教授出于减轻学生编 程负担的动机,为学生设计了用FORTRAN编写 的萌芽状态的MATLAB。 • 经 几 年 的 校 际 流 传 , 在 Little 的 推 动 下 , 由 Little、Moler、Steve Bangert合作,于1984年成立 了MathWorks公司,并把MATLAB正式推向市场。
• ③.先进的资料视觉化功能——动画片、图像
处理。MATLAB的物件导向图形架构让使用者 可执行视觉数据分析,并制作高品质的图形, 完成科学性或工程性图文并茂的文章。
• ④.开放及可延伸的架构——MATLAB容许使
用者接触它大多数的MATLAB原文件,检视运 算法,更改现存函数,甚至加入自己的函数使 MATLAB成为使用者所须要的环境。
一、计算机辅助设计的概念
• 计算机辅助设计(CAD)技术是利用计算机高速而精确 的计算能力、大容量存储和处理数据的能力,结合设计 者的综合分析、逻辑判断及创造性思维,用以加快设计 进程、缩短设计周期、提高设计质量的技术。 • 说明:计算机辅助设计从广义上来讲它包含了计算机仿 真的内容,从狭义上说它的主要工作是利用计算机的运 算能力来处理设计者手工处理所遇到的不便与繁琐。
• ⑤丰富的程式工具箱 —— MATLAB的程式 工具箱融合了套装前软体的优点,与一个灵 活的开放但容易操作之环境,这些工具箱提 供了使用者在特别应用领域所需之许多函数。 现有工具箱有:符号运算(利用Maple V的 计算核心执行 )、影像处理、统计分析、讯 号处理、神经网络、模拟分析、控制系统、 即时控制、系统确认、弧线分析、最佳化、 模糊逻辑、化学计量分析等。目前有60多个。