线性代数中涉及到的matlab命令-第二章:矩阵及其运算

这篇具有很好参考价值的文章主要介绍了线性代数中涉及到的matlab命令-第二章:矩阵及其运算。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1,矩阵定义

2,矩阵的运算

3,方阵的行列式和伴随矩阵 

4,矩阵的逆 

5,克莱默法则 

6,矩阵分块 


1,矩阵定义

矩阵与行列式的区别:

(1)形式上行列式是数表加两个竖线,矩阵是数表加大括号或中括号;

(2)行列式可计算得到一个值,矩阵不能;

(3)两个行列式相加与两个矩阵相加不同;

(4)行列式乘以一个数k,可将k乘到行列式任一行或任一列,矩阵乘以k,k与矩阵的每个元素相乘;

(5)行列式是n*n的数表,矩阵可以是m*n的数表;

行数和列数都为n的矩阵称为n阶矩阵,或叫n阶方阵;

只有一行的矩阵称为行矩阵(也叫行向量)在Matlab中的表示方法:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

只有一列的矩阵称为列矩阵(也叫列向量)在Matlab中的表示方法:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

两个矩阵A、B的行数相同,并且列数也相同时,称它们是同型矩阵,如果他们的对应元素也相同,则A = B;

使用size命令获得矩阵的行数和列数:

clc;

A = [2 4 6;
     3 5 7];

size(A)

使用isequal判断两个矩阵是否相等:

clc;

A = [2 4 6;
     3 5 7];

B = [2 4 6;
     3 5 7];

isequal(A,B)

单位矩阵:是一个方阵,主队角元素都为1,其他元素是0,一般用E表示

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

矩阵A乘以单位矩阵E结果还是矩阵A,并且左乘或右乘单位矩阵E一样:

clc;

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

E = eye(3); 

EA = E*A

AE = A*E

对角矩阵:是一个方阵,主对角元素不为0,其他元素均为0;

clc;

v = [1,2,3,4];

A = diag(v)

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

2,矩阵的运算

 矩阵的加法:线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;

A = [1 1 1 1;
     2 2 2 2;
     3 3 3 3];

B = [0 0 0 0;
     1 1 1 1;
     2 2 2 2];

C = A + B

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵 数与矩阵相乘:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;

A = [1 1 1 1;
     2 2 2 2;
     3 3 3 3];

k = 2;

C = k*A

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵矩阵相乘:一个矩阵的列与另一个矩阵的行相同时,两个矩阵才能相乘;

clc;

A = [1 1 1;
     2 2 2];

B = [1 1;
     2 2;
     3 3];

C = A*B

D = B*A

 线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

可见矩阵A*B 不等于B*A;

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

 矩阵的幂:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

以下例子为四个城市之间开通的航线情况,0代表两个城市间没有航线,1代表开通有航线,建立城市间是否有航线的模型即一个4阶矩阵A,用线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵表示从i城市到j城市的航线数量,对A求2次幂可以得到城市i有几条双向航线(A的2次幂矩阵的对角线元素),以及从城市i经过一次中转到城市j的单线航线数量。

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

对单线航线矩阵A的2次幂的含义尽心解释: 

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵 

对角矩阵的幂,对角线上元素按幂运算:

clc;

v = [1,2,3];

A = diag(v)

A^3

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

矩阵的转置:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;

A = [1 1 1;
     2 2 2];

B = A'

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵 一个方阵和它的转置矩阵相加可以产生一个对称矩阵,以下程序可以产生一个对称阵:

clc;

A = rand(3);

B = A';

C= A+B

 线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

3,方阵的行列式和伴随矩阵 

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;

A = rand(3);

a = det(A);

b = det(A');

abs(a-b) < eps
clc;

A = rand(3);

B = rand(3);

format short

a = det(A*B);
b = det(A)*det(B);

abs(a-b) < eps
clc;

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

k = 2;

B = k*A;

det(B) == (k^3)*det(A)

 线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;


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

A_adj = adjoint(A)     %adjoint求A的伴随矩阵

C = A*A_adj;
D = A_adj*A;
E = eye(3);
EA = E*det(A);



A13 = A;

A21 = A;

A13(1,:) = [];

A13(:,3) = [];

A21(2,:) = [];

A21(:,1) = [];

D_A13 = (-1)^(1+3)*det(A13)   %A(1,3)的代数余子式

D_A21 = (-1)^(2+1)*det(A21)   %A(2,1)的代数余子式

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

 使用Matlab中的adjoint命令,A产生的伴随阵A_adj,A*A_adj = A_adj *A = E*det(A):

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

4,矩阵的逆 

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

只有方阵才有逆矩阵,矩阵可逆的充分必要条件是det(A)不等于0。

Matlab中可以使用inv(A)或A^(-1)计算A的逆矩阵,也可以使用上图中定理2计算逆矩阵:

clc;

A = rand(3);

B = inv(A)

C = A^(-1);

A_mul_B = A*B

B_mul_A = B*A;

A_adj = adjoint(A);

1/det(A)*A_adj           %根据定理2计算逆矩阵

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵 同样使用定理2可以反向计算矩阵A的伴随阵:

clc;

A = rand(3);

A_adj = adjoint(A)

det(A)*inv(A)          %定理2计算伴随阵

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

5,克莱默法则 

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

分别用逆矩阵、左除、克莱默法则计算下边例题,计算结果相同:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

clc;

%以下程序用于求n元非齐次方程组的解, 方程组的形式为Ax = b,求x

A = [1,1,1,1;
     1,2,-1,4;
     2,-3,-1,-5;
     3,1,2,11];     %方程组系数矩阵

b = [5;-2;-2;0];     %方程组右端常数矩阵

A1 = A;
A1(:,1) = b;     

A2 = A;
A2(:,2) = b;

A3 = A;
A3(:,3) = b;

A4 = A;
A4(:,4) = b;

if det(A) ~= 0                    %判断方程组是否有解

%%三种求方程组解的形式

  x = inv(A)*b                    %1,用逆矩阵的方式求方程组的解

  x = A\b                         %2,用左除的方式求方程组的解

  x1 = det(A1)/det(A)             %3,用克莱默法则求方程组的解
  x2 = det(A2)/det(A)
  x3 = det(A3)/det(A)
  x4 = det(A4)/det(A)

else
    disp("det(A) = 0,方程组无解");
end

6,矩阵分块 

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

使用下边Matlab命令运算得到逆矩阵:

clc;

A = [3 0 0 ;
     0 2 4 ;
     0 3 1 ];

C = mat2cell(A,[1,2],[1,2]);      %mat2cell函数将原矩阵分块为四个cell,行数分别为1和2行,列数分别为1列和2列

C1 = C{1};                       %将cell转化为矩阵
C2 = C{2};
C3 = C{3};
C4 = C{4};

inv_A = inv(A)              %使用inv命令直接计算逆矩阵

inv_C1 = inv(C1);           %对分块后的非0矩阵求逆矩阵
inv_C4 = inv(C4);

inv_C = [inv_C1,C3;
         C2,inv_C4]        %对原矩阵分块后对非0矩阵分别求逆矩阵后再组合在一起

运行结果:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

矩阵分块后转置:

clc;

A = randi([0,10],3,4)           %产生一个3行4列从0-10的随机数元素的矩阵

A_T = A'

C = mat2cell(A,[1,2],[2,2]);      %mat2cell函数将原矩阵分块为四个cell,行数分别为1和2行,列数分别为2列和2列

C1 = C{1,1};                       %将cell转化为矩阵
C2 = C{1,2};
C3 = C{2,1};
C4 = C{2,2};

C1 = C1';
C2 = C2';
C3 = C3';
C4 = C4';

C_T = [C1,C3;
       C2,C4]

 运行结果:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵

分块矩阵相乘:

clc;

A = [3 0 0 2 5;
     0 2 4 3 4;
     0 3 1 2 6];

B = [3 0 0;        %矩阵A可以分块为B和C矩阵
     0 2 4;
     0 3 1];

C = [2 5;
     3 4;
     2 6];

D = randi([1,10],2,3);

D*A

D*B 
D*C

运算结果:

线性代数中涉及到的matlab命令-第二章:矩阵及其运算,线性代数,matlab,矩阵 

 文章来源地址https://www.toymoban.com/news/detail-717745.html

到了这里,关于线性代数中涉及到的matlab命令-第二章:矩阵及其运算的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 线性代数第二章矩阵及其运算详解

    一.线性方程组和矩阵 1.概念 如图所示,该矩阵称为 m行n列矩阵 若行数和列数都等于n,则该矩阵称为 n阶方阵 两个矩阵的行数相等,列数也相等,就称它们为 同型矩阵 若A=(aij)和B=(bij)是同型矩阵,且aij=bij(i=1,2,...,m;j=1,2,...,n),则称 矩阵A与矩阵B相等 ,记作 A=B 2.特殊

    2024年01月25日
    浏览(52)
  • 线性代数(魏福义)——第二章:矩阵及其向量特征

    矩阵 是一个 矩形数表 ,它是研究线性方程组、向量及其变换的重要工具 在数学中,矩阵是一个按照长方形排列的复数或实数集合,它是将一组 有序的数据 视为“ 整体量 ”进行 表述 和 运算 ,从而使问题的表述更加简洁。 2.1.1 矩阵 由 m × n 个数aij排成的 m行n列 的 数表

    2024年02月04日
    浏览(49)
  • 线性代数(基础篇):第一章:行列式 、第二章:矩阵

    1. A可逆 ⇦⇨①|A|≠0 ⇦⇨②r(A)=n,A满秩 ⇦⇨③A的列向量 α₁,α₂,…α n 线性无关 ⇦⇨④Ax=0仅有零解 (系数矩阵的秩 = 列数,列满秩) ⇦⇨⑤ A的特征值均不为0 【17年5.】 2.  A不可逆 ⇦⇨①|A|=0 ⇦⇨②r(A)n,A不满秩 ⇦⇨③A的列向量 α₁,α₂,…α n 线性相关 ⇦⇨④Ax=0有非

    2024年02月16日
    浏览(53)
  • 从零开始学数据分析之——《线性代数》第二章 矩阵

    元素全为实数的矩阵称为实矩阵  元素全为负数的矩阵称为复矩阵 只有一行(列)的矩阵称为行(列)矩阵 元素全为零的矩阵称为零矩阵 行数和列数都等于n的矩阵称为n阶矩阵或n阶方阵 主对角线元素全为1,其余元素全为0的矩阵称为单位矩阵,记作E或I 两个矩阵行数和列数

    2023年04月23日
    浏览(50)
  • 【课后习题】 线性代数第六版第二章 矩阵及其运算 习题二

    习题二 1. 计算下列乘积: (1) ( 4 3 1 1 − 2 3 5 7 0 ) ( 7 2 1 ) left(begin{array}{rrr}4 3 1 \\\\ 1 -2 3 \\\\ 5 7 0end{array}right)left(begin{array}{l}7 \\\\ 2 \\\\ 1end{array}right) ⎝ ⎛ ​ 4 1 5 ​ 3 − 2 7 ​ 1 3 0 ​ ⎠ ⎞ ​ ⎝ ⎛ ​ 7 2 1 ​ ⎠ ⎞ ​ ; (2) ( 1 , 2 , 3 ) ( 3 2 1 ) (1,2,3)left(begin{array}{l}3 \\\\ 2 \\\\ 1end{ar

    2024年02月05日
    浏览(47)
  • matlab线性代数常用函数

    矩阵 A mathbf{A} A 行列式 det(A) 矩阵 A mathbf{A} A 的迹 trace(A) 矩阵 A mathbf{A} A 的秩 rank(A) 矩阵 A mathbf{A} A 的范数 norm(A) 矩阵 A mathbf{A} A 的特征多项式 poly(A) 这是数值法求解,解析法可以用 charppoly ,新版本方法可能有改变 矩阵 A mathbf{A} A 的多项式求值 poly(a,A) ,a是多项式系数的

    2024年02月07日
    浏览(57)
  • matlab 入门(三)线性代数

    在MATLAB中,用“A^n”来计算矩阵A的n次方, 用“sqrtm”函数来计算矩阵的开方 (sqrtm(A)求的是满足X*X=A的矩阵X。) 矩阵对数运算与矩阵指数运算互为逆运算, 可以分别用函数expm和logm来实现。 Expm: 以e为底对矩阵求指数,并不是对每个元素求指数,对每个元素求指数的指令是ex

    2024年01月19日
    浏览(46)
  • 矩阵分解是计算机科学中的一个重要研究领域,涉及到向量空间理论、线性代数、密码学等领域。以下是100篇热门博客文

    作者:禅与计算机程序设计艺术 矩阵分解是计算机科学中的一个重要研究领域,涉及到向量空间理论、线性代数、密码学等领域。在机器学习和深度学习等领域中,矩阵分解被广泛应用。本文将介绍矩阵分解的相关原理、实现步骤以及应用示例。 2.1 基本概念解释 矩阵分解是

    2024年02月15日
    浏览(60)
  • 【算法小记】——机器学习中的概率论和线性代数,附线性回归matlab例程

    内容包含笔者个人理解,如果错误欢迎评论私信告诉我 线性回归matlab部分参考了up主DR_CAN博士的课程 在回归拟合数据时,根据拟合对象,可以把分类问题视为一种简答的逻辑回归。在逻辑回归中算法不去拟合一段数据而是判断输入的数据是哪一个种类。有很多算法既可以实现

    2024年01月24日
    浏览(45)
  • MATLAB数值分析学习笔记:线性代数方程组的求解和高斯消元法

    工程和科学计算的许多基本方程都是建立在守恒定律的基础之上的,比如质量守恒等,在数学上,可以建立起形如 [A]{x}={b} 的平衡方程。其中{x}表示各个分量在平衡时的取值,它们表示系统的 状态 或 响应; 右端向量{b}由无关系统性态的常数组成通常表示为 外部激励。 矩阵

    2023年04月15日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包