news 2026/4/23 11:12:08

MATLAB矩阵的一些用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MATLAB矩阵的一些用法

1.写在前面

虽然很基础,但是还是想再复习一下。

2.矩阵的序号和下标

%% 矩阵的序号和下标 %注意,在matlab中矩阵的序号是按列存储的 %以A=[1,2,3;4,5,6;7,8,9;10,11,12]为例 A=[1,2,3;4,5,6;7,8,9;10,11,12]; [m,n]=size(A); a=A(4,2) ;%=11 b=A((2-1)*m+4); %=11 %可以看到a=b,也就是说,A(i,j)=A((j-1)*m+i)

主要的结论就是:若A是m×n矩阵,那么A(i,j)=A((j-1)*m+i),这个点很小,但是有的时候写代码经常忘记

3.矩阵拆分(就是拿出原有矩阵的一部分赋值给新的矩阵)

%% 矩阵拆分 j=3; B=A(:);%得到按列堆起来的矩阵(不是[1;2;3;4;5;6;7;8;9;10;11;12]而是[1;4;7;10;2;5;8;11;3;6;9;12]) C=A(:,j); %就是把A的第3列赋给C,C现在为[3,6,9,12] D=A(3:4,1:2);%D=[7,8;10,11]

4.矩阵运算

%% 矩阵的运算 %矩阵加减:维数相同对应元素相加减,维数不同则报错 %矩阵乘法:A为m×n矩阵,B为n×p矩阵,C=A*B为m×p矩阵 %矩阵除法:A为非奇异方阵:左除:A\B=inv(A)*B,右除:B/A=B*inv(A) %矩阵乘方:A^b,要求A为方阵,b为标量 %还有点除,点乘。 a=[1,2;3,4]; b=[3,5;5,8]; a.*b %[3,10;15,32]就是对应元素相乘 a./b %[0.3333,0.4;0.6,0.5]就是对应元素相除 %矩阵求和 X=[0,1,2;3,4,5]; a=sum(X,1); %数组X的第1维元素求和,得到一个行向量[3,5,7](每一列求和) b=sum(X,2); %数组X的第2维元素求和,得到一个列向量[3;12](每一行求和)

重点是左除和sum的用法

  1. 若A为非奇异方阵:左除:A\B=inv(A)*B,右除:B/A=B*inv(A)

  2. X=[0,1,2;3,4,5];

    a=sum(X,1); %数组X的第1维元素求和,得到一个行向量[3,5,7](每一列求和)

    b=sum(X,2); %数组X的第2维元素求和,得到一个列向量[3;12](每一行求和)

5.矩阵其他运算

%% 矩阵其他运算

%inv:矩阵求逆

%det:求行列式的值

%eig:求矩阵的特征向量和特征值

A=[1,2,3;4,5,6;7,8,9];

[V,D]=eig(A) %V是特征向量,D是特征值构成的对角阵

E=eig(A);%E是A的全部特征值构成的列向量

%trace 求矩阵的迹

%rank 求矩阵的秩

6.特殊矩阵

%% 特殊矩阵

%zeros 全零矩阵

%ones 全1矩阵

%eye 单位矩阵(对角线位1)

%rand:0~1均匀分布的随机矩阵

%randn 生成均值为0,方差为1的标准正态分布随机矩阵

7. 善于运用点乘实现循环

要实现1+2+2^2+2^3+...2^63可以直接用一行matlab代码搞定

a=sum(2.^[0:63])
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 20:32:10

FlutterOpenHarmony进度指示器组件开发

前言 进度指示器是应用中反馈操作状态的重要组件,它告诉用户当前正在进行的操作以及完成进度。在笔记应用中,文件上传、数据同步、批量操作等场景都需要使用进度指示器。一个设计良好的进度指示器应该清晰地传达进度信息,同时不过度干扰用户的…

作者头像 李华
网站建设 2026/4/23 5:03:37

Excalidraw图解搜索引擎:倒排索引工作原理

Excalidraw图解搜索引擎:倒排索引工作原理 在搜索引擎背后,有一个看似简单却极其强大的数据结构——倒排索引。它让百万级文档的关键词查询能在毫秒内完成。但如果你曾试图向同事解释“为什么搜‘猫’能瞬间找出所有相关文章”,就会发现&…

作者头像 李华
网站建设 2026/4/20 9:46:20

C语言加法函数实现详解

模块四------模块化程序设计01------函数的定义&#xff08;第一题&#xff09;(本人答案与分析&#xff09;1.自定义一个相加函数&#xff0c;实现对输入的两个数的相加&#xff0c;并在主函数中输出两个数的和代码如下&#xff1a;#include <stdio.h> int add(int a,in…

作者头像 李华
网站建设 2026/4/19 14:25:49

Excalidraw图层管理:避免元素重叠混乱

Excalidraw 图层管理&#xff1a;如何在无界面干预下实现清晰的元素层级控制 想象这样一个场景&#xff1a;你正在和团队远程协作绘制一个微服务架构图。画布上已经堆满了容器、服务节点、连接线和注释标签&#xff0c;突然你想修改最开始画的那个“云平台”背景框——但它早就…

作者头像 李华
网站建设 2026/4/16 21:27:08

Excalidraw团队定价方案:中小企业如何节省开支?

Excalidraw团队协作方案&#xff1a;中小企业如何以极低成本实现高效可视化协同&#xff1f; 在远程办公常态化、敏捷开发深入落地的今天&#xff0c;一个看似不起眼但影响深远的问题浮出水面&#xff1a;如何让团队成员快速对齐复杂想法&#xff1f; 无论是产品原型讨论、系统…

作者头像 李华
网站建设 2026/4/18 15:25:21

与AI相比,人机环境系统智能更像是一种“活”的智能

与AI相比&#xff0c;人机环境系统智能的“活的”特性&#xff0c;本质在于其以“人-机-环境”三元交互为核心&#xff0c;实现了生物智能般的“活性”——即动态适应、价值理解、意向性算计与自我演化的能力&#xff0c;而传统AI&#xff08;如具身智能、大模型&#xff09;则…

作者头像 李华