数学软件matlab基本使用方法_第1页
数学软件matlab基本使用方法_第2页
数学软件matlab基本使用方法_第3页
数学软件matlab基本使用方法_第4页
数学软件matlab基本使用方法_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数学实验

数学软件Matlab

基本使用方法

本讲主要内容

■Matlab介绍

■Matlab的基本用法

2

数学实验

□数学相关软件

・程序设计语百:RAN,C,...

•数值计算软件:|mTLAB|tave,...

•符号计算软件:---------------...

•交互式数学软件:MathCAD,Calcwin,...

・统计软件:SAS,SPSS,Minitab,...

•数学规划软件:Lingo,Lindo,...

•工程计算软件:Ansys,Fluent,Phoenics,...

•其它:几何画板,MathLab,...

3

Matlab简介

MATLABMatrixLaboratory矩阵实验室

MATLAB

7heLun^uagcvf1cchnicalCDinpiitin^•Matlab是一种广泛应用于工程计算及数值

分析领域的新型高级语言,自1984年推向

市场以来,经过多年的发展与竞争,现已成

为国际公认的最优秀的工程应用开发环境

•在欧美各高等院校,Matlab是线性代数、数值分析、数理统

计、自动控制、数字信号处理、动态系统仿真、图像处理等课

程的基本教学工具,已成为大学生必须掌握的基本技能之一

4

Matlab简介

□Matlab的发展

•1980年,Moler教授用Fortran语言编写了集命令翻译、

科学计算于一身的一套交互式软件系统

•1984年,Moler等成立了TheMathWorks的公司,用

C语言完全改写Matlab,并推出第一个商业版

•到九十年代,在国际上30几个数学类科技应用软件中,

Matlab在数值计算方面独占鳌头。

•目前,Matlab已成为世界顶尖的数学应用软件就影响而言,

至今仍然没有一个别的计算软件可与Matlab匹敌

5

Matlab简介

□Matlab的发行版本

1984年,Matlab1.0(DOS版,182K,20多个函数)

1992年,Matlab4.0(93年推出Windows版,加入simulink)

1994年,Matlab4.2(得到广泛重视和应用)

1999年,Matlab5.3(真正实现32位运算)

2002年,Matlab6.5(采用JIT加速器)

2004年,Matlab7.0

自2006年起,Matlab每年更新两次

目前最新版为R2010a(2010年3月发布)

6

Matlab的安装

□获取Matlab软件

□插入光盘,自动运行;或点击安装程序setup.exe

____•t

ITHProductandFolderSelectionEBH

ThSelectdestinationfolderforinstallation:

ScjC:\PrografeFiles\MATU\B704\

MATLABBrowse..

SIMU牌里以w为例

IM

T卜•自R2008a开始增加了激活要求

T卜

IN(安装方法见课程主页;

■必须安装的部件符号计算工具箱合成了一个)

>ddedTargetforMotorolaHC121.1.2

•Matlab•»..一l..rc—AXA4cAA.AL匚厂.匚CG

•SymbolicMathToolboxliable:2820MSpacerequired:1253M

•ExtendedSymbolicMathNext>CancelHelp

Matlab的功能与特点

□Matlab是一个交互式软件系统

•输入一条命令,立即就可以得到该命令的运行结果

□Matlab具有很强的数值计算功能

•Matlab以矩阵作为数据操作的基本单位,

但无需预先指定矩阵维数(动态定维)

•按照IEEE的数值计算标准进行计算

•提供十分丰富的数值计算函数,方便计算,提高效率

•Matlab命令与数学中的符号、公式非常接近,

可读性强,容易掌握

8

&Matlab的特点与功能

□Matlab的符号计算功能

Matlab和著名的符号计算语言Maple相结合

□Matlab的绘图功能「「;上

Matlab提供丰富的绘图命令,

很方便实现数据的可视化

□Matlab的编程功能10-10

Matlab具有程序结构控制、函数调用、数据结构、输入输

出、面向对象等程序语言特征,且简单易学、编程效率高

9

,Matlab的特点与功能

□Matlab丰富的工具箱(toolbox)

根据专门领域中的特殊需要而设计的各种可选工具箱

SymbolicMathSignalprocessControlSystem

PDEImageProcessSystemIdentification

OptimizationStatistics

□Matlab的Simulink动态仿真集成环境

提供建立系统模型、选择仿真参数和数值算法、启动仿

真程序对该系统进行仿真、设置不同的输出方式来观察

仿真结果等功能

10

y本讲主要内容

■Matlab的基本用法

11

Matlab的基本用法

□Matlab系统的启动

•使用Windows“开始”菜单

•运行Matlab系统启动程序matlab

•双击Matlab快捷图标

口Matlab系统的退出

•在Matlab主窗口File菜单中选择ExitMatlab

•在Matlab命令窗口输入exit或quit

・单击Matlab主窗口的“关闭”按钮0X

12

1J

Matlab变量

□Matlab变量的命名规则

•以字母开头

•后面可以跟字母、数字和下划线

・长度不超过63个字符(6.5版本以前为19个)

•区分字母的大小写

口Matlab语句的通常形式

变量=表达式

表达式是用运算符将有关运算量连接起来的式子,

其结果被赋给赋值号“二”左边的变量

14

,变量的查看

□查看已定义的变量

•who显示工作空间中的所有变量

•whos显示变量的详细属性

»who»whos

NameSizeBytesClass

Yourvariablesare:

A4x396doublearray

a4x132doublearray

Aabcx

b3x124doublearray

c1x18doublearray

X1x540doublearray

Grandtotalis25elementsusing200bytes

15

立系统预定义变量

□系统预定义的变量

♦pi:圆周率兀,其值为imag(1og(-l))

♦inf,Inf:无穷大

♦nan,NaN:Not-a-Number,一个不定值,如0/0

♦eps:浮点运算相对精度

♦i,j:虚部单位,即JI7

注:应尽量避免给系统预定义变量重新赋值!

□特殊变量ans

16

&Matlab数值运算

口数与算术表达式

•Matlab中的数默认是双精度实数,表示方法同C语言

3,-9,0.4,1.603e-12z3.23e+20

•浮点运算的相对误差为eps

•浮点数表示范围为:10-3。8〜10308

•复数的输入

z=3+4i(4与i之间不能有空格)

注:复数作为矩阵元素输入时,加号两边不能有空格!

17

&Matlab数值运算

口数学运算符

•+加法

•一减法

•*乘法

•/和\除法(右除和左除)

•A塞运算

口命令分隔符:逗号和分号

18

分号和续行符

□分号和续行符的作用

•若不想在屏幕上输出结果,可以在语句最后加分号

•如果语句很长,可用续行符“…”(三个点)续行

续行符的前面最好留一个空格

例・

,>>c=l+2-4+5+8>>c=l+2-4+5...

+8

>>c=l+2-4+5・・.

»c=l+2-4+5+以???G=1+2-4+5...

»

Error:UnexpectedMATLABoperator.

19

/矩阵的输入

□Matlab的操作对象矩阵

口定义矩阵:直接输入法

例:»A=[123;456;789]

•矩阵用方括号“口”括起

•矩阵同一行中的元素之间用空格或逗号分隔

•矩阵行与行之间用分号分开

•直接输入法中,分号可以用回车代替

•>>是命令提不符,不用输入

•回车运行所输入的命令

20

矩阵元素赋值

□矩阵元素可以是任何数值表达式

例:»x=[-1.3,sqrt(3),(1+2+3)*4/5]

□矩阵元素的单独赋值

例:>>x(5)=abs(x(1))

动态定维功能:Matlab会自动扩展向量的长度,

并将未赋值部分置零

例:>>x(5)=abs(x(6))??

21

*矩阵元素赋值

□大矩阵可以把小矩阵作为其元素

例:»A=[A;111213]

在原矩阵的下方加一行

⑦如何在原矩阵的右边添加一列?

22

*矩阵元素的引用

口单个元素的引用

例:>>A(2,3)

•利用小括弧和元素所在的位置(下标)

x(i):向量,中的第i个元素

A(i,j):矩阵A中的第i行,第j列元素

23

*矩阵元素的引用

口多个元素的引用:冒号的特殊用法

a:b:c

产生一个由等差序列组成的向量:

•a是首项,b是公差,c确定最后一项;

•若b=L则b和其前面的冒号可以省略

例:»x=l:2:5例:»x=2:l:5例:>>x=3:2:l

>>y=l:2:6

24

矩阵元素的引用

例:»x(l:3)

»A(3,1:3)

•A(可,mtn)表示由矩阵A的第力至lj第/行和第m到

第n列交叉线上的元素组成的子矩阵

•可利用冒号提取矩阵的整行或整列

例:>>A(1,:)

>>A(:,1:3)

>>A(:,:)

25

矩阵操作

口提取矩阵的部分元素:冒号运算符

♦A(:)A的所有元素

♦A(::)矩阵A的所有元素

♦A(:,k)A的第k列,A(k,:)A的第k行

♦A(k:m)A的第k到第m个元素

♦A(:,k:m)A的第k到第m列组成的子矩阵

彩自己动手

⑦A(:)与A(:,:)的区别?

您如何获得由A的第一、三行和第一、二列组成的子矩阵?

26

矩阵操作

□从大矩阵中提取一个子矩阵

A(工,J)

其中工=[»1,『2,,,m],J=[171'J2r,Jm】

表示由A的第%,,2,…,行和第jl,,2,…,jm

列组成的子矩阵。

例:>>A([1,3,4],[2,3])

□删除指定的行或列

例:>>A(3,:)=[]

例:>〉A(:,[1,2,4])=[]

.特殊矩阵

□一些特殊矩阵的生成

•Matlab提供了一些函数,用于生成一些常见的特殊矩阵

例:>>C=magic(3)

>>D=hilb(4)

>>E=rand(4)

28

常见矩阵生成函数

zeros(m,n)生成一个股行〃列的零矩阵,m=n时可简写为zeros(w)

ones(m,n)生成一个巴行n列的兀素全为1的矩阵,

m—n时可写为ones(n)

eye(m,n)生成一个主对角线全为1的胆行〃列矩阵,

m=n时可简写为eye(w),即为〃维单位矩阵

diag(X)若X是矩阵,则diag(X)为X的主对角线向量

若X是向量,diag(X)产生以X为主对角线的对角矩阵

tril(A)提取一个矩阵的下三角部分

triu(A)提取一个矩阵的上三角部分

rand(m,n)产生0〜1间均匀分布的随机矩阵m=n时简写为rand(w)

randn(m,n)产生均值为0,方差为1的标准正态分布随机矩阵

m=n时简写为randn(n)

其它特殊矩阵生成函数:magic,hilb.pascal等

-----------------------------------------------------------------------------------------------29-1

,矩阵基本运算

口矩阵的加减:对应分量进行运算

参与加减运算的矩阵具有相同的维数!

例:|>>A=[1,2;3,4];B=[5,6;7,8]

>>C=A+B

>>D=B-A

□矩阵的普通乘法

参与运算的矩阵须满足线性代数中矩阵相乘的原则!

例:|>>A=[1,2,3;4,5,6];B=[2,1;4,3]

>>C=B*A

30

,矩阵基本运算

口矩阵的除法:/、\右除和左除

♦若A可逆方阵,则

B/A〈二二〉A的逆右乘B〈二二〉B*inv(A)

A\B〈二二〉A的逆左乘B〈=>inv(A)*B

通常,矩阵除法可以理解为

X=A\B〈二二〉A*X=B

X=B/A<==>X*A=B

当A和B行数相等时可进行左除

当A和B列数相等时可进行右除

31

矩阵的乘方

♦A是方阵,p是正整数

A人p表示7的夕次塞,即,个/相乘。

(dx0•••_,

_:0d,,,

21

♦若。是标量,::,:则

I・••

(a八dI0…

|0a人d,….!

…=..2..1

••••

I•••

00,••

32

¥矩阵转置

口矩阵的转置与共轨转置

♦'共乐转置

♦转置,矩阵元素不取共聊

点与单引号之间不能有空格!

例:

»A=[lr2;3i,4i]

»B=A1

»C=A.1

33

¥矩阵的旋转

□矩阵的旋转

♦fliplr(A)左右旋转

♦flipud(A)上下旋转

♦rot90(A)逆时针旋转90度;

rot90(A,k)逆时针旋转kX90度

例:»A=[123;456]

»B=fliplr(A)

>>C=flipud(A)

>>D=rot90(A)

>>E=rot90(A,-1)

注意矩阵旋转与转置的区别!

34

y改变矩阵的形状

□改变矩阵的形状:reshape(A,m,n)

将矩阵元素按列方向进行重新排列成一个mXn的新矩阵

新矩阵的元素个数必须与原矩阵元素个数相等!

例:2>A=[1,2,3;4,5,6;7,8,9;10,11,12]

>>B=reshape(AA4z3)

>>C=reshape(A,2z6)

>>C=reshape(A

35

*查看矩阵的大小

□查看矩阵的大小:size、length

♦size(A)返回矩阵A的行数和列数

♦size(A,1)返回矩阵A的行数

♦size(A,2)返回矩阵A的列数

r23456

例:L

>>A=I,

/

>>size\

f/1

>>size\f

f/2

>>size\f

♦length(x)返回向量X的长度

♦length(A)等价于max(size(A))

>>length(A)

>>x=[5:2:10];length(x)

36

Matlab帮助系统

□联机帮助

•help显示指定命令的简短使用说明

例:>>helpeig

>>helphelp

口详细使用帮助

•doc以网页形式显示指定命令的帮助页

例:>>doceig

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论