Matlab数值运算与绘图.docx
- 文档编号:8195775
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:12
- 大小:28.16KB
Matlab数值运算与绘图.docx
《Matlab数值运算与绘图.docx》由会员分享,可在线阅读,更多相关《Matlab数值运算与绘图.docx(12页珍藏版)》请在冰豆网上搜索。
Matlab数值运算与绘图
实验二MATLAB数值运算与绘图
(验证性实验)
一、实验目的
l.熟悉Matlab中各类数据,尤其是矩阵的定义、赋值和运用。
2.了解Matlab的矩阵分析函数以及求线性方程组的数值解;
3.熟悉多项式运算函数、数值插值。
二、实验仪器与软件
1.PC机1台
2.MATLAB7.0环境
三、实验原理
1.创建矩阵的方法
a.直接输入法规则:
矩阵元素必须用[]括住;矩阵元素必须用逗号或空格分隔;在[]内矩阵的行与行之间必须用分号分隔。
逗号和分号的作用:
逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。
分号如果出现在指令后,屏幕上将不显示结果。
b.用matlab函数创建矩阵:
空阵[]—matlab允许输入空阵,当一项操作无结果时,返回空阵;rand——随机矩阵;eye——单位矩阵;zeros——全部元素都为0的矩阵;ones——全部元素都为1的矩阵
c.矩阵的修改:
可用键找到所要修改的矩阵,用键移动到要修改的矩阵元素上即可修改;指令修改:
可以用A(,)=来修改。
2.矩阵运算
a.矩阵加、减(+,-)运算规则:
(1)相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。
(2)允许参与运算的两矩阵之一是标量。
标量与矩阵的所有元素分别进行加减操作。
b.矩阵乘(,./,.\)运算规则:
A矩阵的列数必须等于B矩阵的行数;标量可与任何矩阵相乘。
c.矩阵乘方——a^n,a^p,p^a
a^p——a自乘p次幂,对于p的其它值,计算将涉及特征值和特征向量,如果p是矩阵,a是标量,a^p使用特征值和特征向量自乘到p次幂;如a,p都是矩阵,a^p则无意义。
d.多项式运算
matlab语言把多项式表达成一个行向量,该向量中的元素是按多项式降幂排列的。
f(x)=anxn+an-1xn-1+……+a0
可用行向量p=[anan-1……a1a0]表示;poly——产生特征多项式系数向量
e.代数方程组求解
matlab中有两种除运算左除和右除。
四、实验内容
1.输入下列向量(矩阵)
>>g=[1234];h=[4321];
_______________________________________________________________________________________________________________________________>>g=[1234]
g=
1234
>>h=[4321]
h=
4321
2.分别执行以下数组点运算
>>s1=g+h,s2=g.*h,s3=g.^h,s4=g.^2,s5=2.^h
>>s1=g+h
s1=
5555
>>s2=g.*h
s2=
4664
>>s3=g.^h
s3=
1894
>>s4=g.^2
s4=
14916
>>s5=2.^h
s5=
16842
3.输入下列特殊矩阵
〉〉A=[]
〉〉A=eye(10)
〉〉A=ones(5,10)
>>A=rand(10,15)
>>A=randn(5,10)
>>A=zeros(5,10)
>>A=[]
A=
[]
>>A=eye(10)
A=
1000000000
0100000000
0010000000
0001000000
0000100000
0000010000
0000001000
0000000100
0000000010
0000000001
>A=ones(5,10)
A=
1111111111
1111111111
1111111111
1111111111
1111111111
A=rand(10,15)
A=
Columns1through6
0.95010.61540.05790.01530.83810.1934
0.23110.79190.35290.74680.01960.6822
0.60680.92180.81320.44510.68130.3028
0.48600.73820.00990.93180.37950.5417
0.89130.17630.13890.46600.83180.1509
0.76210.40570.20280.41860.50280.6979
0.45650.93550.19870.84620.70950.3784
0.01850.91690.60380.52520.42890.8600
0.82140.41030.27220.20260.30460.8537
0.44470.89360.19880.67210.18970.5936
Columns7through12
0.49660.72710.79480.13650.58280.2091
0.89980.30930.95680.01180.42350.3798
0.82160.83850.52260.89390.51550.7833
0.64490.56810.88010.19910.33400.6808
0.81800.37040.17300.29870.43290.4611
0.66020.70270.97970.66140.22590.5678
0.34200.54660.27140.28440.57980.7942
0.28970.44490.25230.46920.76040.0592
0.34120.69460.87570.06480.52980.6029
0.53410.62130.73730.98830.64050.0503
Columns13through15
0.41540.21400.6833
0.30500.64350.2126
0.87440.32000.8392
0.01500.96010.6288
0.76800.72660.1338
0.97080.41200.2071
0.99010.74460.6072
0.78890.26790.6299
0.43870.43990.3705
0.49830.93340.5751
A=randn(5,10)
A=
Columns1through6
-0.43261.1909-0.18670.11390.29440.8580
-1.66561.18920.72581.0668-1.33621.2540
0.1253-0.0376-0.58830.05930.7143-1.5937
0.28770.32732.1832-0.09561.6236-1.4410
-1.14650.1746-0.1364-0.8323-0.69180.5711
Columns7through10
-0.39990.6686-1.60410.5287
0.69001.19080.25730.2193
0.8156-1.2025-1.0565-0.9219
0.7119-0.01981.4151-2.1707
1.2902-0.1567-0.8051-0.0592
A=zeros(5,10)
A=
0000000000
0000000000
0000000000
0000000000
0000000000
4.输入下列矩阵及矩阵函数
>>A=[20–1;132];B=[17–1;423;201];
>>M=A*B%矩阵A与B按矩阵运算相乘
>>det_B=det(B)%矩阵A的行列式
>>rank_A=rank(A)%矩阵A的秩
>>inv_B=inv(B)%矩阵B的逆矩阵
>>[V,D]=eig(B)%矩阵B的特征值矩阵V与特征向量构成的矩阵D
>>X=A/B%A/B=A*B-1,即XB=A,求X
>>Y=B\A%B\A=B-1*A,即BY=A,求Y
A=[20-1;132]
A=
20-1
132
B=[17-1;423;201]
B=
17-1
423
201
M=A*B
M=
014-3
171310
det_B=det(B)
det_B=
20
rank_A=rank(A)
rank_A=
2
inv_B=inv(B)
inv_B=
0.1000-0.35001.1500
0.10000.1500-0.3500
-0.20000.7000-1.3000
[V,D]=eig(B)
V=
-0.70940.74440.7444
-0.6675-0.3599+0.0218i-0.3599-0.0218i
-0.2263-0.5587-0.0607i-0.5587+0.0607i
D=
7.268000
0-1.6340+0.2861i0
00-1.6340-0.2861i
X=A/B
X=
0.4000-1.40003.6000
0.00001.5000-2.5000
5.多项式运算
>>p=[120-56]%表示多项式
>>rr=roots(p)%求多项式p的根
>>pp=poly(rr)%由根的列向量求多项式系数
>>s=[00123]%表示多项式
>>c=conv(p,s)%多项式乘积
>>d=polyder(p)%多项式微分
>>x=-1:
0.1:
2;
>>y=polyval(p,x)%计算多项式的值
p=[120-56]
p=
120-56
rr=roots(p)
rr=
-1.8647+1.3584i
-1.8647-1.3584i
0.8647+0.6161i
0.8647-0.6161i
pp=poly(rr)
pp=
1.00002.00000.0000-5.00006.0000
s=[00123]
s=
00123
c=conv(p,s)
c=
001471-4-318
d=polyder(p)
d=
460-5
x=-1:
0.1:
2
x=
Columns1through6
-1.0000-0.9000-0.8000-0.7000-0.6000-0.5000
Columns7through12
-0.4000-0.3000-0.2000-0.100000.1000
Columns13through18
0.20000.30000.40000.50000.60000.7000
Columns19through24
0.80000.90001.00001.10001.20001.3000
Columns25through30
1.40001.50001.60001.70001.80001.9000
Column31
2.0000
y=
Columns1through6
10.00009.69819.38569.05418.69768.3125
Columns7through12
7.89767.45416.98566.49816.00005.5021
Columns13through18
5.01764.56214.15363.81253.56163.4261
Columns19through24
3.43363.61414.00004.62615.52966.7501
Columns25through30
8.329610.312512.745615.678119.161623.2501
Column31
28.0000
6.有理多项式:
>>n=conv([10],[13])%定义分子多项式
>>d=conv([11],[113])%定义分母多项式
>>[r,p,k]=residue(n,d)%进行部分分式展开
>>p1=[1-p
(1)],p2=[1-p2]%定义两个极点多项式p1(s)=s-p
(1),p2(s)=s-p
(2)
>>den=conv(p1,p2)%求分母多项式den=p1(s)*p2(s)
>>num=conv(r1,p2)+conv(r2,p1)%求分子多项式
〉〉[num,den]=residue(r,p,k)%根据r,p,k的值求有理多项式
n=
1030
d=
1243
r=
-3.3333-4.0202i
-3.3333+4.0202i
6.6667
p=
-0.5000+1.6583i
-0.5000-1.6583i
-1.0000
k=
[]
p1=
-0.5000+1.6583i
p2=
1.5000+1.6583i
den=
3.0000
num=
0.000010.000030.0000
den=
1.00002.00004.00003.0000
7.函数插值运算
线形样条插值
〉〉x=0:
10
>>y=sin(x)
>>x0=[3.44.76.58.2]
>>y0=interp1(x,y,x0)%线形插值
>>x1=0:
0.1:
10
>>y1=sin(x1)
>>plot(x1,y1,'r:
',x,y,'b*',x0,y0,'g.')%插值比较
五、实验要求
利用所学知识,完成上述1至7项实验内容,并将实验结果写在实验报告上。
六、实验思考题
1.矩阵建立与有哪几种方法?
a.直接输入法规则:
矩阵元素必须用[]括住;矩阵元素必须用逗号或空格分隔;在[]内矩阵的行与行之间必须用分号分隔。
逗号和分号的作用:
逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。
分号如果出现在指令后,屏幕上将不显示结果。
b.用matlab函数创建矩阵:
空阵[]—matlab允许输入空阵,当一项操作无结果时,返回空阵;rand——随机矩阵;eye——单位矩阵;zeros——全部元素都为0的矩阵;ones——全部元素都为1的矩阵
2.矩阵的加、减、乘、除运算规则是什么?
a.矩阵加、减(+,-)运算规则:
(1)相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。
(2)允许参与运算的两矩阵之一是标量。
标量与矩阵的所有元素分别进行加减操作。
b.矩阵乘(,./,.\)运算规则:
A矩阵的列数必须等于B矩阵的行数;标量可与任何矩阵相乘。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 数值 运算 绘图