资源描述:
《MATLAB实用教程 教学课件 作者 张磊 毕靖 郭莲英 第六章.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第六章数值计算MATLAB提供大量具有强大数值计算功能的函数。本章着重介绍关于数值计算的函数。目录6.1多项式运算6.2插值运算6.3数据分析6.4功能函数6.5微分方程组数值解习题6.1多项式运算1.多项式表示法2.多项式求值3.多项式乘法和除法4.多项式的微积分5.多项式的根和由根创建多6.多项式部分分式展开7.多项式曲线拟合8.多曲线拟合图形用户接口MATLAB提供了关于多项式的函数:多项式的值;多项式的根和微分;多项式拟合曲线;部分分式。多项式函数1.多项式表示法MATLAB采用行向量表示多项式系数,多项式系数按降幂排
2、列。函数poly2str()将多项式系数向量转换为完整形式。2.多项式求值函数polyval()计算多项式的值,其具体使用方法如下:y=polyval(p,x),p为多项式系数行向量,x代入多项式的值;Y=polyvalm(p,X),把矩阵X代入多项式p中进行计算。3.多项式乘法和除法函数conv()和deconv()进行多项式乘法和除法,其具体使用方法如下:w=conv(u,v),实现多项式乘法,返回结果多项式的系数行向量;[q,r]=deconv(u,v),实现多项式除法。4.多项式的微积分(1)多项式的微分函数polyd
3、er()计算多项式的微分,其具体使用方法如下:k=polyder(p),返回多项式p微分的系数向量;k=polyder(a,b),返回多项式ab乘积微分的系数向量;[q,d]=polyder(b,a),返回多项式b/a微分的系数向量。(2)多项式的积分函数polyint()计算多项式的不定积分,其具体使用方法如下:s=polyint(p,k),返回多项式p不定积分的系数向量。5.多项式的根和由根创建多项式(1)多项式的根函数roots()求多项式的根,其具体使用方法如下:r=roots(c),返回多项式c的所有根r。(2)由根
4、创建多项式函数poly()实现由根创建多项式,其具体使用方法如下:p=poly(r),输入r是多项式所有根,返回值为多项式的系数向量;p=poly(A),输入A是方阵,返回值为A的特征多项式的系数向量。6.多项式部分分式展开函数residue()将多项式之比按部分分式展开,其具体使用方法如下:[r,p,k]=residue(b,a),求多项式b/a的部分分式展开;[b,a]=residue(r,p,k),从部分分式得到多项式向量。7.多项式曲线拟合函数polyfit()采用最小二乘法对给定数据进行多项式拟合,其具体使用方法如下
5、:p=polyfit(x,y,n),采用n次多项式p来拟合数据x和y。运行结果如下图所示。8.多曲线拟合图形用户接口曲线拟合的图形用户接口可通过图形窗口的【Tools】菜单中【BasicFitting】选项启动。运行结果如下图所示。6.2插值运算6.2.1一维插值6.2.2二维插值插值是根据已知输入/输出数据集和当前输入估计输出值。MATLAB提供大量的插值函数,如下表所示。插值函数6.2.1一维插值一维插值就是对函数y=f(x)进行插值,一维插值的原理如下图所示。函数interp1()实现一维插值,其具体使用方法如下:yi=
6、interp1(x,y,xi),x,y是已知数据集且具有相同长度的向量;yi=interp1(y,xi),默认x为1:n,其中n为向量y的长度;yi=interp1(x,y,xi,method),method用于指定插值的方法。运行结果如下图所示。6.2.2二维插值二维插值是对两变量的函数z=f(x,y)进行插值,二维插值的原理如下图所示:函数interp2()实现二维插值,其具体使用方法如下:zi=interp2(x,y,z,xi,yi),x,y,z为原始数据,返回值zi是插值结果;zi=interp2(z,xi,yi),若
7、z=n×m,则x=1:n,y=1:m;zi=interp2(x,y,z,xi,yi,method),method用于指定插值的方法。运行结果如下图所示。6.3数据分析6.3.1基本数据分析函数6.3.2协方差和相关系数矩阵6.3.3有限差分和梯度6.3.4信号滤波和卷积6.3.5傅立叶变换MATLAB提供大量数据分析的函数,首先给出如下约定:一维数据分析时,数据可以用行向量或者列向量来表示;二维数据分析时,数据可以用多个向量或者二维矩阵来表示。6.3.1基本数据分析函数1.最大值、最小值、平均值、中间值、元素求和2.标准差和方
8、差3.元素排序基本数据分析函数续表1.最大值、最小值、平均值、中间值、元素求和运行结果如下,并如下图所示。2.标准差和方差3.元素排序MATLAB提供对实数、复数和字符串的排序函数。函数sort()实现数值的排序;函数sortrows()实现对行的排序。6.3.2协方差和相关