常见矩阵生成及矩阵运算
一、 常用矩阵生成
1. 零矩阵
A=zeros(N) %生成 NXN 的全零矩阵
A=zeros(M,N) %生成 M×N的全零矩阵
A=zeros(M,N,P,…) %生成 M×N×P 的全零矩阵
A=zeros(size(B)) %生成和矩阵 B 维数相同的全零矩阵
举例:
clc
clear all
A=zeros(5);%5阶0矩阵
A1=zeros(3,4);%3行4列
A2=zeros(3,4,3)
B=[1,2,3,4;5,6,7,8;10,11,12,13]
A3=zeros(size(B));
2. 单位矩阵
A=eye(N) %生成 NXN 的单位矩阵
A=eye(M, N) %生成 M×N 的单位矩阵,对角元素为 1,其余元素为 0
A=eye(size(B)) %生成和矩阵 B 维数相同的单位矩阵
举例:
clc
clear all
C=eye(5); %单位阵
C1=eye(3,4);
C3=eye(size(B));
3. 全1矩阵
A=ones(N) %生成 N×N 的全 1 矩阵
A=ones(M,N) %生成 M×N 的全 1 矩阵
A=ones(M,N,P,…) %生成 M×N×P 的全 1 矩阵
A=ones(size(B)) %生成和矩阵 B 维数相同的全 1 矩阵
4. 幻方矩阵
M=magic(n) %生成 n 阶幻方矩阵,该矩阵由 1-n2之间任意整数构造而成且每行每列的和都相等
举例:
%幻方矩阵(一般可逆)
M=magic(3) %3x3的方阵,取值为1~n的平方,并进行排列,每一行、每一列的和相等
5. 随机整数排列
p=randperm(n) %生成正整数 1,2,…,n 的随机排列
举例:
clc
clear all
%随机整数排列(等步长)
p=randperm(10) % 1~10的随机排列
p1=randperm(10)*0.1 % 0.1~1,步长为0.1的随机排列
p2=randperm(