Matlab(1)
一、基本操作
1. matlab四则运算规则:先乘除后加减,从左到右
2、对数和指数的表示
sin(pi^0.5)+log(tan(1))
exp(sin(10))
3、类型:matlab变量默认为double
4、who&whos:命令行输入who,可查看当前变量,whos查看变量更多信息
5、isKeyword查看:
ans、复数(i,j)、Inf(∞)、eps(数很小)、NaN(不是一个数值)、pi()
6、命令行clear:clear + 变量名,清楚某个变量;clear,变量全部清除
7、format long(format longE):完全显示小数点后面位数,
(format longE)加E表示科学计数法,format rat(数值转有理数/分数)
8、单行命令末尾加分号,不显示结果
9、clc 清除命令行页面,不清除变量
二、矩阵
1.computing
行向量:A = [1 2 3 4] 列向量:b = [1; 2; 3; 4] (分号就像换行) ———— A*b;b*A
A*b = 30
2. Indexing :
A(3),A的行上三个元素
b(3),b的列上三个元素
ans(1,2),ans矩阵的第一行第二列的元素
ans([1 3] ,[2 4]),选择第1、3行与第2、4行交叉线上的元素
ans(5),矩阵从第一列从上往下数,然后第二列顺次遍历,依次类推的第五个元素
ans(1 3 5)按上述顺序数的第1、3、5个元素排成一行
ans(1 3 ;2 4)按上述顺序数的第1、3个元素排成第一行,第2、4个元素排成第二行
3.Colon Operator
B = 1:100,生成一列数上限100,下限1,步长为1
B = 1:2:100,生成一列数上限100,下限1,步长为2
B = [1:2:100 ;1:5;-2:0.5:0],生成三列数,第一列上限100,下限1,步长为2;第二列上限5,下限1,步长1;第三列上限0,下限-2,步长为0.5。
str = ’a' :2:‘z’,生成一列字符上限‘z’,下限‘a’,步长为2
ans = [3,:] = [ ],将第三行整行变空
4.Array Concatenation
增广矩阵:A =[1 2 ; 3 4];B = [9 9; 9 9];
横向:F = [ A B];纵向:F = [ A ;B];
5.Array Manipulation
A = [1 2 3;4 5 4;9 8 7] ;B = [3 3 3;2 4 9;1 3 1]
A + B(A - B): 每个相同位置上的元素进行相加减
A * B (A / B) : 按照矩阵运算法则进行相乘除
A .* B (A ./ B) : 每个相同位置上的元素进行相乘除
A = [1 2 3;4 5 4;9 8 7] ;a = 2;
A + a (A - a) :矩阵每个位置上的元素相加减2
A / a 或 A ./ a(A * a 或 A .* a ):矩阵每个位置上的元素相乘除
A ^ a :A * A
A .^ a :矩阵A上的每个元素都乘以2
A' : 进行转置操作
6. Some Special Matrix
linsapce(start,end,n):生成一个从start到endn个元素的行向量
eye(n): 生成n*n的矩阵,对角线上元素是1,其余位置都是0
zeros(n1,n2): 生成n1*n2的矩阵,位置上所有元素都是0
ones(n1,n2): 生成n1*n2的矩阵,位置上所有元素都是1
diag([n1,n2]): 括号内元素个数为m,生成m*m阶矩阵,对角线上元素为n1,n2,...,其余位置是0
rend(n1,n2): 生成n1*n2的矩阵,位置上所有元素的数值都是随机的
7.Some Matrix Related Functions
a = [1 2 3;0 5 6;7 0 9]
max(a) 或min(a): 返回矩阵每列最大或最小值的集合
max(max(a)) 或 min(min(a)): 返回矩阵中的最大或最小值
sum(a): 返回矩阵每列元素之和的集合
sum(sum(a)):返回矩阵所有元素之和
mean(a): 返回矩阵每列元素平均值的集合
mean(mean(a)): 返回矩阵所有元素平均值
sort(a): 将每列元素按照从小到大排序,返回排序后的矩阵
sortrows(a): 将每行所有元素按照第一列的元素从小到大排行序,返回排序后的矩阵
size(a): 返回矩阵的行数和列数
length(a): 若a为1*n的矩阵,返回矩阵的长度
find(a == n): 按照第一列从上往下的顺序数过其他列,返回矩阵中元素为n的序数