关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)

关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)
关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)

关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)

diag函数功能:矩阵对角元素的提取和创建对角阵

设以下X为方阵,v为向量

1、X = diag(v,k)

当v是一个含有n个元素的向量时,返回一个n+abs(k)阶方阵X,向量v在矩阵X中的第k个对角线上,k=0表示主对角线,k>0表示在主对角线上方,k<0表示在主对角线下方。

例1:

v=[1 2 3];

diag(v, 3)

ans =

0 0 0 1 0 0

0 0 0 0 2 0

0 0 0 0 0 3

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0

注:从主对角矩阵上方的第三个位置开始按对角线方向产生数据的

例2:

v=[1 2 3];

diag(v, -1)

ans =

0 0 0 0

1 0 0 0

0 2 0 0

0 0 3 0

注:从主对角矩阵下方的第一个位置开始按对角线方向产生数据的

2、X = diag(v)

向量v在方阵X的主对角线上,类似于diag(v,k),k=0的情况。

例3:

v=[1 2 3];

diag(v)

ans =

1 0 0

0 2 0

0 0 3

注:写成了对角矩阵的形式

3、v = diag(X,k)

返回列向量v,v由矩阵X的第k个对角线上的元素形成

例4:

v=[1 0 3;2 3 1;4 5 3];

diag(v,1)

ans =

1

注:把主对角线上方的第一个数据作为起始数据,按对角线顺序取出写成列向量形式

4、v = diag(X)

返回矩阵X的主对角线上的元素,类似于diag(X,k),k=0的情况

例5:

v=[1 0 0;0 3 0;0 0 3];

diag(v)

ans =

1

3

3

或改为:

v=[1 0 3;2 3 1;4 5 3];

diag(v)

ans =

1

3

3

注:把主对角线的数据取出写成列向量形式

5、diag(diag(X))

取出X矩阵的对角元,然后构建一个以X对角元为对角的对角矩阵。例6:

X=[1 2;3 4]

diag(diag(X))

X =

1 2

3 4

ans =

1 0

0 4

矩阵相关运算

1.2.10矩阵的迹 函数trace 格式b=trace (A) %返回矩阵A的迹,即A的对角线元素之和。 1.2.11矩阵和向量的范数 命令向量的范数 函数norm 格式n = norm(X) %X为向量,求欧几里德范数,即。 n = norm(X,inf) %求-范数,即。 n = norm(X,1) %求1-范数,即。 n = norm(X,-inf) %求向量X的元素的绝对值的最小值,即。 n = norm(X, p) %求p-范数,即,所以norm(X,2) = norm(X)。 命令矩阵的范数 函数norm 格式n = norm(A) %A为矩阵,求欧几里德范数,等于A的最大奇异值。 n = norm(A,1) %求A的列范数,等于A的列向量的1-范数的最大值。 n = norm(A,2) %求A的欧几里德范数,和norm(A)相同。 n = norm(A,inf) %求行范数,等于A的行向量的1-范数的最大值 即:max(sum(abs(A')))。 n = norm(A, 'fro' ) %求矩阵A的Frobenius范数, 即sqrt(sum(diag(A'*A))),不能用矩阵p-范数的定义来求。 命令范数的估计值 函数normest 格式nrm = normest(A) %矩阵A的2-范数(欧几里德范数)的估计值,相对误差小于 106。 nrm = normest(A,tol) %tol为指定相对误差 [nrm,count] = normest(…) %count给出计算估计值的迭代次数 1.2.12条件数 命令矩阵的条件数 函数cond 格式c = cond(X) %求X的2-范数的条件数,即X的最大奇异值和最小奇异值的商。 c = cond(X,p) %求p-范数的条件数,p的值可以是1、2、inf或者’fro’。 说明线性方程组AX=b的条件数是一个大于或者等于1的实数,用来衡量关于数据中的扰动,也就是A/或b对解X的灵敏度。一个差条件的方程组的条件数很大。条件数的定义为: 命令1-范数的条件数估计 函数condest 格式c = condest (A) %方阵A的1-范数的条件数的下界估值。 [c,v] = condest (A) %v为向量,满足,即norm(A*v,1) =norm(A,1)*norm(v,1)/c。 [c,v] = condest (A,t) %求上面的c和v,同时显示出关于计算的步骤信息。如果t=1,则计算的 每步都显示出来;如果t=-1,则给出商c/rcond(A)。 命令矩阵可逆的条件数估值 函数rcond 格式c = rcond(A) %对于差条件矩阵A来说,给出一个接近于0的数;对于好条件矩阵A, 则给出一个接近于1的数。 命令特征值的条件数 函数condeig

2.2 矩阵变换(PPT)

专题二 MATLAB矩阵处理 2.2 矩阵变换 ?对角阵 ?三角阵 ?矩阵的转置 ?矩阵的旋转 ?矩阵的翻转 ?矩阵求逆

1.对角阵 ?对角阵:只有对角线上有非零元素的矩阵。 ?数量矩阵:对角线上的元素相等的对角矩阵。?单位矩阵:对角线上的元素都为1的对角矩阵。

(1) 提取矩阵的对角线元素 ?diag(A):提取矩阵A主对角线元素,产生一个列向量。 ?diag(A,k):提取矩阵A第k条对角线的元素,产生一个列向量。 矩阵的对角线:与主对角线平 行,往上为第1条、第2条、一 直到第n条对角线,往下为第- 1条、-2条、一直到-n条对角 线。主对角线为第0条对角线。

(2) 构造对角阵 ?diag(V):以向量 V为主对角线元素,产生对角矩阵。 ?diag(V,k):以向量 V为第k条对角线元素,产生对角矩阵。

例1 先建立5×5矩阵A ,然后将A 的第一行元素乘以1,第二行乘以2,…,第五行乘以5。 用一个对角阵左乘一个矩阵时,相当于用对角阵对角线的第1个元素乘以该矩阵的第一行,用对角阵对角线的第2个元素乘以该矩阵 的第二行,…,依此类推。 >> A=[7,0,1,0,5;3,5,7,4,1;4,0,3,0,2;1,1,9,2,3;1,8,5,2,9] A = 7 0 1 0 5 3 5 7 4 1 4 0 3 0 2 1 1 9 2 3 1 8 5 2 9 >> D=diag(1:5); >> D*A ans = 7 0 1 0 5 6 10 14 8 2 12 0 9 0 6 4 4 36 8 12 5 40 25 10 45

矩阵

特殊矩阵的压缩存储 对称矩阵中的元素关于主对角线对称,因此,让每一对对称元素a ij和a ji(i≠j)分配一个存储空间,则n2个元素压缩存储到n(n+1)/2个存储空间,能节约近一半的存储空间。 不失一般性,假设按“行优先顺序”存储下三角形(包括对角线)中的元素。 设用一维数组(向量)sa[0…n(n+1)/2]存储n阶对称矩阵,如图5-4所示。为了便于访问,必须找出矩阵A中的元素的下标值(i,j)和向量sa[k]的下标值k之间的对应关系。 若i≧j:a i j在下三角形中,直接保存在sa中。a i j之前的i-1行共有元素个数:1+2+…+(i-1)=i?(i-1)/2 而在第i行上,a i j之前恰有j-1个元素,因此,元素a i j保存在向量sa中时的下标值k之间的对应关系是: k=i?(i-1)/2+j-1 i≧j 若i

以主对角线划分,三角矩阵有上三角和下三角两种。 上三角矩阵的下三角(不包括主对角线)中的元素均为常数c(一般为0)。下三角矩阵正好相反,它的主对角线上方均为常数,如图5-5所示。 三角矩阵中的重复元素c可共享一个存储空间,其余的元素正好有n(n+1)/2个,因此,三角矩阵可压缩存储到向量sa[0…n(n+1)/2]中,其中c存放在向量的第1个分量中。 上三角矩阵元素a i j保存在向量sa中时的下标值k与(i,j)之间的对应关系是:下三角矩阵元素a i j保存在向量sa中时的下标值k与(i,j)之间的对应关系是: 3 对角矩阵 矩阵中,除了主对角线和主对角线上或下方若干条对角线上的元素之外,其余元素皆为零。即所有的非零元素集中在以主对角线为了中心的带状区域中,如图5-6所示。 如上图三对角矩阵,非零元素仅出现在主对角(a i i,1≦i≦n)上、主对角线上的那条对角线(a i i+1,1≦i≦n-1) 、主对角线下的那条对角线上(a i+1 i,1≦i≦n-1)。显然,当| i-j |>1时,元素a ij=0。

第三节矩阵基本函数运算与矩阵元素的提取(第二章)

实验三 第三节矩阵基本函数运算与矩阵元素的提取(第二章)一、矩阵基本函数运算 此运算是矩阵运算中最实用的部分,其基本命令如下: 命令集9 矩阵的大小、行列式、逆、特征值、秩、迹、范数size(A) 给出包含A的维数的一个行向量.在这个返回向量中的第一个元素是行数,随后是列数. [ m,n ]=size(A) 给出A的维数、m行数和n列数,即两个标量. length(x) 给出一个向量的长度,即x分量个数. sum(A) 若A是矩阵,给出一个行向量,其每个分量表示A相应的列和; 若A是向量,给出此向量的分量和. det(A) 求矩阵A的行列式. eig(A) 求包含矩阵A的特征值的向量. [X,D]=eig(A) 求包含矩阵A的特征值对应的对角阵D和以相应特征向 量为列的矩阵. inv(A)或A ^ (-1) 求矩阵A的逆矩阵. rank(A) 求矩阵A的秩. trace(A) 求矩阵A的迹(对角线元素之和). norm(A,1) 矩阵A的1—范数或列和范数,定义如下. norm(A,2) 矩阵A的2—范数. norm(A,inf) 矩阵A的∞—范数. norm(x,1) 向量x的1—范数或列和范数,定义如下. norm(x,2) 向量x的2—范数. norm(x,inf) 向量x的∞—范数.

范数定义如下: 设'12(,, ,)n x x x x =,()ij n m A a ?=,则相应范数定义如下 11 n i i x x ==∑ ;2x = ;max i i x x ∞ = 11 max n ij j i A a ==∑, 1 max n ij i j A a ∞ ==∑ , 2A'A i A λ=,其中为的最大特征值 二、矩阵元素的提取 在MATLAB 中还有利用已存在的矩阵建立新矩阵的命令.以下假设矩阵 A 是m ×n 的矩阵,x 是个有n 个元素的向量. 1. 对角阵与三角阵的生成 命令集10 diag(A) 生成一个由矩阵A 主对角线元素组成的列向量.主对角线总是 从矩阵左上角开始.对于方阵来说它结束于矩阵的右下角. diag(x) 生成一个n 维的方阵,它的主对角线元素值取自向量 x ,其余 元素的值都为0. diag(A , k) 生成一个由矩阵A 第k 条对角线的元素组成的列向量. k= 0为 主对角线;k< 0为下第k 对角线;k> 0为上第k 对角线. diag(x , k) 生成一个(n+ a b s (k) )×(n+ a b s (k) )维的矩阵,该矩阵的第k 条对角线元素取自向量x ,其余元素都为零.关于参数k 可参考 上个命令. triu(A) 生成一个和A 大小相同的上三角矩阵.该矩阵的主对角线及 以上元素取自A 中相应元素,其余元素都为零. triu(A , k) 生成一个和A 大小相同的上三角矩阵.该矩阵的第k 条对角线 及以上元素取自A 中相应元素,其余元素都为零. 命令t r i u ( A , 0 )等同于命令t r i u ( A ).

矩阵的定义及其运算规则

矩阵的定义及其运算规则 1、矩阵的定义 一般而言,所谓矩阵就是由一组数的全体,在括号()内排列成m行n 列(横的称行,纵的称列)的一个数表,并称它为m×n阵。 矩阵通常是用大写字母A 、B …来表示。例如一个m 行n 列的矩阵可以简记为:,或 。即: (2-3) 的第一个注脚字母的元素,a,表为矩阵我们称(2-3A)式中的示矩阵的行数,第二个注脚字母j(j=1,2,…,n)表示矩阵的列数。 阶方阵,并用表示。当矩阵(a为时,则称n)的元素仅有一当m=n ij行或一列时,则称它为行矩阵或列矩阵。设两个矩阵,有相同的行数和相同的列数,而且它们的对应元素一一相等,即,则称该两矩阵相等,记为A=B。 2、三角形矩阵 由i=j的元素组成的对角线为主对角线,构成这个主对角线的元素称为主对角线元素。 如果在方阵中主对角线一侧的元素全为零,而另外一侧的元素不为零或不全为零,则该矩阵叫做三角形矩阵。例如,以下矩阵都是三角形矩阵: 。,,, 3、单位矩阵与零矩阵的元素不等于零,而其他元素全为零,如:中,如果只有在方阵

彼此如果在对角矩阵中所有的。可记为则称为对角矩阵,,则称为单位矩 阵。单位矩阵常用E来表示,即:都相等且均为1,如: 当矩阵中所有的元素都等于零时,叫做零矩阵,并用符号“0”来表示。 4、矩阵的加法 矩阵A=(a)和B=(b)相加时,必须要有相同的行数和列数。如以C=(c)ijm×nijnijm×表示矩阵A及B的和,则有:nm × 。即矩阵C的元素等于矩阵A和B式中:的对应元素之和。 由上述定义可知,矩阵的加法具有下列性质(设A、B、C都是m×n矩阵): (1)交换律:A+B=B+A (2)结合律:(A+B)+C=A+(B+C) 5、数与矩阵的乘法 ,其积均等于矩阵A中的所有元素都右乘矩阵我们定义用kA或左乘矩阵k之后所得的矩阵。 如:乘上 由上述定义可知,数与矩阵相乘具有下列性质:设A、B都是m×n矩阵,k、h为任意常数,则:(1)k(A+B)=kA+kB (2)(k+h)A=kA+hA (3)k(hA)=khA 6、矩阵的乘法 ,则只有在前者的列数等于后者的行数时才有意义。矩阵的元乘矩阵若矩阵的计算方法定义为第一个矩阵第i行的元素与第二个矩阵第j列元素对应乘积的和。素若:

c#二维数组,求正副对角线上的元素之和

定义如下二维数组,并求出正副对角线上的元素之和 2 7 9 10 5 8 6 4 1 using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication3 { class Program { static void Main(string[] args) { int[ , ] arrInt = new int[ 3 , 3 ] { { 2, 7, 9 }, { 10, 5, 8 }, { 6, 4, 1 } }; int sum1=0; for( int i = 0; i < arrInt.GetLength( 0 ); i++ ) { for ( int j = 0; j < arrInt.GetLength( 1 ); j++ ) { if ( i == j )

{ sum1 += arrInt[ i , j ]; } } } Console.WriteLine (string.Format("正对角线元 素之和为:{0}", sum1)); int sum2=0; for( int i = 0; i < arrInt.GetLength( 0 ); i++ ) { for ( int j = 0; j < arrInt.GetLength( 1 ); j++ ) { if ( i+j==2 ) { sum2 += arrInt[i, j]; } } } Console.WriteLine (string.Format("副对角线元素 之和为:{0}", sum2)); } } }

关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵)

关于matlab中的diag函数(矩阵对角元素的提取和创建对角阵) diag函数功能:矩阵对角元素的提取和创建对角阵 设以下X为方阵,v为向量 1、X = diag(v,k) 当v是一个含有n个元素的向量时,返回一个n+abs(k)阶方阵X,向量v在矩阵X中的第k个对角线上,k=0表示主对角线,k>0表示在主对角线上方,k<0表示在主对角线下方。 例1: v=[1 2 3]; diag(v, 3) ans = 0 0 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 注:从主对角矩阵上方的第三个位置开始按对角线方向产生数据的 例2: v=[1 2 3]; diag(v, -1) ans = 0 0 0 0 1 0 0 0 0 2 0 0 0 0 3 0 注:从主对角矩阵下方的第一个位置开始按对角线方向产生数据的 2、X = diag(v) 向量v在方阵X的主对角线上,类似于diag(v,k),k=0的情况。 例3: v=[1 2 3]; diag(v)

ans = 1 0 0 0 2 0 0 0 3 注:写成了对角矩阵的形式 3、v = diag(X,k) 返回列向量v,v由矩阵X的第k个对角线上的元素形成 例4: v=[1 0 3;2 3 1;4 5 3]; diag(v,1) ans = 1 注:把主对角线上方的第一个数据作为起始数据,按对角线顺序取出写成列向量形式 4、v = diag(X) 返回矩阵X的主对角线上的元素,类似于diag(X,k),k=0的情况 例5: v=[1 0 0;0 3 0;0 0 3]; diag(v) ans = 1 3 3 或改为: v=[1 0 3;2 3 1;4 5 3]; diag(v) ans =

有标题 对角占优矩阵的性质及其应用

本科生毕业论文(设计) 题目:对角占优矩阵的性质及其应用 学生姓名:付艳 学号: 200810010212 指导教师:邹庆云 专业班级:数学与应用数学 完成时间: 2012年5月

目录 0引言 (1) 1主要结果 (2) 1.1 对角占优矩阵奇异性 (2) 1.2对角占优矩阵行列式 (3) 1.3对角占优矩阵其逆矩阵对角占优性 (4) 1.4对角占优矩阵其他相关性质 (5) 1.5关于矩阵对角占优性在矩阵分解方面的应用 (9) 1.6关于矩阵对角占优性在利用迭代法解线性方程方面的应用 (11) 结论 (14) 参考文献 (14) 致谢 (15)

对角占优矩阵的性质及其应用 数学与应用数学专业学生:付艳 指导教师:邹庆云 摘要:本文根据严格对角占优矩阵、不可约对角占优等概念,讨论了对角占优矩阵的若 干性质及其应用,而对角占优矩阵有强、弱之分,本文主要以严格对角占优矩阵为研究 对象,适当的给出了不可约对角占优矩阵的一些性质。本文主要研究了对角占优矩阵的 奇异性、行列式、特征值、以及其逆矩阵的对角占优性,同时研究了矩阵对角占优性在 利用迭代法求解线性方程组,以及进行矩阵LU 分解等方面的应用。 关键词:对角占优矩阵,奇异性,迭代收敛性,行列式,特征值。 Abstract :Based on the strict diagonally dominant matrix, not about diagonally dominant concepts discussed diagonally dominant matrix of a number of nature and its application, and diagonally dominant matrix has strong and weak points of this paper mainly to strict diagonally dominant matrix for the study, are given an appropriate angle about the nature of some of the dominant matrix. This article on the diagonally dominant matrix of singularity, the determinant, the characteristics of value, and its inverse matrix of diagonally dominant, while on a matrix diagonally dominant in the use of the method for solving linear Equations, as well as matrix LU decomposition, and other aspects of the application. Keywords :diagonal dominance matrix; irregularity; convergence of iterative; determinant; eigenvalue. 0 引言 各类对角占优矩阵是数值代数和矩阵分析研究中的重要课题之一,19世纪末,人们 在研究行列式的性质和值的计算时,就注意到“对角占优”这一性质,而对于对角占优 矩阵的一些性质在数值计算、矩阵分解方面具有重要作用,因此,对对角占优矩阵性质 及其应用的探讨成为许多国内外学者的主要研究课题。 定义1 若A 是n n ?矩阵,且满足ii ij j i a a ≠≥∑ ()ii ij j i a a ≠>∑(1,2,,i n =…),则称A 为 对角占优矩阵(严格对角占优矩阵)。

正交矩阵的对角线元素

正交矩阵的对角线元素 L.米尔斯基,英国谢菲尔德大学 1.下面出现的所有数字均被认为是实数,用来表示之中全部负数的个数.通过一点我们可以构造一个为线性空间.一个正交矩阵被称为特正交矩阵或非正常正交阵,是依据它的行列式的值是+1还是-1.所有矩阵被认为是矩阵. 以下引人关注的结论由A. Horn([1] 定理8)创立. 定理1 数字是一个特正交矩阵的对角线元素当且仅当 位于有偶数个负坐标的形如的点的复包线上. 以上定理说明的对象是从这个结果中获得一个有效的标准,来判断给定的个数是否是特正交矩阵的对角线元素.实际上,我们有以下结论: 定理2 数字是一个特正交矩阵的对角线元素的充分必要条件是 (1) (2)

其中被赋值为1或0是根据是偶数还是奇数. Horn([1] 定理9)得出定理2是在当全是非负的情况下,以及当N()是偶数时;此外,在所有情况下,条件1和条件2的必要性包含在他的论据中([1] p.627).上面给出的证明结合了不 同的理论. 我们注意到定理2的2个结果. 推论1数字是一个特正交矩阵的对角线元素的充分必要条件是 (1) (2) 其中被赋值为1或0是根据N)是偶数还是奇数推论2 数字是特正交矩阵的对角线元素,同时也是非正常正交阵的对角线元素的充分必要条件是 (1)

(2) 很明显,推论2由定理2和推论1得出,推论1由定理2得出,凭借的事实是是非正常正交阵的对角线元素当且仅当 是特正交矩阵的对角线元素. 我对他提供有用意见表示感谢. 2. 这里我们将需要一些初步的结果 引理1对任意数字,我们有 () 最大数在所有中产生,= () (3) 最大数在所有中产生,=

相关文档
最新文档