当前位置:文档之家› 实验二Matlab矩阵的初等运算与其答案

实验二Matlab矩阵的初等运算与其答案

百度文库 - 好好学习,天天向上

-1 实验二 Matlab矩阵的初等运算

实验目的:掌握Matlab的运算方法

实验内容:

在Matlab命令窗口输入:

H1=ones(3,2) H2=zeros(2,3) H3=eye(4)

观察以上各输入结果,并在每式的后面标注其含义。

>> format compact

>> H1=ones(3,2),disp('3行2列的全1矩阵')

H1 =

1 1

1 1

1 1

3行2列的全1矩阵

>> H2=zeros(2,3),disp('2行3列的全零矩阵')

H2 =

0 0 0 0 0 0

2行3列的全零矩阵

>> H3=eye(4),disp('4阶的单位矩阵')

H3 =

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

4阶的单位矩阵

已知123456Q,789P,10R,3S,试把这四个矩阵组合为一个大矩阵,看看有几种组合方式?8

>> format compact

>> Q=[1 2 3;4 5 6];P=[7 8 9];R=[1;0]; S=3;

>> [Q,R;P,S]

ans =

1 2 3 1

4 5 6 0

7 8 9 3

>> [R,Q;P,S]

ans =

1 1 2 3

0 4 5 6

7 8 9 3

>> [Q,R;S,P]

ans =

1 2 3 1

4 5 6 0

3 7 8 9

>> [R,Q;S,P]

ans =

1 1 2 3 0 4 5 6

3 7 8 9

>> [S,P;R,Q]

ans =

3 7 8 9

1 1 2 3

0 4 5 6

>> [S,P;Q,R]

ans =

3 7 8 9

1 2 3 1

4 5 6 0

>> [P,S;R,Q]

ans =

7 8 9 3

1 1 2 3

0 4 5 6

>> [P,S;Q,R]

ans =

7 8 9 3 百度文库 - 好好学习,天天向上

-2 1 2 3 1 4 5 6 0 建立一个字符串向量,删除其中的大写字母。提示:利用find函数和空矩阵。

>> a='ABCDefgijKLMN123'

a =

ABCDefgijKLMN123

>> k=find(a>='A'&a<='Z')

k =

1 2 3 4 10 11 12 13

>> a(k)=[]

a =

efgij123

在命令窗中分别输入who和whos,观察检查结果是否与所得结果相符。

>> who

Your variables are:

H1 H2 H3 P Q R S a ans k

>> whos

Name Size Bytes Class Attributes

H1 3x2 48 double

H2 2x3 48 double

H3 4x4 128 double

P 1x3 24 double

Q 2x3 48 double

R 2x1 16 double

S 1x1 8 double

a 1x8 16 char

ans 3x4 96 double

k 1x8 64 double

已知矩阵131254709716282113S,计算以下表达式的结果,体会*,^,sqrtm,expm与.*,.^,sqrt,exp的区别。

(1) r1=S^2, r2=2.^S , r3=S.^2,

(2) u1=sqrtm(S), v1=u1*u1

(3) u2=sqrt (S), v2=u2.*u2

(4) u3=expm(S), v3=logm(u3)

(5) u4=exp(S), v4=log(u4) 百度文库 - 好好学习,天天向上

-3 >> S=[1 3 12 5;4 7 0 9;7 1 6 2;8 2 11 3]

S =

1 3 12 5

4 7 0 9

7 1 6 2

8 2 11 3

>> r1=S^2

r1 =

137 46 139 71

104 79 147 110

69 38 142 62

117 55 195 89

>> r2=2.^S

r2 =

2 8 4096 32

16 128 1 512

128 2 64 4

256 4 2048 8

>> r3=S.^2

r3 =

1 9 144 25

16 49 0 81

49 1 36 4

64 4 121 9

>> u1=sqrtm(S)

u1 =

+ - - -

+ + + -

- + + +

- + - +

>> v1=u1*u1

v1 =

- + - +

+ - - +

+ - + -

+ - -

>> u2=sqrt (S)

u2 =

0

百度文库 - 好好学习,天天向上

-4 >> u3=expm(S)

u3 =

+008 *

>> v3=logm(u3)

v3 =

>> u4=exp(S)

u4 =

+005 *

>> v4=log(u4)

v4 =

1 3 12 5

4 7 0 9

7 1 6 2

8 2 11 3

对中定义的矩阵S完成以下变换,输出变换后的矩阵:

(1) 将矩阵S上下翻转

(2) 将矩阵S左右翻转

(3) 将矩阵S重组为一个2行8列的矩阵

(4) 将矩阵S整体逆时针旋转90°

(5) 提取矩阵S对角线上的元素

(6) 建立一个对角阵T,对角线上的元素为S对角线上的元素,其余元素为0

(7) 取出矩阵S的左下三角部分

(8) 取出矩阵S的右上三角部分

(9) 把矩阵S的元素按列取出排成一行

>> S=[1 3 12 5;4 7 0 9;7 1 6 2;8 2 11 3]

S =

1 3 12 5

4 7 0 9

7 1 6 2

8 2 11 3 >> flipud(S)

ans =

8 2 11 3

7 1 6 2

4 7 0 9

1 3 12 5

>> fliplr(S) 百度文库 - 好好学习,天天向上

-5 ans =

5 12 3 1

9 0 7 4

2 6 1 7

3 11 2 8

>> reshape(S,2,8)

ans =

1 7 3 1 12 6 5 2

4 8 7 2 0 11 9 3

>> rot90(S)

ans =

5 9 2 3

12 0 6 11

3 7 1 2

1 4 7 8

>> diag(S)

ans =

1

7

6

3

>> T=diag(S)

T =

1

7

6

3 >> T=diag(T)

T =

1 0 0 0

0 7 0 0

0 0 6 0

0 0 0 3

>> tril(S)

ans =

1 0 0 0

4 7 0 0

7 1 6 0

8 2 11 3

>> triu(S)

ans =

1 3 12 5

0 7 0 9

0 0 6 2

0 0 0 3

>> S(:)'

ans =

1 4 7 8 3 7 1 2 12 0 6 11 5

9 2 3

已知矩阵A=[1 3 5],B=[2 4 6]

(1) 求C=A+B,D=A-2,E=B-A

>> format compact

>> A=[1 3 5],B=[2 4 6]

A =

1 3 5

B =

2 4 6

>> C=A+B,D=A-2,E=B-A C =

3 7 11

D =

-1 1 3

E =

1 1 1

>> %都是按元素群运算

(2) 求F1=A*3,F2=A.*B,F3=A./B,F4=A.\B,F5=B.\A,F6=B.^A,F7=2./B,F8=B.\2.

相关主题