Matlab基础知识点
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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中打开一个文件时,就以当前目录为开始点。
当输入一变量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]
矩阵元素:可以灵活地描述矩阵元素,
●矩阵元素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 返回复数的实部