实验二 MATLAB数值运算.docx
- 文档编号:25424931
- 上传时间:2023-06-08
- 格式:DOCX
- 页数:8
- 大小:23.50KB
实验二 MATLAB数值运算.docx
《实验二 MATLAB数值运算.docx》由会员分享,可在线阅读,更多相关《实验二 MATLAB数值运算.docx(8页珍藏版)》请在冰豆网上搜索。
实验二MATLAB数值运算
通信与信息工程学院
MATLAB语言程序设计
实验报告
班级:
电信1303
姓名:
王洪武
学号:
1307050320
实验名称:
MATLAB数值计算
成绩:
评语:
通信与信息工程学院
二〇一五年
题目MATLAB数值计算
1.实验目的
(1)理解MATLAB变量、表达式及语句。
(2)掌握MATLAB数组、矩阵创建、寻访、赋值
(3)掌握常见的几种标准数组。
(4)掌握数组、矩阵算术运算、逻辑运算及关系运算。
(5)掌握部分MATLAB数值运算函数。
2.实验内容
1、生成一个4阶幻方矩阵H,
(1)求H的转置;
(2)将H旋转90度;(3)对H实行左右翻转;(4)对H实行上下翻转;(5)H(1,2);(6)H(:
3);(7)H(:
2:
3);(8)H(1:
3;2:
4)
>>H=magic(4)
H=162313
511108
97612
414151
>>H.'
ans=16594
211714
310615
138121
>>rot90(H)
ans=138121
310615
211714
16594
>>fliplr(H)
ans=133216
810115
12679
115144
>>flipud(H)
ans=414151
97612
511108
162313
>>H(1,2)
ans=2
>>H(:
3)
ans=3
10
6
15
>>H(:
2:
3)
ans=23
1110
76
1415
>>H(1:
3,2:
4)
ans=2313
11108
7612
2、分别用ones()、eye()、rand()、magic()、pascal()生成5个4*4矩阵,完成如下运算:
>>A=ones(4,4)
A=1111
1111
1111
1111
>>B=eye(4)
B=1000
0100
0010
0001
>>>>rand('state',0)
>>C=rand(4)
C=0.95010.89130.82140.9218
0.23110.76210.44470.7382
0.60680.45650.61540.1763
0.48600.01850.79190.4057
>>D=magic(4)
D=162313
511108
97612
414151
>>E=pascal(4)
E=1111
1234
13610
141020
(1)求下面矩阵
;
>>F=inv(A)*[B+inv(C)*(inv(D)*E)]
F=NaNNaNNaNNaN
NaNNaNNaNNaN
NaNNaNNaNNaN
NaNNaNNaNNaN
(2)找出magic()中大于5小于10的数(调用find()函数);
>>D(find(D>5&D<10))
ans=9
7
6
8
(3)判断F是否能被3整除(调用rem()函数);
>>rem(F,3)==0
ans=
0000
0000
0000
0000
3、已知
,求
(1)A的逆;
>>inv(A)
ans=
-0.18180.15910.2500
0.09090.2955-0.2500
0.0909-0.20450.2500
(2)A的行列式;
>>det(A)
ans=
-44
(3)A的所有特征向量和特征值;
>>[V,D]=eig(A)
V=
-0.93450.65080.0586
0.25170.5369-0.7621
0.25170.53690.6448
D=
-3.424400
06.42440
002.0000
>>eig(A)
ans=
-3.4244
6.4244
2.0000
4、已知多项式
,试求:
(1)p(x)的根;
(2)计算p(1.5),p(-2),p(5)的值。
>>p=[2,-1,0,3];
>>roots(p)
ans=
0.7500+0.9682i
0.7500-0.9682i
-1.0000
>>x=1.5;polyval(p,x)
ans=
7.5000
>>x=-2;polyval(p,x)
ans=
-17
>>x=5;polyval(p,x)
ans=
228
5、用多种方法计算
矩阵方程的解,其中A=[123;456;789];B=[15–3–7]’;
>>A=[123;456;789]
A=123
456
789
>>B=[15;-3;-7]
B=15
-3
-7
方法一:
>>X=inv(A)*B
X=1.0e+017*
-0.6305
1.2610
-0.6305
方法二:
>>X=A\B
X=1.0e+017*
-0.6305
1.2610
-0.6305
方法三:
>>[L,U]=lu(A)
L=0.14291.00000
0.57140.50001.0000
1.000000
U=7.00008.00009.0000
00.85711.7143
000.0000
>>X=U\(L\B)
X=1.0e+017*
-0.6305
1.2610
-0.6305
3.思考题
(1)数组算术运算与矩阵算术运算有何异同;
最基本的区别说是运算加不加点的问题,一维数组相当于向量,二维数组相当于矩阵.所以矩阵是数组的子集,数组运算是指数组对应元素之间的运算,也称点运算.矩阵的乘法、乘方和除法有特殊的数学含义,并不是数组对应元素的运算,所以数组乘法、乘方和除法的运算符前特别加了一个点。
矩阵是一个二维数组,所以矩阵的加、减、数乘等运算与数组运算是一致的。
对于乘法、乘方和除法等三种运算,矩阵运算与数组运算的运算符及含义都不同:
矩阵运算按线性变换定义,使用通常符号;数组运算按对应元素运算定义,使用点运算符.
(2)两个矩阵相乘以及求一个矩阵的逆分别有何前提条件;
两个矩阵相乘:
要求前一个的列数等于后一个的行数。
如果有一个是标量的话,另一个也没有任何要求。
矩阵的逆:
矩阵要是方阵,是非奇异的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验二 MATLAB数值运算 实验 MATLAB 数值 运算