MATLAB的含义是矩阵实验室(MATRIX LABORATORY),主要用于方便矩阵的存取,其基本元素是无须定义维数的矩阵。MATLAB自问世以来,就是以数值计算称雄。MATLAB进行数值计算的基本单位是复数数组(或称阵列),这使得MATLAB高度“向量化”。经过十几年的完善和扩充,现已发展成为线性代数课程的标准工具。由于它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。美国许多大学的实验室都安装有MATLAB供学习和研究之用。在那里,MATLAB是攻读学位的大学生硕士生、博士生必须掌握的基本工具。MATLAB中包括了被称作工具箱(TOOLBOX)的各类应用问题的求解工具。工具箱实际上是对MATLAB进行扩展应用的一系列MATLAB函数(称为M文件),它可用来求解各类学科的问题,包括信号处理、图象处理、控制系统辨识、神经网络等。随着MATLAB版本的不断升级,其所含的工具箱的功能也越来越丰富,因此,应用范围也越来越广泛,成为涉及数值分析的各类工程师不可不用的工具。 MATLAB5.3中包括了图形界面编辑GUI,改变了以前单一的“在指令窗通过文本形的指令进行各种操作”的状况。这可让使用者也可以象VB、VC、VJ、DELPHI等那样进行一般的可视化的程序编辑。在命令窗口(matlab command window)键入simulink,就出现(SIMULINK) 窗口。以往十分困难的系统仿真问题,用SIMULINK只需拖动鼠标即可轻而易举地解决问题,这也是近来受到重视的原因所在。
MatLab是一种数值计算和图形图像处理工具软件。本书从MatLab的基础知识入手,在详细介绍各种命令的同时,向读者介绍了MatLab在高等数学、线性代数、符号运算、图形图像处理、数据处理等方面的应用和外部接口程序设计。
我也不是很懂
MATLAB概论
MATLAB是世界流行的优秀科技应用软件之一。具有功能强大(数值计算、符号计算、图形生成、文本处理及多种专业工具箱)、界面友好,可二次开发等特点。在国内外,已有许多高等院校将其列为本科生、研究生和博士生必须掌握的基本技能。
1起源与发展
自1984年由美国MathWorks公司推向市场以来,先后发布了多个版本,1993年发布4.0版,1995年发布4.2c版,1996年发布5.0版,1997年发布5.1版,1999年发布5.3版,2000年发布6.0版,目前发布的为6.5版。
2基本组成
MATLAB主要由MATLAB主程序、Simulink动态仿真系统和MATLAB工具箱三大部分组成。其中MATLAB主程序包括MATLAB语言、工作环境、句柄图形、数学函数库和应用程序接口五个部分;Simulink是用于动态系统仿真的交互式系统,允许用户在屏幕上绘制框图来模拟系统并能动态地控制该系统;工具箱则是MATLAB的基本语句编写的各种子程序集和函数库,用于解决某一方面的特定问题或实现某一类的新算法,是开放的,可以根据需要扩充。
3通用命令
通用命令是在MATLAB命令窗口中直接键入并执行。常见的如下表所列。
名称 功能说明
clear 清除内存中所有的或指定的变量和函数
cd 显示和改变当前工作目录
clc 擦除MATLAB工作窗口中所有显示的内容
clf 擦除MATLAB工作窗口中的图形
dir 列出当前或指定目录中的文件清单
disp 在运行中显示变量或文字内容
echo 控制运行的文字命令是否显示
hold 控制当前的图形窗口对象是否被刷新
home 擦除命令窗口中的全部内容
pack 收集内存碎片以扩大内存空间
quit 关闭并退出MATLAB
type 显示所指定文件的全部内容
exit 退出MATLAB
4帮助文件
MATLAB为用户提供了非常详尽的帮助文件,最常见的帮助命令是help,直接输入help则列出全部信息,help后加对象则提示对象帮助信息。
MATLAB的基本矩阵运算
1 简单矩阵输入
MATLAB最基本、也是最重要的功能就是进行实数矩阵或者复数矩阵的运算。由于向量可作为矩阵的一行或者一列,标量(一个数)则可以作为只含有一个元素的矩阵,故向量和标量都可以作为特殊矩阵来处理。MATLAB的操作和命令对于矩阵而言,和我们平时使用的形式很相似,但它还有自己的一些规定。
一、键盘输入
对于比较小的简单矩阵,可以使用键盘直接输入,例如:
a=1;b=2;c=3
x=[5 b c;a*b a+c c/b]
x =
5.0000 2.0000 3.0000
2.0000 4.0000 1.5000
矩阵生成不但可以使用纯数字,也可以使用变量。矩阵的元素直接排列在方括号内,每行内的元素使用空格或者逗号分开,行与行之间使用分号隔开。大的矩阵可以分行输入,用回车键代替分号,这和我们平时使用的矩阵形式很相近。例如
a=[1 2 3
4 5 6]
大部分的试验数据使用上面的形式给出的,在处理试验数据中,可以简单的将数据前后加入左右括号,就可以得到矩阵的表示。这种处理可以在脚本文件中进行。
二、矩阵生成
MATLAB提供了很多生成和操作矩阵的函数。下面给出几个创建矩阵的例子。
如果是线性等间距格式生成矩阵,可以使用from:step:to方式。from、step、to分别表示开始值、步长和结束值。例如
a=1:2:10
a =
1 3 5 7 9
还可以使用linspace命令,如:
a=linspace(1,10,5)
a =
1.0000 3.2500 5.5000 7.7500 10.0000
linespace的三个参数表示开始值、结束值和数据个数。数据个数可以省略,缺省值为100。
在画Bode图等应用中,需要使用对数等间隔的数据,可以使用logspace命令生成。Logspace和linspace的参数相同,只是结果不同。
2 矩阵运算
矩阵运算是MATLAB的基础,MATLAB的矩阵运算功能十分强大,并且运算的形式和一般的数学表示十分相似。
一、矩阵的转置
矩阵的转置用符号 ’
>>a=[1 2 3;4 5 6]
a =
1 2 3
4 5 6
>>b=a'
b =
1 4
2 5
3 6
如果矩阵a为复数矩阵,则a’为共轭转置。
a=[1 2;4 5], d=a+a*i,c1=d',c2=conj(d),