向量矩阵的运算.docx

上传人:b****8 文档编号:29874323 上传时间:2023-08-03 格式:DOCX 页数:12 大小:66.15KB
下载 相关 举报
向量矩阵的运算.docx_第1页
第1页 / 共12页
向量矩阵的运算.docx_第2页
第2页 / 共12页
向量矩阵的运算.docx_第3页
第3页 / 共12页
向量矩阵的运算.docx_第4页
第4页 / 共12页
向量矩阵的运算.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

向量矩阵的运算.docx

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

向量矩阵的运算.docx

向量矩阵的运算

第三章

向量、矩阵的运算

学习目标:

1、正确输入向量、矩阵;

2、熟悉MATLAB中向量、矩阵基本运算的命令;

3、会访问提取向量、矩阵中元素;

4、能用MATLAB进行矩阵的初等变换。

 

第一节向量的运算

由n个数组成的一个有序数组,称为一个n维向量,记作:

,前者称为行向量,后者称为列向量。

一、向量的生成:

方法一:

生成向量的最直接方式是把向量元素逐个从键盘上直接输入,用“[]”括起来,元素之间可以用逗号、空格、分号分隔,注意不同的是,用空格和逗号分隔生成行向量,用分号分隔生成列向量。

方法二:

利用冒号表达式生成

格式是:

a:

d:

b,d为”步长”即公差.

方法三:

利用线性等分命令linspace,先设定向量的维数,再生成等间隔的向量.

格式是:

x=linspace(a,b)%生成100维的行向量,使得x1=a,x100=b,

x=linspace(a,b,n),%生成n维行向量,使得x1=a,xn=b.

例如:

>>x=[1,2,5,8,10]

x=

125810

>>y=1:

2:

10

y=

13579

>>z=linspace(1,10,5)

z=

1.00003.25005.50007.750010.0000

二、向量中的元素操作

MATLAB允许访问向量中的元素和对元素重新赋值,元素的位置编号写在小括号内,如:

x(n)表示向量x的第n个元素。

在小括号中可以使用冒号表达式和“[]”,此时表示访问向量中的多个元素。

如:

x(1:

3)%访问x的前3个元素

x(5:

-2:

1)%访问x的第5、3、1个元素

x([1,3,4])%访问x的第1、3、4个元素

x(3)%访问x的第3个元素

x(5)=-3%给x的第5个元素重新赋值为-3

三、向量的运算

向量运算

命令格式

a+b

a+b

a+k

a+k

ka

k.*a

a.b向量点积

dot(a,b)

向量的长度(范数)

norm(a)

例:

a=(7,2,0,-8),b=(2,1,-4,3),求1)3a+7b2)a.b

>>

(1)3*a+7*b

ans=

3513-28-3

(2)dot(a,b)

ans=

-8

>>

第二节矩阵

一、矩阵的生成:

1)数值型小矩阵的生成:

把矩阵中的元素从键盘逐一输入,放置在“[]”内,同行元素之间用逗号或空格分隔,行与行之间用分号或回车键分隔;

2)特殊数值矩阵的生成:

利用内部语句和函数命令可快速产生特殊矩阵。

如单位矩阵、零矩阵、全1阵、随机矩阵、空矩阵。

命令格式

说明

[]

生成空矩阵

eye(n)

eye(m,n)

eye(size(A))

生成n阶单位矩阵

生成m行n列单位矩阵

生成与矩阵A同阶的单位矩阵

zeros(n)

zeros(m,n)

zeros(size(A))

生成n阶零矩阵

生成m行n列零矩阵

生成与矩阵A同阶的零矩阵

ones(n)

ones(m,n)

ones(size(A))

生成n阶全1矩阵

生成m行n列全1矩阵

生成与矩阵A同阶的全1矩阵

rand(n)

rand(m,n)

rand(size(A))

生成n阶随机矩阵

生成m行n列随机矩阵

生成与矩阵A同阶的随机矩阵

randn(m,n)

生成m行n列的标准正态随机矩阵

例如:

>>A=eye(3)

A=

100

010

001

>>B=ones(2,3)

B=

111

111

>>C=rand(size(A))

C=

0.95010.48600.4565

0.23110.89130.0185

0.60680.76210.8214

3)符号矩阵:

用sym或syms命令

方法一:

sym(‘[]’)

方法二:

先用syms命令创建符号变量,再用创建数值型矩阵的方法输入。

例如:

>>A=sym('[ab;cd]')

A=

[a,b]

[c,d]

>>symsx

>>B=([cos(x),sin(x);-x,x^2+1])

B=

[cos(x),sin(x)]

[-x,x^2+1]

注:

符号型矩阵输出时的特征是每行都用“[]”括起来。

二、矩阵的基本数学运算:

矩阵运算

命令格式

说明

加法

A+B

A,B必须是行列数分别相等的同型矩阵

减法

A-B

数乘

k*A

乘法

A*B

矩阵A的列数与矩阵B的行数相同

除法:

左除(/)、右除(\)

A/B,B\A

A/B相当于

B\A相当于

矩阵的行列式|A|

det(A)

A必须是方阵

逆矩阵

int(A)

A必须是方阵

矩阵的秩R(A)

rank(A)

矩阵的转置

A

矩阵的特征值、特征向量

X=eig(A)

[X,Y]=eig(A)

只求A的特征值

X为A的特征值,t=

t=

t=

t=

t=

t=

t=

t=

t=

Y为A的特征向量

例:

1、求矩阵

的逆矩阵

>>A=[23-1;120;-12-2]

A=

23-1

120

-12-2

>>inv(A)

ans=

0.6667-0.6667-0.3333

-0.33330.83330.1667

-0.66671.1667-0.1667

>>formatrat%指定数值输出为分数形式

>>ans

ans=

2/3-2/3-1/3

-1/35/61/6

-2/37/6-1/6

例2、解矩阵方程:

>>X=[1-30;1027;1078]*inv([12-3;32-4;2-10])

X=

20-1513

-10577-58

-152112-87

例3、求矩阵

的特征值和特征向量:

>>[X,D]=eig([11/20;01/21;000])

X=

1-985/1393881/2158

0985/1393-881/1079

00881/2158%X为特征向量

D=

100

01/20

000

>>eig([11/20;01/21;000])%求特征值

ans=

1

1/2

0

上机实践:

1)、

,求:

AB,BA(AB=BA吗?

2)、设

解矩阵方程:

(2A-X)+2(B-X)=0

3)、解矩阵方程:

4)、求矩阵的A秩:

5)、求方阵

的逆矩阵

6)、用克拉默法则解线性方程组:

第三节矩阵的元素操作

一、MATLAB可以对矩阵元素作如下操作:

提取、赋值、删除、增加元素,从矩阵中提取小矩阵,由小矩阵合并成大矩阵。

命令格式

说明

A(i)

单下标访问,把A的元素按列从左到右连接成一个列向量,提取A的第i个元素

A(i,j)

双下标访问,提取元素

A(i,:

提取矩阵A的第i行

A(:

j)

提取矩阵A的第j列

A([m,n],[s,t])

提取矩阵A的第m,n行和第s,t列交叉处元素

A(i,j)=a

给元素

重新赋值为a

A(i,j)=[]

删除元素

例如:

>>A=zeros(2,4)%生成2行4列的零矩阵

A=

0000

0000

>>A(1,3)%重新赋值,使

=4

ans=

0

>>A(:

[2,3])=ones

(2)%把A的第2、3列元素的值变为1

A=

0110

0110

>>A(2,:

)%提取矩阵A的第2行

ans=

0110

二、矩阵的初等变换

1)互换变换:

矩阵的两行(列)互换位置。

A([i,j],:

)=A([j,i],:

)%交换A的第i行与第j行

A(:

[j,i])=A(:

[i,j])%交换A的第i列和第j列

2)数乘变换:

用一个非零数乘矩阵的某一行(列)的所有元素。

A(i,:

)=k*A(i,:

)%数k乘以A的第i行元素

A(:

,j)=k*A(:

j)%数k乘以A的第j列元素

3)消去变换:

把矩阵的某一行(列)乘以一个非零数后加到另一行上(列)去。

A(j,:

)=k*A(i,:

)+A(j,:

)%A的第i行元素乘以k后加到第j行上去。

A(:

j)=k*A(:

i)+A(:

j)%A的第i列元素乘以k后加到第j列上去。

例如:

用初等变换把矩阵

化为上三角阵

>>A=[-102;31-1;024]

A=

-102

31-1

024

>>A(1,:

)=-1*A(1,:

A=

10-2

31-1

024

>>A(2,:

)=-3*A(1,:

)+A(2,:

A=

10-2

015

024

>>A(3,:

)=-2*A(2,:

)+A(3,:

A=

10-2

015

00-6

上机实践:

1、设矩阵

,输入下列程序并解释语句的功能

(1)B(3,3)=0%

(2)B(2,6)=1%

注:

因为B没有6列,矩阵B的维数会根据需要增加,并且在其他没有赋值的位置填上0,以便使数组保持为一个矩形矩阵。

(3)B(:

4)=4%

(4)B(3:

-1:

1,1:

3)%

(5)B(1:

2,2:

3)%

(6)A1=B([1,2],[3,4])%

A2=B([2,3],[1,2])%

A=[A1,A2]%

2、用初等变换求矩阵

的逆矩阵

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

当前位置:首页 > 表格模板 > 调查报告

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

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