您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 实验三MATLAB矩阵分析与处理m文件
1实验三、MATLAB矩阵分析与处理、函数文件一、实验目的1.掌握生成特殊矩阵的方法。2.掌握矩阵分析的方法。3.用矩阵求逆法解线性方程组。4.理解函数文件的概念。5.掌握定义和调用MATLAB函数的方法。二、实验内容及结果1.设有分块矩阵22322333EASOR,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22SORSREA。程序:E=eye(3);%建立单位矩阵R=rand(3,2);%建立随机矩阵O=zeros(2,3);%建立零矩阵S=diag([1,2]);%建立对角阵A=[E,R;O,S];X1=A*AX2=[E,R+R*S;O,S*S]结果:2X1和X2结果相等,即可证明原式成立。2.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。为什么?程序:formatratH=hilb(5)%建立希尔伯特矩阵P=pascal(5)%建立帕斯卡矩阵Hh=det(H)%求行列式的值Hp=det(P)Th=cond(H)%求条件数Tp=cond(P)结果:3P矩阵的条件数比矩阵H的条件数更接近于1,因此,矩阵P的性能要好于矩阵H。3.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。程序:a=rand(5)b=det(a)%求行列式的值c=trace(a)%求迹d=rank(a)%求秩4e1=norm(a,1)%求1-范数e2=norm(a)%求2-范数einf=norm(a,inf)%求-范数结果:54.已知5881252018629A求A的特征值及其特征向量,并分析其数学意义。程序:A=[-29,6,18;20,5,12;-8,8,5];[V,D]=eig(A)%求特征值和特征向量结果:求得的三个特征值为-25.3169,-10.5182和16.8351,各特征值对应的特征向量为V的各列构成的向量。5.下面是一个线性方程组:52.067.095.06/15/14/15/14/13/14/13/12/1321xxx(1)求方程的解。程序:a=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];b=[0.95,0.67,0.52]';x=inv(a)*b结果:6(2)将方程右边向量元素b3改为0.53,再求解,并比较b3的变化和解的相对变化。程序:a2=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];b2=[0.95,0.67,0.53]';x2=inv(a)*b2结果:b向量仅改变一个元素结果相差就很大。(3)计算系数矩阵A的条件数并分析结论。程序:formatrata=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];c=cond(a)结果:条件数远大于1,说明矩阵的性能不是很好。6.建立A矩阵,试比较sqrtm(A)和sqrt(A),分析他们的区别。程序:A=[6,5;4,7];B=sqrtm(A)C=sqrt(A)7结果:sqrt是作用在矩阵的各元素上,而sqrtm是直接作用于矩阵的。7.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。编写一个函数文件lxy.m,使其达到所求功能。程序:function[a,b,c,d]=lxy(i)a=exp(i);%求指数b=log(i);%求对数c=sin(i);%求正弦值d=cos(i);%求余弦值在命令窗口调用该函数:[a,b,c,d]=lxy(2i+1)%调用lxy.m函数结果:88.设01.0)3(11.0)2(1)(42xxxf,编写一个MATLAB函数文件fx.m,使得调用f(x)时,x可用矩阵带入,得出的f(x)为同阶矩阵。编写一个函数文件fx.m,如下图所示:程序:functionf=fx(x)f=inv((x-2).^2+0.1)+inv((x-3).^4+0.01)在命令窗口调用该函数:x=[2,1;3,5];f=fx(x)%调用fx.m函数结果:9三、实验总结与体会1.一定要提前预习。2.再用希尔伯特矩阵的时候要先命令以有理数形式输出。3.条件数越接近1矩阵性能越好。4.超越函数是直接作用于矩阵上的,而普通数学运算函数是作用于各元素本身。5.命令中含有逆矩阵形式(1/x)时,应用inv(x)。
本文标题:实验三MATLAB矩阵分析与处理m文件
链接地址:https://www.777doc.com/doc-2458111 .html