一、向量
1、生成向量的方法
a、直接输入法
b、冒号生成发
>> a=1:5:50 起始值是1,末尾值是50,以5增长
a =
1 6 11 16 21 26 31 36 41 46
>> b=50:-5:1
b =
50 45 40 35 30 25 20 15 10 5
c、线性等分法
>> c=linspace(1,50,6) 1为初始值,50为末尾值,6是将50等分为6个数
c =
1.0000 10.8000 20.6000 30.4000 40.2000 50.0000
2、向量运算
a、向量与数的运算:加法、减法、乘法、除法
向量与数加减法
>> a=linspace(1,50,5)
a =
1.0000 13.2500 25.5000 37.7500 50.0000
>> a+10
ans =
11.0000 23.2500 35.5000 47.7500 60.0000
>> a-10
ans =
-9.0000 3.2500 15.5000 27.7500 40.0000
b、向量与向量的运算:加减、点积、叉积、混合积
(1)向量与向量加减法(对应元素相加减)向量维数需相同
>> a=linspace(1,50,5)
a =
1.0000 13.2500 25.5000 37.7500 50.0000
>> b=linspace(50,20,5)
b =
50.0000 42.5000 35.0000 27.5000 20.0000
>> a-b
ans =
-49.0000 -29.2500 -9.5000 10.2500 30.0000
(2)向量点积(dot函数)
>> a=[1,2,3,4];
b=[4,3,2,1]
b =
4 3 2 1
>> dot(a,b) (点积函数)
ans =
20
(3)向量叉积(cross函数)
{
备注:
a=(a1,b1,c1)
b=(a2,b2,c2)
向量a×向量b=
| i j k|
|a1 b1 c1|
|a2 b2 c2|
=(b1c2-b2c1,c1a2-a1c2,a1b2-a2b1)
}
>> cross(a,b)
??? Error using ==> cross at 37
A and B must have at least one dimension of length 3. 报错,要求维数必须是3
>> a=[1,2,3]
a =
1 2 3
>> b=[3,2,1]
b =
3 2 1
>> cross(a,b)
ans =
-4 8 -4
(4)向量混合积
>> a=[1,2,3]
a =
1 2 3
>> b=[3,2,1]
b =
3 2 1
>> c=[7,8,9]
c =
7 8 9
>> cross(a,dot(b,c))
??? Error using ==> cross at 31
A and B must be same size.
>> dot(a,cross(b,c))
ans =
0
二、矩阵
1、矩阵生成方法
a、直接输入法
>> a=[1,2,3;4,5,6;7,8,9] 每一行用分号隔开,最后一行不需要分号
a =
1 2 3
4 5 6
7 8 9
b、利用M文件生成矩阵
2、矩阵的运算
加减法
>> a=[1,2,3;4,5,6;7,8,9]
a =
1 2 3
4 5 6
7 8 9
>> b=[7,8,9;4,5,6;1,2,3]
b =
7 8 9
4 5 6
1 2 3
>> a+b 对应元素相加
ans =
8 10 12
8 10 12
8 10 12
>> a-b 对应元素相减
ans =
-6 -6 -6
0 0 0
6 6 6
乘法
除法
>> a=[1,2,3,4;5,6,7,8]
a =
1 2 3 4
5 6 7 8
>> b=[1,1;2,2;3,3;4,4]
b =
1 1
2 2
3 3
4 4
>> a*b
ans =
30 30
70 70
>> a/2
ans =
0.5000 1.0000 1.5000 2.0000
2.5000 3.0000 3.5000 4.0000
乘方
开方
点运算
三、实例
1、生成一个6*6的随机数矩阵并求解该矩阵的秩
>> a=rand(6)
a =
0.6948 0.7655 0.7094 0.1190 0.7513 0.5472
0.3171 0.7952 0.7547 0.4984 0.2551 0.1386
0.9502 0.1869 0.2760 0.9597 0.5060 0.1493
0.0344 0.4898 0.6797 0.3404 0.6991 0.2575
0.4387 0.4456 0.6551 0.5853 0.8909 0.8407
0.3816 0.6463 0.1626 0.2238 0.9593 0.2543
>> rank(a)
ans =
6
2、绘制三维图形
>> [x,y]=meshgrid([-4:0.5:4]);
>> z=sqrt(x.^2+y.^2);
>> surfc(x,y,z)
3、通过GUI设计信息框
>> msgbox('信息警告!','提示框','warn')