台大郭彦甫教授Matlab讲解笔记(一)
Introduction
对于一个软件的学习,首先要认识它的界面,了解各个窗口。我用的是2015b版的MATLAB。
大致分为四个窗口。
- 当前文件夹:展示了电脑中的文档,可从这里找到并double click打开文件。
- 命令行窗口:顾名思义,你下命令的地方。
- 工作区:用于存放计算过程中的变量名和它的值。
- 命令历史记录:用于存放历史命令。
常用命令
- who:查看变量名称。
- whos:查看变量名称及类型。
- iskeyword:查看MATLAB中的关键字。
- clc:清除命令行窗口。
- clear:清除工作区所有变量,意味着你整个计算过程被清除,谨慎使用。
- clear 变量名:清除该变量。
- format 数据类型:数据类型转换。
help
很重要的工具,就像MATLAB的说明书,要好好利用。MATLAB十分强大,你不可能熟悉它的每个函数和用法,通过这个工具你可以详细了解函数,里面还给了官方的例子。
- 右上角的搜索文档内输入函数名称
- 命令行窗口输入help 函数名,点击enter
- on-line help,网页内输入"matlab 函数名称"
Special variables and constants
- ans :若结果没有赋给新变量,暂时保存在这个变量中。
- i , j : 复数。
- Inf : 无穷大
- eps : 2.2204e-16
- NaN : not a number
- pi : π
MATLAB as calculator
Oprators
基本的运算符:+,-,*,/,^
优先级:() > ^ > *,/ > +,-
Embedding Functions(复合函数)
多层嵌套的函数可转化为多个函数分别计算
eg: sin(cos(pi)) = cos(pi);sin(ans)
Array operation
矩阵运算要熟悉 linear algera。
- row vector
a=[1 2 3 4 ]
- column vector
b=[1; 2; 3; 4]
- matrix
A=[1 2 3; 4 5 6; 7 8 9]
- array indexing
A(8)
输出第八个元素6(MATLAB里按列且从1开始数)
A([1 3 5])
输出第一个、第三个、第五个元素,输出结果为: 1 7 5
A([1 3; 1 3])
输出结果为:
这里的semicolon可以看做换行的标志。
A(3,2)
输出结果为 8. 可以看做坐标的形式,取第三行第二列的element。
A([1 3],[1 3])
还可以当作坐标的形式,逗号前是行,取第一行和第三行;逗号后是列,取第一列和第三列;交叉部分就是被取出来的element,且取出来也是矩阵的形式。
利用以上方法可以给矩阵赋值,替换其中的某些元素。
- colon operator
B = 1:5
B = 1:2:5
str = ‘a’:2:‘z’
当有一个冒号时,冒号前的数字表示开始,冒号后的数字表示结束;两个冒号时中间的数字表示步长,前边的数字是开始,后边的数字是结束;字符数组输入也可用这种办法。
- delet a row or a column
A(3,:)
A(3,:)=[]
将A矩阵的第三行删掉,利用下面将学的转置可将某列删掉。
- operators on array
下表中缺少转置符号 ’
可以自己在MATLAB里试一下。
-
some special matrix
eye(n):n阶单位阵
zeros(n1,n2):n1×n2阶全零矩阵
ones(n1,n2):n1×n2阶全1矩阵
diag():对角阵 -
some matrix related functions
max(A)
输出 7 8 9.输出每列中最大的数。
max(max(A))
输出 9. 输出矩阵中最大的数。
min()求最小值,sum()求和,mean()求平均值用法与max()一样。
sort(B)
sortrows(B)
size(B)
length()
输出的是行数或列数较大的那一个。