matlab学习笔记1
430/12 不同的显示结果
format short
430/12
ans = 35.8333
format long
430/12
ans =
35.833333333333336
format shortE
430/12
ans =
3.5833e+01
format longE
430/12
ans =
3.583333333333334e+01
format hex
430/12
ans =
4041eaaaaaaaaaab
format bank
430/12
ans =
35.83
format +
430/12
ans =
+
format rat
430/12
ans =
215/6
MATLAB 的矩阵输入
直接输入创建矩阵
format short
%用指令产生数值矩阵
A=[];
x=9;
y=pi/6;
A=[3 5 sin(y);cos(y) x^2 7;x/2 5 1];
A
A = 3×3
3.0000 5.0000 0.5000 0.8660 81.0000 7.0000 4.5000 5.0000 1.0000
%矩阵元素的修改
A(3,3)=0
A = 3×3
3.0000 5.0000 0.5000 0.8660 81.0000 7.0000 4.5000 5.0000 0
A(2,6)=1
A = 3×6
3.0000 5.0000 0.5000 0 0 0 0.8660 81.0000 7.0000 0 0 1.0000 4.5000 5.0000 0 0 0 0
%复数矩阵的建立和输入
a=2.7;
b=13/25;
C=[1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+1]
C = 2×3 complex
1.0000 + 0.0000i 5.4000 + 0.5200i 0.8544 + 0.0000i
0.7071 + 0.0000i 5.3000 + 0.0000i 4.5000 + 0.0000i
R=[1,2,3;4,5,6];
M=[11,12,13;14,15,16];
CN=R+i*M
CN = 2×3 complex
1.0000 +11.0000i 2.0000 +12.0000i 3.0000 +13.0000i
4.0000 +14.0000i 5.0000 +15.0000i 6.0000 +16.0000i
%大矩阵的生成
exm=[ 456 468 873 2 579 55
21 687 54 488 8 13
65 4567 88 98 21 5
456 68 4589 654 5 987
5488 10 9 6 33 77]
exm = 5×6
456 468 873 2 579 55 21 687 54 488 8 13 65 4567 88 98 21 5 456 68 4589 654 5 987 5488 10 9 6 33 77
size(exm)
ans = 1×2
5 6
%多维数组的创建
A1=[1,2,3;4,5,6;7,8,9];
A2=A1';
A3=A1-A2;
A4(:,:,1)=A1;
A4(:,:,2)=A2;
A4(:,:,3)=A3;
A4
A4 =A4(:,:,1) =
1 2 34 5 6
7 8 9
A4(:,:,2) =
1 4 72 5 8
3 6 9
A4(:,:,3) =
0 -2 -42 0 -2
4 2 0
由函数创建和修改矩阵
%产生一个3×4 随机矩阵
R=rand(3,4)
R = 3×4
0.5254 0.4849 0.7413 0.1500 0.5303 0.3935 0.5201 0.5861 0.8611 0.6714 0.3477 0.2621
%产生一个在区间[10, 20]内均匀分布的4 阶随机矩阵
A=10;
B=20;
X=A+(B-A)*rand(4)
X = 4×4
10.4445 16.8780 16.8342 13.3086
17.5493 13.5923 17.0405 14.2431
12.4279 17.3634 14.4231 12.7027
14.4240 13.9471 10.1958 11.9705
%产生均值为0.6,方差为0.1 的4 阶矩阵
mu=0.6;
sigma=0.1;
x=mu+sqrt(sigma)*randn(4)
x = 4×4
0.9110 0.9076 0.4691 0.4634 0.5059 0.4348 0.4614 0.8052 0.9617 0.6558 1.2335 0.4861 0.4319 0.9070 0.9007 0.8232
%0~1 分布的随机矩阵
ra=rand(2,4)
ra = 2×4
0.7689 0.8620 0.5144 0.5880 0.1673 0.9899 0.8843 0.1548
%利用diag 产生对角阵
a=randn(5,5);
d=diag(a);
D=diag(d);
a,d,D
a = 5×5
-2.1935 -0.5771 0.5197 -0.6667 0.1803
-0.3334 0.1440 -0.0142 0.8641 0.55090.7135 -1.6387 -1.1555 0.1134 0.6830 0.3174 -0.7601 -0.0095 0.3984 1.1706 0.4136 -0.8188 -0.6898 0.8840 0.4759
d = 5×1
-2.19350.1440
-1.1555
0.3984 0.4759
D = 5×5
-2.1935 0 0 0 0
0 0.1440 0 0 0 0 0 -1.1555 0 0 0 0 0 0.3984 0 0 0 0 0 0.4759
%提取矩阵的子阵
B=magic(5); %产生一个五阶魔方阵B
B1=B(1:2,[1,3,5]); %提取B 阵的第1 行,第2 行的第1,3,5 个元素
B2=B([3,1],:); %提取B 阵的第三行和第一行全部元素
B([1,3],[2,4])=zeros(2);%使得B 阵的第一行和第三行第2,4 个元素为0
L=B(1,:)<5; %标出B 阵的第一行中小于5 的元素
B3=B(1,L); %获得B 阵的第一行中小于5 的子向量
B,B1,B2,L,B3
B = 5×5
17 0 1 0 15 23 5 7 14 16 4 0 13 0 22 10 12 19 21 3 11 18 25 2 9
B1 = 2×3
17 1 15 23 7 16
B2 = 2×5
4 6 13 20 22 17 24 1 8 15
L = 1×5 logical 数组
0 1 1 1 0B3 = 1×3
0 1 0
%矩阵的旋转和转置的区别
A=[1,2,3,4;5,6,7,8;9,10,11,12];
B1=rot90(A);
BT=A';
B2=rot90(A,2);
A,B1,BT,B2
A = 3×4
1 2 3 4 5 6 7 8 9 10 11 12
B1 = 4×3
4 8 12 3 7 11 2 6 10 1 5 9
BT = 4×3
1 5 9 2 6 10 3 7 11 4 8 12
B2 = 3×4
12 11 10 9 8 7 6 5 4 3 2 1
%矩阵的变维
A=[1,2,3,4;5,6,7,8;9,10,11,12];
B=reshape(A,2,6)
B = 2×6
1 9 6 3 11 8 5 2 10 7 4 12
%部分元素的截取
A=[1,2,3,4;5,6,7,8;9,10,11,12];
LA=tril(A,-1);
UA=triu(A,1);
LA,UA
LA = 3×4
0 0 0 0 5 0 0 0 9 10 0 0
UA = 3×4
0 2 3 4 0 0 7 8 0 0 0 12