MATLAB中的矩阵与向量运算Word文档格式.docx

上传人:b****6 文档编号:18815600 上传时间:2023-01-01 格式:DOCX 页数:9 大小:19.67KB
下载 相关 举报
MATLAB中的矩阵与向量运算Word文档格式.docx_第1页
第1页 / 共9页
MATLAB中的矩阵与向量运算Word文档格式.docx_第2页
第2页 / 共9页
MATLAB中的矩阵与向量运算Word文档格式.docx_第3页
第3页 / 共9页
MATLAB中的矩阵与向量运算Word文档格式.docx_第4页
第4页 / 共9页
MATLAB中的矩阵与向量运算Word文档格式.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

MATLAB中的矩阵与向量运算Word文档格式.docx

《MATLAB中的矩阵与向量运算Word文档格式.docx》由会员分享,可在线阅读,更多相关《MATLAB中的矩阵与向量运算Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。

MATLAB中的矩阵与向量运算Word文档格式.docx

1

2

3

4

5

c=b.'

c=

12345

这标明对行向量的两次转置运算便得到本来的行向量.

'

——共轭转置.对向量进行转置运算并对每个元素取其共轭.如:

d=a+i*a

d=

Columns1through3

1.0000+1.0000i2.0000+2.0000i3.0000+3.0000i

Columns4through5

4.0000+4.0000i5.0000+5.0000i

e=d'

e=

1.00001.0000i

2.00002.0000i

3.00003.0000i

4.00004.0000i

5.00005.0000i

4.2.2纯量(标量)和数组的四则运算

纯量和数组之间可以进行简略数学运算.如:

加,减,乘,除及其混杂运行.

g=[1234

5678

9101112]

g=g2

g=

1012

3456

78910

2*g1

ans=

3113

57911

13151719

4.2.3数组间的四则运算

在MATLAB中,数组间进行四则运算时,介入运算的数组必须具有雷同的维数,加,减,乘,除运算是按元素与元素的方法进行的.个中,数组间的加,减运算与矩阵的加,减运算要同,运算符为:

"

+"

"

.但是,数组间的乘,除运算与矩阵间的乘,除运算完整不合,运算符号也有不同,数组间的乘,除运算符为:

.*"

./"

或"

.\"

.

1.数组按元素相加,减

h=[1111;

2222;

3333]

g+h%按元素相加

2345

12131415

ansh%按元素相减

1234

9101112

2*gh%混杂运算

1357

8101214

15171921

2.按元素乘

g.*h

10121416

27303336

3.按元素除

数组间的除法运算符有两个,即左除:

和右除:

它们之间的关系是:

a./b=b.\a

g./h

1.00002.00003.00004.0000

2.50003.00004.10004.0000

3.00003.33333.66674.0000

h.\g

4.2.4幂运算

在MATLAB中,数组的幂运算的运算为:

.^"

暗示每一个元素进行幂运算.

g.^2%数组g每个元素的平方

14916

25364964

81100121144

g.^

(1)%数组g的每个元素的倒数

1.00000.50000.33330.2500

0.20000.16670.14290.1250

0.11110.10000.09090.0833

2.^g%以g的每个元素为指数对2进行乘方运算

24816

3264128256

512102420484096

g.^h%以h的每个元素为指数对g中响应元素进行乘方运算

729100013311728

g.^(h1)

1111

4.2.5数组的指数,对数和开方运算

在MATLAB中,所谓数组的运算本质是是数组内部每个元素的运算,是以,数组的指数,对数和开方运算与标量的运算规矩完满是一样的,运算符函数分离为:

exp(),log(),sqrt()等.

a=[134;

265;

324];

c=exp(a)

2.718320.085554.5982

7.3891403.4288148.4132

20.08557.389154.5982

数组的对数,开方运算与数组的指数运算,其方法完整一样,这里不胪陈.

4.3向量运算

对于一行或一列的矩阵,为向量,MATLAB有专门的函数来进行向量点积,叉积和混杂积的运算.

4.3.1向量的点积运算

在高级数学中,我们知道,两向量的点积指两个向量在个中一个向量偏向上的投影的乘积,通经常应用来界说向量的长度.在MATLAB中,向量的点积用函数"

dot"

来实现,其挪用格局如下:

C=dot(A,B)——返回向量A与B的点积,成果存放于C中.

C=dot(A,B,DIM)——返回向量A与B在维数为DIM的点积,成果存放于C中.

A=[24531];

B=[38101213];

C=dot(A,B)

C=

137

C=dot(A,B,4)

632503613

4.3.2向量的叉积运算

在高级数学中,我们知道,两向量的叉积返回的是与两个向量构成的平面垂直的向量.在MATLAB中,向量的点积用函数"

cross"

C=cross(A,B)——返回向量A与B的叉积,即:

成果存放于C中.

C=cross(A,B,DIM)——返回向量A与B在维数为DIM的叉积,成果存放于C中.

A=[245];

B=[3810];

C=cross(A,B)

054

4.3.3向量的混杂运算

D=dot(A,cross(B,C))

D=

41

上例标明,起首进行的是向量B与C的叉积运算,然后再把叉积运算的成果与向量A进行点积运算.

4.4矩阵的根本运算

假如说MATLAB的最大特色是壮大的矩阵运算功效,此话毫不为过.事实上,MATLAB中所有的盘算都是以矩阵为根本单元进行的.MATLAB对矩阵的运算功效最周全,也是最为壮大的.矩阵在情势上与构造方面是等同于前面所述的数组的,当其数学意义倒是完整不合的.

矩阵的根本运算包含矩阵的四则运算,矩阵与标时的运算,矩阵的幂运算,指数运算,对数运算,开方运算及以矩阵的逆运算,行列式运算等.

4.4.1矩阵的四则运算

矩阵的四则运算与前面介绍的数组的四则运算基底细同.但也有一些不同.

1.矩阵的加减

矩阵的加,减与数组的加,减是完整雷同的,运算时请求两矩阵的大小完整雷同.

a=[12;

35;

26];

b=[24;

18;

90];

c=a+b

36

413

116

2.矩阵的相乘

对于矩阵的乘法,从线性代数中,我们知道,请求进行相乘的两矩阵有雷同的公共维.如:

b=[241;

890];

c=a*b

18221

46573

52622

设A矩阵为一个阶的矩阵,则请求与之相乘的B矩阵必须是一个阶,得到矩阵是阶的.即,只有当第一个矩阵(左矩阵)的列数等于第二个矩阵(右矩阵)的行数时,两个矩阵的乘积才有意义.

3.矩阵的除法

对于矩阵的除法有两个运算符号,分离为左除符号"

\"

和右除符号"

/"

.矩阵的右除运算速度要慢一点,而左除运算可以防止奇怪矩阵的影响.

对于方程,若此方程为超定的方程,则应用除法可以主动找到使的平方最小化的解.若此方程为不定方程,则应用除法运算符至少求得的解至多有rank(A)(矩阵A的秩)个非零元素,并且求得的解是这种类型的解中范数最小的一个.

a=[213420;

57820;

211417;

343138];

b=[10203040]'

;

x=b\a

x=

0.76671.18670.8767

上面方程是超定方程.要留意的:

成果矩阵x是列向量情势.假如,

a=[2134205;

78202114;

17343138];

b=[102030]'

1.62861.25711.10711.0500

上面的方程为不定方程.

4.矩阵与标量间的四则运算

矩阵与标量的四则运算和数组与标量间的四则运算完整雷同,即矩阵中的每个元素与标量进行加,减,乘,除四则运算.须要解释的是,当进行除法运算时,标量只能做除数.

5.矩阵的幂运算

矩阵的幂运算与标量的幂运算不合.用符号"

^"

它不是对矩阵的每个元素进行幂运算,而是与矩阵的某种分化有关.

b=[213420;

782021;

173431];

c=b^2

343320741754

355537662631

35362312

6.矩阵的指数,对数运算与开方运算

矩阵的指数运算,对数运算与开方运算与数组响应的运算是不合的.它其实不是对矩阵中的单个元素的运算,而是对全部矩阵的运算.这些运算函数如下:

expm,expm1,expm2,expm3——指数运算函数;

logm——对数运算函数;

sqrtm——开方运算函数.

265;

324];

c=expm(a)

1.0e+004*

0.46680.76940.9200

0.79191.30651.5613

0.48070.79190.9475

c=logm(a)

0.5002+2.4406i0.59600.6800i0.78811.2493i

0.4148+0.4498i1.46600.1253i1.01080.2302i

0.57801.6143i0.4148+0.4498i1.0783+0.8263i

c=sqrtm(a)

0.6190+0.8121i0.81280.2263i1.16230.4157i

0.3347+0.1497i2.30220.0417i1.14750.0766i

1.02710.5372i0.3347+0.1497i1.6461+0.2750i

7.矩阵的转置,逆运算与行列式运算

矩阵的转置的运算符为"

.求逆用运算函数:

inv().而用函数:

det()则可求的矩阵行列式的大小.

a=[120;

251;

4101];

c=a'

124

2510

011

b=inv(a)

522

211

021

d=det(a)

4.5矩阵的特别运算

矩阵的特别运算包含矩阵特点值运算,前提数运算,奇怪值运算,范数运算,秩运算,正交化运算,迹运算,伪逆运算等,这些运算,MATLAB都可以异常便利地给出.

4.5.1矩阵的特点值运算

在线性代数中,盘算矩阵的特点值进程相当庞杂.而在MATLAB中,矩阵特点值运算只需用函数"

eig()"

eigs()"

盘算即可得到.其应用格局如下.

E=eig(X)——生成由矩阵X的特点值所构成的一个列向量;

[V,D]=eig(X)——生成两个矩阵V和D,个中V是以矩阵X的特点向量作为列向量构成的矩阵,D是由矩阵X的特点值作为主对角线元素构成的对角矩阵.

eigs()函数应用迭代法求解矩阵的特点值和特点向量.

D=eigs(X)——生成由矩阵X的特点值所构成的一个列向量.X必定是方阵,最好是大型稀少矩阵;

[V,D]=eigs(X)——生成两个矩阵V和D,个中V是以矩阵X的特点向量作为列向量构成的矩阵,D是由矩阵X的特点值作为主对角线元素构成的对角矩阵.

[b,c]=eig(a)

0.24400.91070.4472

0.33330.33330.0000

0.91070.24400.8944

3.732100

00.26790

001.0000

4.5.2矩阵(向量)的范数运算

为了反应了矩阵(向量)某些特点,线性代数中引入了范数的概念,它分为2范数,1范数,无限范数和Frobenius范数等.在MATLAB中,用函数norm()或normest()盘算矩阵(向量)的范数.其应用格局如下.

norm(X)——盘算矩阵(向量)X的2范数;

norm(X,2)——同上;

norm(X,1)——盘算矩阵(向量)X的1范数;

norm(X,inf)——盘算矩阵(向量)X的无限范数;

norm(X,'

fro'

)——盘算矩阵(向量)X的Frobenius范数;

normest(X)——只盘算矩阵(向量)X的2范数;

并且是2范数的估量值,实用于盘算norm(X)比较费时的情形.

X=hilb(4)

X=

0.50000.33330.25000.2000

0.33330.25000.20000.1667

0.25000.20000.16670.1429

norm(4)

norm(X)

1.5002

norm(X,2)

norm(X,1)

2.0833

norm(X,inf)

norm(X,'

1.5097

normest(X)

4.5.3矩阵的前提数运算

矩阵的前提数是断定矩阵"

病态"

程度的一个量值,矩阵A的前提数越大,标明A越"

反之,标明A越"

良态"

.如Hilbert矩阵就是一个著名的病态矩阵.

cond(X)——返回矩阵X的2范数的前提数;

cond(X,P)——返回矩阵X的P范数的前提数,个中P为1,2,inf或fro;

rcond(X)——用于盘算矩阵前提数的倒数值,当矩阵X为"

时,rcond(X)就接近0,X为"

时,rcond(X)就接近1.

condest(X)——盘算关于矩阵X的1范数的前提数的估量值.

M=magic(3)

M=

816

357

492

H=hilb(4)

H=

c1=cond(M)

c1=

4.3301

c2=cond(M)

c2=

c3=rcond(M)

c3=

0.1875

c4=condest(M)

c4=

5.3333

h1=cond(H)

h1=

1.5514e+004

h2=cond(H,inf)

h2=

2.8375e+004

h3=rcond(H)

h3=

3.5242e005

h4=condest(H)

h4=

从上盘算可以看出,魔方矩阵比较"

而Hilbert矩阵是"

的.

4.5.4矩阵的秩

秩是线性代数中的相当主要的概念之一,平日矩阵可以经由初等行列式或列变换,将其转化为行阶梯形矩阵,而行阶梯矩阵所包含非零行的行数是一个定的,这个肯定的非零行的行数就是矩阵的秩.矩阵中的秩用函数rank()来盘算.

T=rand(6)

T=

0.95010.45650.92180.41030.13890.0153

0.23110.01850.73820.89360.20280.7468

0.60680.82140.17630.05790.19870.4451

0.48600.44470.40570.35290.60380.9318

0.89130.61540.93550.81320.27220.4660

0.76210.79190.91690.00990.19880.4186

r=rank(T)

r=

6

由上盘算可知,矩阵T为满秩矩阵.

T1=[111;

223]

T1=

111

223

r=rank(T1)

由上盘算可知,矩阵T1为行满秩矩阵.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1