插值法(二)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
n ,0 n , 1
• 此方程组称为法方程。
例1
• 给出一组实验数据点:
0.00 0.25 0.50 0.75 1.00 1.0000 1.2840 1.6487 2.1170 2.7183
• 求最佳近似函数。
Hale Waihona Puke • 确定函数形式,将这组数据描绘在坐标 纸上发现近似一条直线,又近似一条抛 物线。 • 先取直线,确定表达式为:
m n 2
• 由极值存在的必要条件可知,
I 0, ak
k 0,1,, n
得出:
m n I 2 ( xi ) a j j ( xi ) yi k ( xi ) 0 ak i 0 j 0
( x ) a
i 0 i j 0 j
多维插值法
• 简单的多维插值法是一维插值法的扩展 • 例如:给出双自变量f(x,y)的数据点,要求 出f(x,y)的插值
多维插值的求法
• 首先确定(x,y)的范围,即给出
xi x xi 1
y j y y j 1
• 然后应用样条函数拟合
f ' ' ( xi , y j )
– 求出
• 法方程为:
2.5 1.875 a0 8.7680 5 2.5 a 5.4514 1 . 875 1 . 5625 1 1.875 1.5625 1.3828 a2 4.4015
f ( xi ) 1.0052 0.8541 x 0.8437x
b=X2\y T=[0:.1:2.5]’;
Y1=[ones(size(T)) T T.^2]*a;
Y2=[ones(size(T)) exp(-T) T.*exp(-T)]*b; figure(1) subplot(2,2,1) plot(T,Y1,’-’,t,y,’o’),grid on title(‘多项式回归’) subplot(2,2,2) plot(T,Y2,’-’,t,y,’o’),grid on title(‘指数函数回归’)
f ( xi ) a0 a1 x
• 确定函数系数:
• 其中
m 4, n 1, 0 1, 1 x, ( x) 1
2.5 a0 8.7680 5 2.5 1.875 a 5.4514 1
f ( xi ) 0.89968 1.70784 x
• 最后,对于给定的s,计算x和y(x,y是 曲线上某点的坐标),从而得到所要的 插值。
– 若对应某一特殊x值需要与其对应的y值,可 先求出与x对应的s值,再由s计算相应的y值
应用
• 求s需要解三次方程式,该方法增加了计 算的工作量。 • 是一种工程中应用很好的方法。
例
• 给出位于半径为R的圆周上许多数据点, 求插值 • 首先引入第三个变量s • 写出x和y对于s的函数 s s x( s ) cos( ) y ( s) sin( ) R R • 对x(s)和y(s)进行样条插值
1 2 f ( xi ) yi 3.9210
2 2 i 0 4 2
• 取抛物线,确定表达式为:
f ( xi ) a0 a1x a2 x
• 确定函数系数:
2
m 4, n 2, 0 1, 1 x, 2 x , ( x) 1
2
– 参量插值法 – 多维插值法
参量插值法
• 问题:给出一些形成闭合形状的数据点, 要求拟合出一条光滑匀顺的曲线。 • 可以看出所求的被插函数是一个多值函 数,即每一个x值至少对应两个y值。 • 构造一个同时与闭合曲线的两个分支曲 线相融合的函数是十分困难的。
参量插值的具体方法
• 引入第三个变量s,认为原变量x、y是s的 函数。 • s一般取给定数据点间的距离作为s各节点 的值,如: – 第一点: s s1 0
2 2
为平方误差,
为均方误差。
2
最小二乘法的过程
• 包含两个基本环节:
– 第一:确定函数形式。将给定数据点描绘在 坐标纸上,根据数据点的分布规律确定出函 数形式。 – 第二:确定函数系数。问题转换为求多元函 数的极小点。
I (a0 , a1 ,, an ) ( xi ) a j j ( x) yi i 0 j 0
插值法(二)
• 例题表明,前述方法中尚无一种插值法 用来处理斜率为无穷大的被插函数的插 值问题。 • 虽然可以通过互换自变量与因变量的方 法来处理上述问题,但被插函数若是闭 合曲线,问题仍无法解决。
• 以上问题通常出现的是在被插函数中有 两个自变量,且以给出等高线f(x,y)=常数 的形式来表述。 • 例如:地形图、气象变化图等。插值函 数如:超椭圆方程等。 • 解决此类问题的方法:
• 求解: • 采用两种拟合曲线
– 取抛物线
y a0 a1t a2t
– 取指数函数
t
2
y b0 b1e b2te
t
• MATLAB程序lsm
X1=[ones(size(t)) t t.^2];
a=X1\y
X2=[ones(size(t)) exp(-t) t.*exp(-t)];
– 第二点:
s s2 ( x2 x1 ) ( y2 y1 )
2
2 12
– 第三点:
s s3 s2 ( x3 x2 ) ( y3 y2 )
2
2 12
– 依此类推。
• 参量曲线x(s)和y(s)以常用的样条插值法处 理
– 对于闭合曲线,适用周期性边界条件 – 非闭合曲线,选用其它边界条件
2 2 f ( xi ) yi 2.76104
2 2 i 0 4
2
例2
• 给出一组实验数据点:
1 2 3 4 5 6 7 8 15.3 20.5 27.4 36.6 49.1 65.6 87.8 117.6
• 求最佳近似函数。
• 这些点近似一指数曲线,选定拟合曲线 为:
m
n
j
( xi ) k ( xi ) ( xi ) yi k ( xi )
i 0
m
• 定义内积:
j , k ( xi ) j ( xi ) k ( xi )
i 0 m
yi , k ( xi ) yi k ( xi )
i 0
m
前式化为:
,
ae 0 e 11.437
f ( xi ) 11.437e
0.29121x
最小二乘插值法的MATLAB应用
• 1.利用polyfit功能函数进行多项式拟合。 • 2.利用常用的矩阵除法解决复杂型函数的 拟合。A\B 矩阵的左除,当A为mn矩阵, B为m列向量,则矩阵左除为最小意义下 方程Ax=B的解 • 举例:
t y 0 0.5 0.3 0.8 1.1 1.6 2.3 0.82 1.14 1.25 1.35 1.4
• 取抛物线拟合曲线
y a0 a1t a2t
2
t=[0,0.3,0.8,1.1,1.6,2.3]; y=[0.5,0.82,1.14,1.25,1.35,1.4]; a=polyfit(t,y,2) x1=[0:0.2:2.4]; y1=a(3)+a(2)*x1+a(1)*x1.^2; plot(t,y,’*’),hold on plot(x1,y1,’-r’)
f ' ' ( xi 1 , y j )
f ' ' ( x, y j )
– 同样,用样条函数拟合
f ' ' ( xi , y j 1 )
– 求出
f ' ' ( xi 1 , y j 1 )
f ' ' ( x, y j 1 )
• 最后,应用 f ' ' ( x, y j )
– 求出
f ' ' ( x, y j 1 )
f ( x i ) yi
• 的最佳近似表达式:
n
i 0, 1, 2, ,n
f ( xi ) a j j ( x)
j 0
• 上式必须满足:
2 2
min ( xi ) f ( xi ) yi
i 0
n
2
( xi ) 为权重。 其中 ( x) 为权函数,
f ( xi ) ae
bx
• 两边取对数得: ln f ( xi ) ln a bx • 令:u ln f ( xi ), a0 ln a
• 则得直线:
u a0 bx
b 0.29121
• 由yi求得u值 ao 2.43685 , • 用前述方法求得: • 从而 a 2.43658
t=[0,0.3,0.8,1.1,1.6,2.3]'; y=[0.5,0.82,1.14,1.25,1.35,1.4]'; lsm
f ( x, y)
最小二乘插值法
• 在标准插值法中要求拟合曲线严格通过 每个给定数据点。若个别给出的数据点 误差很大,使插值效果不理想。 • 最小二乘插值法放弃使拟合曲线严格通 过给定数据点的要求,寻求在区间范围 内整体最佳拟合的曲线。
– 是一种经验方法。
最小二乘法的提法
• 给出一组数据点(xi,yi), i=0,1,2,…,n ,…, m, 寻求满足条件:
j 0 j
n
k
a j yi , k ,
k 0,1,, n
0 ,0 0 , 1 n , n
1 , 0 1 , 1
n ,n
a0 y 0 , 0 y , a 1 1 1 n , n an yn , n