数学建模-MATLAB课件定稿 第五讲 线性代数中的数值计算问题

2025-11-12

第五讲 线性代数中的 数值计算问题

【引 例 】求下列三阶线性代数方程组的近似解

2 x1 5 x 2 4 x3 5 x1 5 x 2 2 x3 6 x 2 x 4 x 5 2 3 1MATLAB程序为: A=[2 -5 4;1 5 -2;-1 2 4];

b=[5;6;5];x=A\b

在MATLAB命令窗口,先输入下列命令构造 系数矩阵A和右端向量b:A=[2 -5 4;1 5 -2;-1 2 4]A = 2 1 -1 -5 5 2 4 -2 4

b=[5;6;5]b = 5 6 5

然后只需输入命令x=A\b即可求得解x:x=A\bx = 2.7674 1.1860 1.3488

一、 特殊矩阵的实现

一、 特殊矩阵的实现

常见的特殊矩阵有零矩阵、幺矩阵、单位矩阵、三角 形矩阵等,这类特殊矩阵在线性代数中具有通用性;还 有一类特殊矩阵在专门学科中有用,如有名的希尔伯特 (Hilbert)矩阵、范德蒙(Vandermonde) 矩阵等。 1.零矩阵:所有元素值为零的矩阵称为零矩阵。零矩阵可 以用zeros函数实现。zeros是MATLAB内部函数,使用格式 如下: zeros(m):产生m m阶零矩阵; zeros(m,n):产生m n阶零矩阵,当m=n时等同于 zeros(m); zeros(size(A)):产生与矩阵A同样大小的零矩阵。

一、 特殊矩阵的实现

2.幺矩阵:所有元素值为1的矩阵称为幺矩阵。 幺矩阵可以用ones函数实现。它的调用格式与 zeros函数一样。 【例1】 试用ones分别建立3 2阶幺矩阵、和 与前例矩阵A同样大小的幺矩阵。 用ones(3,2) 建立一个3 2阶幺阵: ones(3,2) % 一个3 2阶幺阵ans =1 1 1 1 1 1

一、 特殊矩阵的实现

3.单位矩阵:主对角线的元素值为1、其余元素值为0的 矩阵称为单位矩阵。它可以用MATLAB内部函数eye建立, 使用格式与zeros相同。 4.数量矩阵:主对角线的元素值为一常数d、其余元素 值为0的矩阵称为数量矩阵。显然,当d=1时,即为单位 矩阵,故数量矩阵可以用eye(m)*d或eye(m,n)*d建立。

5.对角阵:对角线的元素值为常数、其余元素值为0的 矩阵称为对角阵。我们可以通过MATLAB内部函数diag, 利用一个向量构成对角阵;或从矩阵中提取某对角线构 成一个向量。使用格式为diag(V)和diag(V,k)两种。

一、 特殊矩阵的实现

6.用一个向量V构成一个对角阵 设V为具有m个元素的向量,diag(V)将产生一个m m 阶对角阵,其主对角线的元素值即为向量的元素值; diag(V,k)将产生一个n n(n=m+|k|,k为一整数)阶对角阵, 其第k条对角线的元素值即为向量的元素值。注意:当k >0,则该对角线位于主对角线的上方第k条;当k<0, 该对角线位于主对角线的下方第|k|条;当k=0,则等同于 diag(V)。用diag建立的对角阵必是方阵。 【例2】已知向量v,试建立以向量v作为主对角线的 对角阵A;建立分别以向量v作为主对角线两侧的对角线 的对角阵B和C。 MATLAB程序如下:

一、 特殊矩阵的实现% 按各种对角

线情况构成相应的对角阵A、B和C

v =[1;2;3]; % 建立一个已知的向量A A=diag(v) A= 1 0 0 0 2 0 0 0 3 B=diag(v,1) B = 0 1 0 0 0 0 2 0 0 0 0 3 0 0 0 0 C=diag(v,-1) C = 0 0 0 0 1 0 0 0 0 2 0 0 0 0 3

一、 特殊矩阵的实现

7.从矩阵中提取某对角线 我们也可以用diag从矩阵中提取某对角线构成 一个向量。设A为m n阶矩阵,diag(A)将从矩 阵A中提取其主对角线产生一个具有min(m,n)个 元素的向量。diag(A,k)的功能是: 当k>0,则将从矩阵A中提取位于主对角线的 上方第k条对角线构成一个具有n-k个元素的向量; 当k<0,则将从矩阵A中提取位于主对角线的下 方第|k|条对角线构成一个具有m+k个元素的向量; 当k=0,则等同于diag(A)。

一、 特殊矩阵的实现

【例3】 已知矩阵A,试从矩阵A分别提取主 对角线及它两侧的对角线构成向量B、C和D。 MATLAB程序如下:A=[1 2 3;4 5 6]; % 建立一个已知的2 3阶矩阵A % 按各种对角线情况构成向量B、C和D B=diag(A) B = 1 5 C=diag(A,1) C = 2 6 D=diag(A,-1) D = 4

一、 特殊矩阵的实现

8.上三角阵:使用格式为triu(A)、triu(A,k) 设A为m n阶矩阵,triu(A)将从矩阵A中提取 主对角线之上的上三角部分构成一个m n阶上 三角阵;triu(A,k)将从矩阵A中提取主对角线第|k| 条对角线之上的上三角部分构成一个m n阶上三 角阵。注意:这里的k与diag(A,k)的用法类似, 当k>0,则该对角线位于主对角线的上方第k条; 当k<0,该对角线位于主对角线的下方第|k|条; 当k=0,则等同于triu (A)

一、 特殊矩阵的实现

【例4】试分别用triu(A)、triu(A,1)和、triu(A,-1)从矩 阵A提取相应的上三角部分构成上三角阵B、C和D。

MATLAB程序如下:A=[1 2 3;4 5 6;7 8 9;9 8 7]; % 构成各种情况的上三角阵B、C和D B=triu(A) B = 1 2 3 0 5 6 0 0 9 0 0 0 C=triu(A,1) D=triu(A,-1) % 一个已知的4 3阶矩阵A

9.下三角阵:使用格式为tril(A)、tril(A,k) tril的功能是从矩阵A中提取下三角部分构成下三角阵。 用法与triu相同。

一、 特殊矩阵的实现

10.空矩阵在MATLAB里,把行数、列数为零的矩阵定义为空矩阵。空矩 阵在数学意义上讲是空的,但在MATLAB里确是很有用的。例如

A=[0.1 0.2 0.3;0.4 0.5 0.6]; B=find(A>1.0) B = [ ]这里[ ]是空矩阵的符号,B=find(A>1.0)表示列出矩阵A中值大于 1.0的元素的序号。当不能满足括号中的条件时,返回空矩阵。另外, 也可以将空矩阵赋给一个变量,如:

B=[ ] B = [ ]

二、矩阵的特征值 与特征向量

二、矩阵的特征值与特征向量

对于N N阶方阵A,所谓A的特征值问题是: 求数λ和N维非零向量x(通常为复数),使之满 足下式: A. x=λ x 则称λ为矩阵A的一个特征值(特征根),而 非零向量x为矩阵A的特征值λ所对应的特征向量。 对一般的N

N阶方阵A,其特征值通常为复 数,若A为实对称矩阵,则A的特征值为实数。


数学建模-MATLAB课件定稿 第五讲 线性代数中的数值计算问题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:工商管理专业创新型管理人才培养模式实践的几点思考

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219