MATLAB--矩阵()

文章目录

前言

MATLAB作为数学软件计算软件,对于数学运算的性能十分优越,本文作为MATLAB记录关于在MATLAB中关于矩阵的知识。如有错误,还望指正。

概念

在数学上矩阵的定义:由m*n个aij(i=1,2...... ,m;j=1,2......,n)排成的m行n列的数据表。
A = [ a 11 a 12 ⋯ ⋯ a 1 n a 21 a 22 ⋯ ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ ⋯ a m n ] A=\begin{bmatrix} a_{11} a_{12} \cdots \cdots a_{1n} \\ a_{21} a_{22} \cdots \cdots a_{2n} \\ \vdots \ \ \ \ \vdots\ \ \ \ \ \ddots\ \ \ \ \ \vdots \\ a_{m1} a_{m2} \cdots \cdots a_{mn} \\ \end{bmatrix} A= a11a12⋯⋯a1na21a22⋯⋯a2n⋮ ⋮ ⋱ ⋮am1am2⋯⋯amn

只有一行的矩阵称为行向量,只有一列的矩阵称为列向量。

矩阵最初来自方程组的系数与常数构成的方阵。在MATLAB中矩阵以数组的形式存在。一维常数数组等同于向量,二维常数数组等同于矩阵。
注:数组按元素属性分为数值数组、字符数组、结构体数组、元胞数组。矩阵的表示相当于数值数组。是数组大概念的子集。
矩阵 ∈ 数组 矩阵 \in 数组 矩阵∈数组

矩阵构造

MATLAB中矩阵构造可以直接赋值,也提供了特殊矩阵的构造函数。

在此记录特殊函数集合

函数名称 函数功能
ones(n) 构造n*n的1矩阵(矩阵元素全为1)
ones(m,n,···,p) 构建m*n···*p的1矩阵
ones(size(A)) 构建与A同样大小的1矩阵(行列相同)
zeros(n) 构造n*n的0矩阵(矩阵元素全为0)
zeros(m,n,···,p) 构建m*n···*p的0矩阵
zeros(size(A)) 构建与A同样大小的0矩阵(行列相同)
eye(n) 构建n*n的单位矩阵
eye(m*n) 构建m*n的单位矩阵
eye(size(A)) 构建与A同样大小的单位矩阵
magic(n) 构建n*n的每行每列元素和都相等的矩阵
rand(n) 构建n*n的矩阵,其中元素为0~1均匀分布
rand(m,n,···,p) 构建m*n···*p的矩阵,其中元素为0~1均匀分布
randn(n) 构建n*n的矩阵,其中元素为零均值、单位方差正态分布的随机数
randn(m,n,···,p) 构建m*n···*p的矩阵,其中元素为零均值、单位方差正态分布的随机数
diag(x) 构建主对角线元素为x对角矩阵。x=1时即单位矩阵
diag(A,y) 构建由矩阵N的第y条对角线元素组成的列向量
diag(x,y) 构建n+|k|维的矩阵,其中第k条对角线元素取自向量x,其余元素为0
triu(A) 构建和A大小相同的上三角矩阵,主对角线元素为A中对应的元素,其余元素为0
triu(A,k) 构建和A大小相同的上三角矩阵,矩阵的第k条对角线及其以上的元素为A中对应元素,其余为0
tril(A) 构建和A大小相同的下三角矩阵,主对角线元素为A中对应的元素,其余元素为0
tril(A,k) 构建和A大小相同的下三角矩阵,矩阵的第k条对角线及其以下的元素为A中对应元素,其余为0

注:
①:单位矩阵:矩阵元素从左上角到右下角元素全部为1,其余元素全部为0;
A = [ 1 0 ⋯ ⋯ 0 0 1 ⋯ ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ ⋯ 1 ] A=\begin{bmatrix} 1\ 0\cdots \cdots 0 \\ 0\ 1 \cdots \cdots 0 \\ \vdots\ \ \vdots \ \ \ \ddots\ \ \ \vdots \\ 0\ 0\ \cdots \cdots1\\ \end{bmatrix} A= 1 0⋯⋯00 1⋯⋯0⋮ ⋮ ⋱ ⋮0 0 ⋯⋯1
②:rand(n)可以用来生成pn码
③上三角矩阵:
A = [ 1 1 ⋯ ⋯ 1 0 1 ⋯ ⋯ 1 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ ⋯ 1 ] A=\begin{bmatrix} 1\ 1\cdots \cdots 1 \\ 0\ 1 \cdots \cdots 1 \\ \vdots\ \ \vdots \ \ \ \ddots\ \ \ \vdots \\ 0\ 0\ \cdots \cdots1\\ \end{bmatrix} A= 1 1⋯⋯10 1⋯⋯1⋮ ⋮ ⋱ ⋮0 0 ⋯⋯1
④下三角矩阵:
A = [ 1 0 ⋯ ⋯ 0 1 1 ⋯ ⋯ 0 ⋮ ⋮ ⋱ ⋮ 1 1 ⋯ ⋯ 1 ] A=\begin{bmatrix} 1\ 0\cdots \cdots 0 \\ 1\ 1 \cdots \cdots 0 \\ \vdots\ \ \vdots \ \ \ \ddots\ \ \ \vdots \\ 1\ 1\ \cdots \cdots1\\ \end{bmatrix} A= 1 0⋯⋯01 1⋯⋯0⋮ ⋮ ⋱ ⋮1 1 ⋯⋯1
⑤矩阵的对角线概念:
  主对角线:从矩阵左上角到右下角直线上的元素所在的对角线
  次对角线:从矩阵左下角到右上角直线上的元素所在的对角线

相关推荐
Evand J2 小时前
【MATLAB代码介绍】无迹粒子滤波(Unscented Particle Filter),运动目标滤波定位
开发语言·matlab·粒子滤波·upf·无迹
bubiyoushang8882 小时前
MATLAB考虑源荷不确定性的电力系统优化
开发语言·matlab
Cathy Bryant3 小时前
微分几何:度规(度量)metric
笔记·线性代数·矩阵·高等数学·物理
南宫萧幕4 小时前
车辆控制基础:从 EKF 状态估计到非线性 MPC 轨迹跟踪的闭环实现
算法·matlab·汽车·控制·pid
木子墨5165 小时前
LeetCode 热题 100 精讲 | 矩阵与图论进阶篇:矩阵置零 · 螺旋矩阵 · 旋转图像 · 搜索二维矩阵 II · 岛屿数量 · 腐烂的橘子
c++·算法·leetcode·矩阵·力扣·图论
newdf观察者7 小时前
以线性代数的行列式理解数学应用备忘
人工智能·线性代数·机器学习
jy022688797 小时前
线性代数-笔记
笔记·线性代数
视***间7 小时前
小而强筑内核,智无界启新程 —— 视程空间全栈硬件产品矩阵,赋能千行百业边缘智能升级
人工智能·矩阵·边缘计算·视程空间·终端算力·nvidia jetson
阿Y加油吧8 小时前
算法二刷复盘|LeetCode 34&74 二分查找双杀(区间边界 + 二维矩阵)
算法·leetcode·矩阵
简简单单做算法8 小时前
基于Qlearning强化学习的空天异构网络切换判决优化算法matlab仿真
网络·matlab·qlearning·空天异构网络·切换判决