找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 344|回复: 0

一种新型的线性分段插值法的研究

[复制链接]
发表于 2010-9-13 22:22:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×
1 引言 # u3 b: t$ X# L2 W1 n# Q1 S0 ^, P

& S. q, O9 i4 m
在工业生产实践中,系统误差是不可避免而又必须加以校准的。对其较典型的处理是用模型法的非线性校正,即对系统误差进行理论分析和数学处理以建立起系统误差模型,再以此模型确定校正算法和数学表达式。作者在进行系统误差非线性校正中,除采用了传统的分段线性插值法,还根据具体情况采用了作者命名为逐次逼近线性插值法进行处理。通过对两种方法结果的比较,认为逐次逼近线性插值法效果良好,具有一定的实用价值。线性化处理软件编程法分三种方法:计算法、查表法、插值法;其中,插值法又分分段线性插值法、二次插值法、分段曲线拟合法、实验曲线的自动拟合法等。下面先简介分段线性插值法。
+ c$ u7 f4 N. x& R( J! y 3 r, O( ^' K- |! J1 P" C2 h6 Q4 k) O3 Z. \1 m$ ?: S; T" V6 R. R: h; Z/ q

图1
1 F; o+ f9 k/ C

2 分段线性插值法

) Y1 _6 i5 ~. S& V( ]
此法较为常用,基本方法就是将y=f(x)曲线分成几段直线代替曲线。如图1示。 : w0 j; B1 |/ ~# n1 U6 y8 \+ b, Q$ M
设非线性函数y=f(x)在区间[x0,xm]是单调的。过点(x0,f(x0)),(xm,f(xm))作直线U=F(x)=Ax+B,则在直线段区间中,其拟合误差: 5 z$ l& r* k5 K) a& O8 j1 b( T" V0 H' w: V( U6 o6 B* @; P2 v @) ^' D5 s3 N; l! L( i% ]3 e6 Q5 L' G/ k# N: o* R* J$ E+ _7 \6 l7 y. J( F# y
D= 5 C) P* H5 u% H8 r2 k F(x)-f(x) . Y% G0 q5 w2 L, d- l
) R- r, F3 L3 l Q
f(x)
7 C5 W% _7 j5 d' c6 }
若该段最大误差点不大于允许误差时,可用直线U=F(x)拟合曲线u=f(x),否则可将区间再细分分化为两个子区间,分别作折线进行误差判断。这样按上述方法不断进行区间划分,直至各子区间m(x)均满足为止。 4 \; e( ?' M U7 L3 [
由于输入-输出函数的非线性,且要求各子区间的拟合最大误差满足△max≤δ,因而各子区间长度不一。这就涉及到了区间划分问题。分段线性插值法使用优选法进行区间划分,即使用系数0.618。如图1所示,从xm处向低值截取xk=0.618(xm-x0)的一段为第二区间,(x0,xk)为第一区间。连接点(xk,f(xk)),(xm,f(xm)),既得区间[xk,xm]的拟合折线为: + w$ c; y& i( v2 |' A8 d K, @
F1=A1x+B1 8 ?/ f8 x" C9 Q* { K( T
A1=(f(xm)-f(xk))/(xm-xk),B1=f(xm)-A1x1m $ n6 E/ x0 C# s4 V& F. A/ y
依次类推,可知第i个子区间的拟合折线为: 2 r3 @8 T- p( N8 l
Fi=Aix+Bi 8 u) @2 E% A, U/ b }, C
Ai=(f(x(i+1)m)-f(xim))/(x(i+1)m-xim),Bi=f(xim)-Aixim , c9 K: ^9 l" j$ O1 [
若f(x)为非单调曲线,则可先通过df/dx=0求出各极点,以便化为单调区,再在各单调区间应用上述方法进行拟合。
- { g# w4 P7 l6 j9 G7 [6 M2 }" O1 W1 ^! Z$ {. l, N4 `8 J6 `( W5 j9 Q1 L$ q6 F% t6 d& t0 G4 L. W

图2 二分法分段线性插值法
6 f8 U* a* L' Z! @

3 逐次逼近线性插值法

! _8 c# D# m$ \* @7 M- I
作者在对分段线性插值法的作用中发现,该法中公式的系数取0.618,这对均匀数组来说易引起编程错觉。如在求区间段中,当m-k=2时,X=x[m]-0.618(x[m]-x[k]),则x[m]若数组个数为m+1个,则在区间(x[0],x[m])范围内,令X=x[m]-0.5(x[m]-x[0])进行第一次划分,若X=x[k]或x[k]4 方法比较 0 Z3 \! Z- Y+ T; ]

& y3 j6 \7 k* T4 r
用以上两种方法分别对采集数组进行了公差为0.001mm,0.015mm和0.002mm的区间计算,所得折线公式数(区间数)如下表所示。
4 p K, k% S! b: M 5 i1 i! F2 X2 d! B3 f- B7 a& A. I: W! F7 Z6 I# {; C4 Q# [6 a+ h% C+ a' b. b0 K6 q" C) x% w8 k# }: k, a0 u1 V/ z4 B) B0 H4 j% @+ e) y2 `* v& }% d2 l- u' J, o$ h. ]1 t C9 O$ g2 J1 q
δ + ?$ |- F" d6 j0.001 0 N% D" l& u" l y5 [8 q0.015 . W$ R* L! z5 c& V' _% C% [ 0.002 2 b L1 s c/ p4 [
区间数 3 ?1 T# Y! c5 e: s0 k
方法 " m' q' N: t8 a* m: J' q5 s* h
分段线性插值法 . T/ L& h, Z+ Z6 |8 k73 + V- f) E7 q5 T27 % |$ y5 S/ ? g2 l/ k0 I0 ~13 % ~! o5 W# Z) ?: S$ E( T
逐次分段线性插值法 1 v1 {$ V3 F& k7 I 75 ( | @0 `7 k% A* s$ M" `& D29 * ] ?) V7 c1 v x& K 13
' Y1 }$ W3 t# W0 |" ~' W, E" V

5 结束语

2 z' l( Y5 t6 V' x0 ]
由上述实验数据可以看出,逐次逼近线性插值法效果同传统分段线性插值法基本相同,分段区间较少,线性化良好,其思维方式符合编程习惯,编程清晰,具有一定的实用价值。该法为非线性校正又增添了一种新的可供选择的方案。
, J' Q: t0 f# H. Q) q
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2025-4-20 22:14 , Processed in 0.144158 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表