找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 338|回复: 0

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

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

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

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

×
1 引言 ' | k: F0 V, b* G9 R/ {

) G# Z6 T! l, [1 ^
在工业生产实践中,系统误差是不可避免而又必须加以校准的。对其较典型的处理是用模型法的非线性校正,即对系统误差进行理论分析和数学处理以建立起系统误差模型,再以此模型确定校正算法和数学表达式。作者在进行系统误差非线性校正中,除采用了传统的分段线性插值法,还根据具体情况采用了作者命名为逐次逼近线性插值法进行处理。通过对两种方法结果的比较,认为逐次逼近线性插值法效果良好,具有一定的实用价值。线性化处理软件编程法分三种方法:计算法、查表法、插值法;其中,插值法又分分段线性插值法、二次插值法、分段曲线拟合法、实验曲线的自动拟合法等。下面先简介分段线性插值法。
: |5 z, H" a- z9 \1 _* L8 W+ E8 f% Y/ N* x: h9 ?2 B7 f F- I* i/ }9 }' s( A

图1
8 F/ X$ V8 _0 }% y" X- B

2 分段线性插值法

! k5 @7 ^7 _9 y2 G: w9 d
此法较为常用,基本方法就是将y=f(x)曲线分成几段直线代替曲线。如图1示。 3 G# _$ O/ O3 V: I- L
设非线性函数y=f(x)在区间[x0,xm]是单调的。过点(x0,f(x0)),(xm,f(xm))作直线U=F(x)=Ax+B,则在直线段区间中,其拟合误差: ) f. ^# H5 V* H; B [$ w. P4 |) a/ [- W; I2 c: C; P& T: u" v4 A0 [* Y9 Z' l6 x! _. v1 P1 ^+ C+ f) I* F) K6 T( |; G' Y& V. [+ W1 T# `9 c; V& c+ N: j
D= + B( w! H* F$ x5 Y$ J3 o' t F(x)-f(x) 7 I# f0 D) c. r
, [1 ]4 C) S! S7 w. r0 N, i
f(x)
& H4 U5 \$ s; j0 o+ T
若该段最大误差点不大于允许误差时,可用直线U=F(x)拟合曲线u=f(x),否则可将区间再细分分化为两个子区间,分别作折线进行误差判断。这样按上述方法不断进行区间划分,直至各子区间m(x)均满足为止。 : F$ w$ E. ^6 Z3 J4 M( t
由于输入-输出函数的非线性,且要求各子区间的拟合最大误差满足△max≤δ,因而各子区间长度不一。这就涉及到了区间划分问题。分段线性插值法使用优选法进行区间划分,即使用系数0.618。如图1所示,从xm处向低值截取xk=0.618(xm-x0)的一段为第二区间,(x0,xk)为第一区间。连接点(xk,f(xk)),(xm,f(xm)),既得区间[xk,xm]的拟合折线为: 8 x+ M) ?' L' ^. C8 l3 S5 J
F1=A1x+B1 + q4 a5 X# y& z4 {4 i
A1=(f(xm)-f(xk))/(xm-xk),B1=f(xm)-A1x1m 0 G4 s& u4 C* b& x' J5 {, } n
依次类推,可知第i个子区间的拟合折线为: * p! R4 _ b) l6 t
Fi=Aix+Bi * Z. n, W! x' \% H4 O& F
Ai=(f(x(i+1)m)-f(xim))/(x(i+1)m-xim),Bi=f(xim)-Aixim . L# c! R7 [% W5 i+ a
若f(x)为非单调曲线,则可先通过df/dx=0求出各极点,以便化为单调区,再在各单调区间应用上述方法进行拟合。
2 \# T+ l4 `1 ^2 S& W $ ]* f0 ~6 p' }2 Q$ O; `2 @' d" n) ^" j& ]( d3 R% X! M

图2 二分法分段线性插值法
9 f. p( w1 r! }" i) x# v8 ^% r

3 逐次逼近线性插值法

% E5 z3 A9 z$ k8 m6 {9 [7 O
作者在对分段线性插值法的作用中发现,该法中公式的系数取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 方法比较 5 c2 ^% E0 R. b- Y

& j! z' |+ U% {1 [
用以上两种方法分别对采集数组进行了公差为0.001mm,0.015mm和0.002mm的区间计算,所得折线公式数(区间数)如下表所示。
/ p* u' U' a2 K& u7 X - H0 ~3 O9 O: B* Z+ ^+ g$ U, j5 U, A1 O; O' S+ `6 h% P4 q; S5 V3 q8 ]* {, w2 z* b: V4 h4 g. k/ T n l" N4 E3 s$ A! R, P) c8 ~ n C" [! e. M* h; n9 D+ L; A
δ % m9 I+ V( x% F4 u4 I! x0.001 " g5 v, _# v7 i* Z9 _0.015 & Z$ L8 d6 Y- r* y3 E) O0.002 - _# @1 S8 [2 p! \9 }3 W1 u
区间数 $ W5 V0 o- g4 v) s. ?
方法 : Q9 `: u) [' t
分段线性插值法 / M+ {9 \' B" H8 A7 x73 " L& p6 c( ~" ` 27 1 f0 k% @ R9 @9 |* P* }( @ 13 5 b% Z( `( a1 E6 @0 @, z. f
逐次分段线性插值法 & i |9 S3 H# r0 s1 ^# l 75 ; K) p4 }, G* q4 G, e6 z3 T 29 7 Q# }5 W0 i8 G, i; f13
# h* F) |* A7 d; ]

5 结束语

. B# Y- j$ j2 n+ k
由上述实验数据可以看出,逐次逼近线性插值法效果同传统分段线性插值法基本相同,分段区间较少,线性化良好,其思维方式符合编程习惯,编程清晰,具有一定的实用价值。该法为非线性校正又增添了一种新的可供选择的方案。
! c; \# Z' Z; S5 l. T
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

中国磨削网

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

GMT+8, 2024-11-16 09:42 , Processed in 0.137429 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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