一.概述
本文旨在于构建插值、拟合、逼近的知识网络,具体实现请参考Matlab help和相关参考书。
(1)所谓插值,已知插值基点,寻找过插值基点且满足某一度量的近似函数,推测未观测数据。
(2)所谓拟合,已知带误差的数据点,寻找满足某种度量的近似函数,实现数据和函数的最佳匹配,近似函数不一定过已知数据点。
(3)所谓逼近,已知复杂函数,寻找简单函数近似替代复杂函数。
二.插值
Matlab内置函数:
- 一维插值:interp1
- 二维插值:interp2
- 多维插值 :interp3 或 interpn
此外,这里推荐一种电离层插值算法:全球电离层克里金插值
三.拟合
1.非线性最小二乘拟合
适用情况:已知输入向量与输出向量的函数关系,但不清楚函数的系数向量
x=[0.9 1.5 13.8 19.8 24.1 28.2 35.2 60.3 74.6 81.3];y=[455.2 428.6 124.1 67.3 43.2 28.1 13.1 -0.4 -1.3 -1.5];f=@(a,x) a(1)*exp(a(2)*x);[t,r]=lsqcurvefit(f,[100,-1],x,y);times=linspace(x(1),x(end));plot(x,y,'ko',times,f(t,times),'b-')

2.多项式拟合
适用情况:数据的准确度相同
x=[0.3,0.4,0.7,0.9,1.2,1.9,2.8,3.2,3.7,4.5];y=[1,2,3,4,5,2,6,9,2,7];p1=polyfit(x,y,5);y1=polyval(p1,x);vpa(poly2sym(p1),5)plot(x,y,'--ko',x,y1,'-ro');legend('原始数据','拟合数据');

3.加权最小方差拟合
适用情况:数据的准确度不同
具体实现请参考相关资料,Matlab无内置函数
四.逼近
(1) 最佳一致逼近:Chebyshev
(2) 最佳平方逼近
参考:《数学基本问题的MATLAB解法》——王元昊
文章转载自不糊涂录,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




