资源描述:
《天津大学matlab讲义-应用基础第四章》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第4章MATLAB的数值计:4.1求解线性代数方程组已知线性代数方程组Ax=b可用下面三种方法求解1)直接求逆法求解x=inv(A)*b此法当A不可逆时失效2)左除法求解x=Ab左除法的基础是高斯消元法,由消元法对系数矩阵A进行LU分解。进而得到方程组的解。该法运算量少■运算速度快■而且数值稳定性好■解的精度高。当方程个数大于未知变量个数时,该法可得到问题的最小二乘解。当方程个数小于未知变量个数时,该法可求得有多个0元素的解。3)使用伪逆函数求最小范数解:x=pinv(A)*b例如:$3个未知量4个方程A=[l23;456;780;258]b=[366,804,351,514]1【小二乘解x
2、=Ab咎该馀向量具有〕小范数res=A*x-b咎生成4个未知量的3个方程A=Afb=b(1:3)%具有最多0元素x=Ab咎计算最小范数解xn=pinv(A)*b运行结果如下:A=1234567802b=366804351514x=247.9818-173・109:L114.9273res=-119.454511.9455035.8364A=123b=3668043510-165.900099.0000168.3000xn=30.8182-168.981899.0000159.05454.2多项式计算1.多项式的表示方法多项式使用按降冨排列的多项式系数所构成的行向量描述。即c1xn+c2xn
3、-1+...+cnx+cn+i可描述为:[C—C2/…,cn,Cn+1]2.多项式相乘conv(a,b)其中:a,b为多项式系数向量3.多项式相除[q,r]=deconv(a,b)其中:q为商为余项1.多项式相加两个相同规模的多项式可以相加:a+b注意:若规模不同,则要把低阶多项式补足若干个"0"05、多项式微分1)求多项式P的导数polyder(p)2)求多项式之积的导数polyder(a,b)aq3)求多项式之比—的导数—[q,d]=polyder(a,b)6.多项式求值polyval(p,x)功能:求多项式P对应于x的值7.多项式求根roots(p)8.求一组根所对应的多项式若已知一多项
4、式的根为行向量r时,则poly(r)为r所对应的多项式。例如:a=[l234];b=[14916];c=conv(a,b)d=a+be=c+[000d][q,r]=deconv(eza)h=polyder(c)g=polyder(a,b)[qfd]=polyder(a,b)p=[lz-12,0z25,116];v=polyval(p,2•5)r=roots(p)运行结果如下:c=162050758464d261220e162052819684q14918r00002612h6308015015084g6308015015084q212423212d1834104209288256v=30.06
5、25r=11.74732.7028-1.2251+1・4672i-1.2251-1.4672i4・3数值逼近polyfit(x,y,N)若已知离散数据向量召y,则将采用最小二乘法构造一个N阶多项式例如:x二[0・1・2・3・4・5・6・7・8・91];y=[-447,1.978,3.28,6.16,7.08,7.34,7.66,9.56,9.48,9.3,11.2];p=polyfit(x,y,2)xl=0:.01:1;z=polyval(p,xl);plO=polyfit(x,y,10)zlO=polyval(plO,xl);plot(x,y,'bo-',xl,z,'k:',xl,zlO,'
6、r)legendC原始数据','2阶曲线拟和','10阶曲线拟和')运行结果如下:-9・810820.1293-0・0317plO=1.0e+006*Columns1through7-4.87735・8233一4・29482.0211-0.46442.2965-0.6032Columns8through110.1090-0.01060.0004-0.00002、_元插值若已知离散数据向量xzYf则yi=interpl(x,y,xi,1method1)将计算在Xi处的函数值yi。其中的参数method可为:nearestlinear最邻近插值线性插值(缺省)splinecubic三次样条插值三次
7、多项式插值(要求X等距)Xi为向量时,yi也为向里。例如:x=0:8;y=sin(x);xl=O:.1:8;yl=interpl(x,y,xlz1nearest1);y2=interpl(x,yfxlz1linear');y3=interpl(x,y,xlz1spline1);y4=interpl(x,yzxl,1cubic1);plot(X,y,'o-1zxl,yl,'b―'zxlfy2f'k: