本文档的主要内容详细介绍的是MATLAB的图形功能详细资料说明。
MATLAB的应用
MATLAB在数值分析中的应用
插值与拟合是来源于实际、又广泛应用于实际的两种重要方法。随着计算机的不断发展及计算水平的不断提高,它们已在国民生产和科学研究等方面扮演着越来越重要的角色。下面对插值中分段线性插值、拟合中的最为重要的最小二乘法拟合加以介绍。
分段线性插值
所谓分段线性插值就是通过插值点用折线段连接起来逼近原曲线,这也是计算机绘制图形的基本原理。实现分段线性插值不需编制函数程序,MATLAB自身提供了内部函数interp1其主要用法如下:
interp1(x,y,xi) 一维插值
◆ yi=interp1(x,y,xi)
对一组点(x,y) 进行插值,计算插值点xi的函数值。x为节点向量值,y为对应的节点函数值。如果y 为矩阵,则插值对y 的每一列进行,若y 的维数超出x 或 xi 的维数,则返回NaN。
◆ yi=interp1(y,xi)
此格式默认x=1:n ,n为向量y的元素个数值,或等于矩阵y的size(y,1)。
◆ yi=interp1(x,y,xi,’method’)
method用来指定插值的算法。默认为线性算法。其值常用的可以是如下的字符串。
● nearest 线性最近项插值。
● linear 线性插值。
● spline 三次样条插值。
● cubic 三次插值。
所有的插值方法要求x是单调的。x 也可能并非连续等距的。
正弦曲线的插值示例:
》》 x=0:0.1:10;
》》 y=sin(x);
》》 xi=0:0.25:10;
》》 yi=interp1(x,y,xi);
》》 plot(x,y,’0’,xi,yi)
则可以得到相应的插值曲线。
Matlab也能够完成二维插值的运算,相应的函数为interp2,使用方法与interpl基本相同,只是输入和输出的参数为矩阵,对应于二维平面上的数据点,详细的用法见Matlab联机帮助。
最小二乘法拟合
在科学实验的统计方法研究中,往往要从一组实验数据中寻找出自变量x 和因变量y之间的函数关系y=f(x) 。由于观测数据往往不够准确,因此并不要求y=f(x)经过所有的点 ,而只要求在给定点上误差按照某种标准达到最小,通常采用欧氏范数作为误差量度的标准。这就是所谓的最小二乘法。在MATLAB中实现最小二乘法拟合通常采用polyfit函数进行。
函数polyfit是指用一个多项式函数来对已知数据进行拟合,我们以下列数据为例介绍这个函数的用法:
》》 x=0:0.1:1;
》》 y=[ -0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2 ]
为了使用polyfit,首先必须指定我们希望以多少阶多项式对以上数据进行拟合,如果我们指定一阶多项式,结果为线性近似,通常称为线性回归。我们选择二阶多项式进行拟合。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !