Matlab基础知识点 - 图文

2019-08-26 17:23

MatLab讲义 2002年9月版

MATLAB讲义

第一章 MATLAB系统概述

1.1 MATLAB系统概述

MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。 特点:

(1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。

(2)语句书写简单。 (3)语句功能强大。

(4)有丰富的图形功能。如plot,plot3语句等。

(5)提供了许多面向应用问题求解的工具箱函数。目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。

(6)易扩充。

1.2 MATLAB系统组成

(1)MATLAB语言

MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。同时MATLAB又具有面向对象编程特色。MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。

(2)开发环境

MATLAB开发环境有一系列的工具和功能体,其中大部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。

(3)图形处理

图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。还包括低级的图形命令,供用户自由制作、控制图形特性之用。

(4)数学函数库

有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。

MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。

(5)MATLAB应用程序接口(API)

MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。

1.3 MATLAB的应用范围包括:

MATLAB的典型应用包括: ? 数学计算 ? 算法开发

? 建模、仿真和演算 ? 数据分析和可视化 ? 科学与工程绘图

? 应用开发(包括建立图形用户界面) 以矩阵为基本对象

第二章 Matlab基础

2.1 MATLAB快速入门

(1)搜索路径

搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。搜索路径设置存放在文件pathdef.m中,称为当前目录,当要在MATLAB中打开一个文件时,就以当前目录为开始点。

1

MatLab讲义 2002年9月版

当输入一变量value时,MATLAB的搜索路径次序: value是否为变量

value是否为内部函数

当前目录中是否存在value.m文件 搜索路径上是否存在value.m文件

path函数可以控制MATLAB的目录搜索路径,主要使用的格式: path 显示当前的搜索路径

p=path 把当前的搜索路径存到字符变量P中 path('newpath') 设置路径为'newpath'

path(path,'newpath') 向当前路径添加一个新目录 addpath函数向MATLAB的搜索目录中添加一个新目录。 addpath 路径名

path(path,?路径名?):增加搜索路径

rmpath函数从MATLAB的搜索路径删除一个目录。 rmpath 路径名:删除路径

还可以利用菜单:File->setpath(路径浏览器) what:显示出搜索路径上的文件名 what路径名:路径名中的文件名 type value:显示变量内容

edit 文件名:对m文件进行编辑 (2)工作空间(Workspace)

工作空间是一个重要而且比较抽象的概念,它是指运行MATLAB 程序或命令所生成和存储在内存中的所有变量和MATLAB提供的常量构成的集合。通过使用函数、运行M文件和装载保存的工作空间,可以向工作空间增加变量。

? save保存整个工作空间或一部分变量,使用方式: save workspace as 文件名 或

save 文件名 [变量名]

? load恢复工作空间,使用方式: load workspace load 文件名

? 工作空间浏览器:File->Show Workspace ? 还有一组命令来管理这些变量。

who,whos:显示出工作空间中的变量列表。 clear [变量名]:清除变量 (3)MATLAB命令窗口 ? 输入命令和输出结果。 如输入:help [函数名] a=6

2.2 矩阵、变量、运算和表达式

(1)矩阵的输入 A.直接输入: 注意:(1)行元素间用空格或逗号(,)隔开; (2)行与行之间用分号(;)或回车; (3)整个元素列表用[]括起。

直接输入的矩阵为一全局变量,一直保存在内存中。 例: a=[1 2 3;4 5 6] a=

1 2 3 4 5 6

a=[1,2,3;4,5,6;7,8,9] ? a=[1 2 3; 4 5 6; 7 8 9]

2

MatLab讲义 2002年9月版

矩阵元素:可以灵活地描述矩阵元素, ? 矩阵元素a[i,j] 按列存放 通过下标单独对元素赋值

例:a(1,1)=1,a(3,2)=a(1,1) 得到

a = 1 a =

1 0 0 0 0 1

即自动形成一个3行2列矩阵,对未赋值的元素充值0。 ? 矩阵的元素可以用任意形式的表达式 例:算术表达式

x=[-1,sqrt(5),(2+7)^4] x =

1.0e+003 *

-0.0010 0.0022 6.5610

? 大矩阵可以用小矩阵作为元素 例:a=[1 2;3 4]

b=[a a+5;a-5 zeros(size(a))]

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

A =

1 2 3 4 5 6 B=[A;7,8,9] B =

1 2 3 4 5 6 7 8 9

? 可以从矩阵中抽取某些元素构成新矩阵

C=A(1:2,:) C =

1 2 3 4 5 6 例:a=[3,4,5;6,7,8]

b=[+2,4*5,6]

c=[sin(0.5*pi),sqrt(4),0] d=[a;b;c]

? 复数的表示

MATLAB支持复数的运算,复数的虚部用i或j表示。 例:a=1+2i或a=1+2j 二者表示的结果一样。 复数可以直接运算, 例:a=3+4i; b=5+6j a+b 输出:ans=

8.0000+10.0000i 复数运算的一些常用函数: ①abs 返回复数的模 ②angle 返回复数的相角 ③conj 返回共轭复数 ④imag 返回复数的实部

3

MatLab讲义 2002年9月版

⑤real 返回复数的虚部 B.用语句或函数产生:

a=randn(5,5) 产生正态分布5*5的随机矩阵。 C.用M-文件或外部数据文件产生:

M-文件是一个以.m为后缀的文本文件,文件内容为一系列MATLAB命令,在MATLAB环境下键入该文件名(不包括后缀),文件中的全部命令会依次逐个执行;M-文件名(不包括后缀)相当于一个宏命令.

例如:一个名为magik.m的文件包含了如下的内容,(假设magik.m在当前目录下)

A = [

16.0 3.0 2.0 13.0 5.0 10.0 11.0 8.0 9.0 6.0 7.0 12.0 4.0 15.0 14.0 1.0 ]

在Matlab环境下执行如下命令:

magik A A =

16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1

D.用矩阵编辑器创建和修改矩阵: 使用File->Show workspace (2)矩阵运算

运算符 +,-,*,/(右除),\\(左除) 和^(幂)。

右除:C=A/B即C满足CB=A,当B可逆时,A/B=AB-1 左除:C=A\\B即C满足AC=B,当A可逆时,A\\B=A-1B 幂A^n = A*…*A; A必须是方阵。 例:矩阵的加减法: a=[1:3;4:6;7:9]

b=a; c=a+b; c=a-b

注:矩阵相加减必须有相同的维数。

例:矩阵的点乘运算,^运算时矩阵必须为方阵,且只能与数字运算。 d=a*b 必须符合m*n与n*l的结构。 d=a.*b 矩阵的点乘运算

例:\\(左除):A\\B=inv(A)*B,其中inv(A)表示A逆阵,例如求解AX=B。 A=[1 0 0;0 4 0;0 0 9]; B=[1 2 3;0 1 0;0 1 1]; X=A\\B

/(右除): A/B=A*inv(B),例如求解XA=B。 X=B/A

(3)变量与表达式

? Matlab的赋值语句有两种形式: 其一为:<变量>=表达式;

其二为:表达式,将表达式的值赋于一个自动定义的变量ans。 注:A:如果以;结尾,则不显示计算结果,否则显示计算结果。

B:除保留字外,变量可以用字母开头,后跟19个字母或数字。变量名区分大小写,变量使用时不需要先定义,也不必定义变量的类型。

? 可以用who或whos来显示已定义的变量 例如:

who

Your variables are:

A B C a ans

4

MatLab讲义 2002年9月版

whos

Name Size Bytes Class

A 2x3 48 double array B 3x3 72 double array C 2x3 48 double array a 3x2 48 double array ans 1x1 8 double array Grand total is 28 elements using 224 bytes

? 一些常用的变量

pi 3.14159265 //π值 i sqrt(-1 ) //虚数单位 j same as i

eps floating-point relative precision, 2.2204e-016 //容量变量 realmin smallest floating-point number, 2.2251e-308 //最小浮点数 realmax largest floating-point number, 1.7977e+308 //最大浮点数 inf infinity (任意一个非零数除以0) //正无穷大 nan Not-a-number (0/0 或inf-inf) //非数

如:

r=1/0 r=inf 1/r ans=0

(4)矩阵的其他简单运算: A?: 矩阵转置 inv(A):A-1

sum(A):得到一个行向量,其元素为A的每一列的和

a=[1 2 3;4 5 6] sum(a) sum(a’)

diag(A):得到一个列向量,其元素为A的对角元

sum(diag(a))

冒号(:)运算符:

a:b:c:生成一个由等差数列构成的行向量X,X(i+1)-X(i)=b

例:0:pi/4:pi ans =

0 0.7854 1.5708 2.3562 3.1416

如果省略b,则等差数列的公差为1

a=0:0.05:1

x=linspace(0,1,75) a=1:4;b=1:2:7;c=[b,a]

20.2

等比数列:logspace(0,2,11) 创建起点为10,终点为10,11个元素,公比为10 矩阵的变换:rot90: 矩阵逆时针旋转n*90度。 fliplr: 矩阵左右翻转。 flipud: 矩阵上下翻转。 稀疏矩阵的存储:

sparse(A):用于把完全矩阵压缩为稀疏矩阵。

A=[0,1,0,0;0,3,0,4;5,0,0,0;0,0,0,7] sparse(A) ans=

(3,1) 5 (1,2) 1 (2,2) 3 (2,4) 4

5


Matlab基础知识点 - 图文.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:知识产权专业大学毕业实习周记原创范文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: