王修礼
【摘要】不采用x作为自变量而采用间接参数t作插值函数,计算型值点权重,得到一种新的插值方法,WXL插值样条,由连续4个型值点得出中间一段唯一的插值结果,型值点不受单调增加限制,插值通过给定型值点且一阶导数连续,平面上4个型值点循环插值可以得到一光滑椭圆形曲线,在水轮机等效率曲线绘制使用得到比较理想的效果.
【关键词】分段插值;通过型值点; 一阶导数连续;新插值样条;光滑连续曲线;绘制特性曲线
引 言
在水轮机能量性能试验中,要通过计算机自动绘制出等效率曲线及其他性能曲线.通过试验可以得到一系列等效率点数据,绘成曲线有的是开放的有的是闭合的.对于绘制闭合曲线的基本要求是:
1.插值点通过所有给定的型值点,在型值点处不产生误差;
2.型值点不受单调增减的限制,可以形成闭合曲线;
3.一阶导数连续,保证曲线的光滑性.
4.曲线的凹凸性符合型值点趋向.
在插值计算中,有多种方法,如多项式插值、Hermite插值、样条插值、有理B样条插值等,都采用x作为自变量进行计算,采用函数就会遇到自变量x单调增加或单调减少的限制,有时不得不采用分段进行插值.现在常用的Hermite 三次样条可以进行开放曲线的插值,但受到单调增减的限制;有理B样条插值,可以得到光滑的曲线,但不是每个型值点都通过.有许多文献介绍了不同的插值方法,但得到的曲线形状都不是太理想.基于以上要求和现行的插值方法,希望从不同的角度找出一种新插值方法,以满足要求,且不需要太大的计算量.
一、新插值样条——WXL插值样条
1.采用样条进行插值,且自变量不是x,而是采用间接变量t,[0≤t≤1],给出t的插值函数,对插值点的x 和y分别计算出各型值点的x和y的权重,得到所插点的x和y值.
2.给定4个连续型值点,确定中间一段插值,该段插值与其他点无关.
3.满足引言中提到的4项基本要求.
通过长时间(从1996年开始考虑)的探讨和改进,终于找到了一种间接插值函数.
给定点: P(i)=[X(i),Y(i)],i=1,2,3,….
插值点:SP(i)=[SX(i),SY(i)],i=1,2,3,…,S.
SX(i)为点P(i+1)到点P(i+2)之间的X插值.
SY(i)为点P(i+1)到点P(i+2)之间的Y插值.
插值函数表达式为:
SX(i)=∑i=4i=1Ri* X(i),i=1,2,3,4.(1)
SY(i)=∑i=4i=1Ri* Y(i),i=1,2,3,4.(2)
其中Ri为插值因子函数,是WXL插值样条的关键.
Ri=fi(t),i=1,2,3,4.
对于X和Y都采用相同的插值fi(t).
具体的插值函数fi(t)的表达式暂不列出.给出Ri随t的变化规律见图1.
图1 Ri/Rimax随T的变化规律
二、WXL插值样条的使用
给定M个型值点P(i)后,用WXL插值样条进行插值计算时,由于是每4个型值点确定中间一段插值,插值段数比给定的型值点数少两个,还需求补充两个边界条件才能完成整个曲线插值.遇到的两种情况,采用不同的处理方法.
1.给出的型值点要求完成的插值曲线是开放式的.将给定的M个型值点的第一个和最后一个进行双重处理,得到(M+2)个型值点,进行插值后得到M段插值,完成整个插值曲线.
即:给定的型值点为:
P[X(0),Y(0)],P[X(1),Y(1)],P[X(2),Y(2)],…,P[X(i),Y(i)],…,P[X(M),Y(M)],共M个点.经以上处理后变为:
P[X(0),Y(0)],P[X(0),Y(0)],P[X(1),Y(1)],P[X(2),Y(2)],…,P[X(i),Y(i)],…,P [X(M),Y(M)],P [X(M),Y(M)],共(M+2)个点.
3.给出的型值点要求完成的插值曲线是闭合式的.在给定的M个型值点的第一个之前加进最后一个型值点;在最后一个之后加进第一个型值点,得到(M+2)个型值点,进行插值后得到M段插值的闭合曲线.给定的型值点为:
P[X(0),Y(0)],P[X(1),Y(1)],P[X(2),Y(2)],… P[X(i),Y(i)],…
P[X(M),Y(M)].共M个点.经处理后变为:
P [X(M),Y(M)],P[X(0),Y(0)],P[X(1),Y(1)],P[X(2),Y(2)],… P[X(i),Y(i)],… P [X(M),Y(M)],P[X(0),Y(0)].共(M+2)个点.
三、WXL插值样条的性质
1.连续性
插值因子函数Ri=fi(t),i=1,2,3,4,为连续函数,改变间接变量t的步长可以得到所需要的插值点数.
2.过型值点
从插值因子值表1可以得出,在某一插值段插值结束时,即t=1时,R3=1,其他因子值均为0,插值为该段第三点的值;而在随后的插值段值插开始时,即t=0时,R2=1,其他因子值均为0,插值为第二点的值,也就是上段第三点的值,插值通过该点.
3.唯一性
4个型值点确定唯一一段(中间两点之间)插值,无论插如多少点,曲线形状不变.
4.很强的外凸性
通过插值的图形可以看出图形有很强的外凸性,这对单调曲线插值不利,但在作逼近(用梯形面代替积分)计算时有利.
5.权 性
满足∑i=4i=1Ri=1.
图2显示的是平面上4点,P1(4,3),P2(-4,3),P3(-4,-3),P4(4,-3),通过插值(插入9个点,本文所有插图都是按9个点插值给出)计算后的椭圆图形.
图2 4个型值点插值后的椭圆图形
6.一阶导数连续
分别对函数表达式(1)和(2)对自变量t进行求导,即分别对插值因子函数Ri对t进行求导,得到一阶导数:
y′=∑i=4i=1 SY′ (i)t/ ∑i=4i=1SX′ (i)t,i=1,2,3,4,….(3)
表2给出根据插值因子函数fi(t)的一阶导数计算出的导数插值因子(每段插值3个点,t的步长为0.25,保留4位小数).
通过计算可得,在某一插值段插值结束时,即t=1时,左导数与随后的插值段值插开始时,即t=0时,右导数相等,斜率值为该点的前后两点的y增量与x增量之比.这个导数值是插值方法所希望得到的值.
7.插值不越界
计算可得,结合在型值点的导数性质,可得由P1(-8,-4),P2(-6,0),P3(2,1),P4(4,-2)所确定的插值P2到P3段,插值点都处于过P2点的直线(斜率与P1和P3连线相同)与过P3点的直线(斜率与P2和P4连线相同)相交点及P2,P3点所形成的区域内.见图3.该性质保证插值结果的稳定性,不会造成插值超差.
图3 插值点在固定区域内
8.与插值方向无关
给定一系列的型值点,从开始到结尾插值或从结尾到开始点插值,得到的结果完全相同,得到的是唯一的一条插值曲线.
9.二阶导数不连续
仿照一阶导数的方法求出二阶导数的插值函数,计算出二阶导数值,在型值点处左右导数不同,即二阶导数在型值点处不连续.中间插值二阶导数是连续的.
10.几何不变性
平移或旋转型值点后,得到的图形形状不变,与坐标系的选择无关.
图4显示平面4点,P1(-5,-3),P2(0,6),P3(5,3),P4(0,0),经过45°旋转后再平移10,前后形状对比,图形本身形状不变.
图4 图形几何形状保持不变
11.直线保持性
给定的4个型值点共线,插值段也保持共线.
12.多维插值性
由于是通过间接变量t进行计算,可以同时对多维参数进行插值.例如在水轮机模型试验中,同一工况点有单位转速、单位流量、单位功率、效率等多个参数,要求出在某一效率下的其他参数值,只要把该效率值所对应的某插值段的t值求出,就可以按该t值计算出其他所有参数的对应值,不用像以往分别进行效率对各个参数的插值计算.
四、插值结果图形分析
1.平面4点循环插值图形与椭圆线的比较
(1)图2中所得到的插值点与对应椭圆公式(x2/5.5872)2+y2/(4.2426)2=1)的计算点完全相同,并保持椭圆长短轴的坐标方向相同.
(2)计算各点的一阶导数与根据椭圆公式求导所得的导数值也完全相同.
(3)但是若增加型值点数(在椭圆线上的点),得出的插值点值和一阶导数值就不完全与公司计算的相同了,在t=0.5时偏差最大.图5 显示在半个椭圆上4个型值点插值后的曲线与椭圆线的对比.
图5 半椭圆插值(4点)与椭圆线比较
2.与Hermite 三次样条比较
Hermite三次样条在现行的插值领域已经得到广泛的使用,但使用中受到一些限制.
(1)Hermite三次样条每段都是一元三次函数,型值点必须是单调增减(或减少),否则计算出错,遇到型值点返回时,只能采用分段进.
(2)行,这样在分段点处导数就不连续了.而WXL插值样条是采用间接变量t作自变量,分别对x,y进行计算,型值点可以任意增减.
(3)Hermite三次样条在给定的型值点较多时,计算量很大,但现在计算机的发展,这个问题已经不困难了.而WXL插值样条计算量很小,每4个点确定一段插值,计算量不随型值点的增加而增加.
(4)在型值点出Hermite三次样条二阶导数连续,而WXL插值样条不连续,但有很强的外凸性.
(5)Hermite三次样条有时会产生插值越界现象,这对插值计算和不利,越界现象出现的规律还不好掌握,而WXL插值样条没有越界现象,插值稳定,是比较理想的.
3.与有理B样条比较
在AUTOCAD和Excel中都采用有理B样条,通过控制偏差进行逼近和拟合,优点是曲线光滑,不受型值点单调增减限制,不会产生插值越界现象,缺点是除开始和结尾两点外其他点有微小偏差,在中间的插值偏小.取单位圆上的4个坐标轴点,分别用AUTOCAD的“Spline”拟合和用WXL插值样条插值,两者比较可以看出,WXL插值样条与单位圆完全重合,“Spline”拟合的曲线在两点中间产生偏差,其值与圆的半径之比为0.0173.图6表示对比结果.
图6 “Spline”拟合线与WXL插值样条线
五、绘制水轮机等效率曲线
在水轮机模型试验中,等效率曲线是很重要的,等效率线的绘制是将某一等效率值下的一系列工况点(即对应各个导叶开度下的单位流量和单位转速值)光滑连成曲线.效率的综合误差一般为0.25%,等效率线拟合时方法不当,造成的偏差有时会大于综合误差.现大多采用Hermite三次样条分段进行,得到的结果不是非常理想.图7是某混流式转轮用现行方法绘制的等效率曲线.
图7 一混流式转轮等效率曲线
采用WXL样条对中心三条等效率线进行插值,得到结果见图8.
图8 WXL样条等效率线
从插值曲线结果可以看出,在每段的插值点都有外凸的趋向,使得曲线不是很光滑,但总体效果还是比较理想的.
六、在其他领域的使用
由于WXL插值样条不受型值点走向的限制,曲线光滑连续,在绘制地图等高线、计算机图形仿真、断面近似逼近计算等都可以采用,相信可以得到比较理想的结果.
七、结 语
采用间接变量计算4点权重进行插值计算的WXL插值样条,不受型值点单调增减的限制,具有良好的光滑连续等优良特性,在水轮机综合特性曲线绘制使用效果理想,可以在许多需要插值计算领域推广采用.
【参考文献】
[1]作者: wt,chapter3-34_2004,B样条曲线与曲面,清华大学,计算机图形学.
[2]谢进.有理三次Hermite插值样条几千逼近性质.工程数学学报,2011(3).
[3]仇建飞.AutoCADVBA编程实现样条曲线拟合函数曲线,职大学报,2005(4).
[4]王建雄.B样条函数在地形图绘制中的应用.四川测绘,1994(2).
[5]韩继伟.不同插值方法绘制断面图效果分析.JOURNAL OF CHINA HYDROLOGY,2012年2月.