实验2 数值数组及运算

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验2 数值数组及运算

一、实验目的

(1)掌握一维数组、二维数组、多项式和高维数组的创建

(2)掌握对数组操作的常用函数

二、实验内容

1.使用冒号运算符创建下面各表达式对应的向量。

a) x=linspace(1,10,5); x=1:2.25:10

b) x=linspace(-5,5); x=-5:0.1:5

c) x=logspace(1,3,3); x=10.^[1;3]

d) x=logspace(1,3,5);

2.利用MATLAB 内置函数计算下面的值。

a) cosh(5) cosh(5)

b) sinh(-2) sinh(-2)

c) (e 5+e -5)/2 (exp(5)+exp(-5))/2

d) erf(1.2) ,其中,ηηd e x erf x

⎰-=02

)((提示:用help 查一下erf 的调用格式)

erf(1.2)

3.用linspace 函数创建下面表达式的对应向量

a) x=0:10; x=linspace(0,10,11)

b) x=0:0.2:10; x=linspace(0,10,51)

c) x=-12:12; x=linspace(-12,12,25)

d) x=10:-1:1; x=linspace(10,1,10)

4.给定行向量[]78910=x 和列向量⎥⎥⎥⎥

⎤⎢⎢⎢⎢⎣⎡=4321y ,至少使用两种不同的方法求行向量z 。其中i i i y x z -=

x=[10 9 8 7]; y=[1 2 3 4]’; z=x-y ’

5.在MATLAB 中输入下列矩阵,再求出他们的乘积矩阵C ,并将C 矩阵的右下角的2×3子矩阵赋给D 矩阵。

⎥⎥⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎢⎣⎡=49819323753175323321A ,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡++=3498143576255332763441i i B

A=[1 2 3 3;2 3 5 7;1 3 5 7;3 2 3 9;1 8 9 4];

B=[1+4i 4 3 6 7;2 3 3 5 5;2 6+7i 5 3 4;1 8 9 4 3];

C=A*B

D=C(4:5,3:5)

6.根据下面两个矩阵,执行下列的矩阵运算指令。

⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=136782078451220124A ,⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡=087654321B A=[4 12 20;12 45 78;20 78 136];

B=[1 2 3;4 5 6;7 8 0];

I=[1 0 0;0 1 0;0 0 1];

(1) A+5*B 和A-B+I 分别是多少(I 是单位矩阵)

A+5*B A-B+I

(2) A.*B 和A*B 将分别给出什么结果,他们是否相同,为什么?

A.*B A*B

不带点式矩阵相乘,带点式数组相乘

(3) 得出A.^B ,A\B 和A/B 的结果

A.^B A\B A/B

(4) 找出A 矩阵中大于50到100之间的元素,B 矩阵中大于5的元素 A(find((A>50)&(A<100))) B(find(B>5))

7.若[]NaN Inf Inf NaN A 521-=,运行下面的指令,并解释为什么会出现这样的结果。isnan(A),isfinite(A),isinf(A),any(A),all(A).

8.求出以下矩阵的逆矩阵。

⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----=627943251A ,⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡---=)6sin()2sin()7sin()9sin()4sin()3sin()2sin()5sin()1sin(B inv(A) inv(B) inv(取逆)

9.编写MATLAB 语句来手工输入矩阵A ,然后从矩阵A 得到矩阵B

⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321A ,⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡=321654987B A=[1 2 3;4 5 6;7 8 9];

B=flipud(A) flipud(第一行与最后一行互换)

10. 矩阵可以看成是行向量和列向量的组合。给定行向量[]321=u 和

[]654=v ,用一条语句求2×3矩阵A 。其中u 是第一行,v 是第二行。

u=[1 2 3];

v=[4 5 6];

A=[u;v]

11. 给定矩阵⎥⎥⎦

⎤⎢⎢⎢⎣⎡=71812511C ,用两行语句实现从C 中引用列向量,得出]18211['=s 和]715['=t 。

C=[11 5;2 1;18 7];

s=C(:,1) t=C(:,2)

12. 使用diag 函数和冒号运算符创建下面矩阵

⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡19000

0130000700001)(,1000020000300004)(,4000030000200001)(c b a diag(1:1:4) diag(4:-1:1) diag(1:6:19)

13. 使用diag 函数创建n ×n 对称三对角阵。 ⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎣⎡------=2100121001210012D a=[2 2 2 2];b=[-1 -1 -1]

D=diag(a)+diag(b,-1)+diag(b,1)

14. 创建如下矩阵

⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡=001010100E e=eye(3);E=fliplr(e) fliplr(第一列与最后一列互换) 15. 用一条语句创建如下矩阵(提示:使用矩阵相加以及内置命令tril (取

下三角),ones (全一),eye (单位阵)和zeros (全零))triu(取下三角)

⎥⎥⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎢⎣⎡----------=1111111111101111001110001A a=2*eye(5)-ones(5) b=tril(a) b(:,5)=1

16. 使用rehape 函数和冒号运算符创建下列矩阵。

⎥⎦⎤⎢⎣⎡-----=⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡=642024531135)(,24181262216104201482)(B b A a reshape(2:2:24,3,4) reshape(-5:1:6,2,6) reshape(按列加)

相关文档
最新文档