刘 植,肖 凯,江 平,谢 进
(1.合肥工业大学数学学院,安徽合肥 200009)
(2.合肥学院科学计算研究所,安徽合肥 230601)
曲面的数学描述是计算机辅助几何设计和计算机图形学的重要研究方向.传统的曲面设计工具多采用多项式插值样条方法,但对于给定的插值条件,生成的插值函数是唯一确定的,形状修改与控制不够灵活.随着CAD/CAM技术的发展,包含B´ezier、B样条方法的非均匀有理B样条(NURBS)方法已被广泛的应用到工业产品如轮船、汽车、飞机等形状造型的设计.然而,这些方法得到曲面的局部修改与约束控制同样面临挑战.近年来,有关单变量有理插值方法的研究在一定程度上解决了局部修改与控制的问题,取得了重要进展[1].如刘爱奎在文[2]中提出带有形状参数的加权有理插值曲线不仅具有简洁的表达式,同时可以让曲线整体约束于折线之间,并具有局部点控制能力.Erge[3]分析了C1条件下线性有理样条的两点边值问题.Han[4]研究了一类C2连续有理三次保凸逼近方法及性质.
关于双变量样条函数的研究也取得了很多成果:Sun[5]提出一种分母(1,0)次分子(3,1)次的三角域有理插值样条,该方法主要应用于地质勘探、锻造科技和医学影像中基于平行线上的散乱数据的插值曲面重构;Duan和他的团队在二元有理插值样条研究领域做了大量工作:如在文献[6]中构造了一类基于函数值和偏导数值分母为双一次、分子双三次的二元有理插值样条,该样条函数具有简单对称的基函数,便于理论研究与曲面局部约束控制;在文献[7]中给出了仅基于函数值分母为双一次、分子双三次的二元有理插值样条,在文献[8]中给出了仅基于函数值分母为双二次、分子双三次的二元有理插值样条,并研究了样条函数的矩阵表示、边界性质等.邓四清等构造了仅基于函数值分子分母均为双三次的二元有理插值曲面样条[9],以及分母为双二次分子双三次的二元有理插值曲面样条[10,11],并研究了这些曲面的边界、逼近及中央点约束控制问题.2012年,项梅灵[12]构造了仅基于函数值分母为双二次、分子双三次的二元有理插值曲面样条,并研究了其凸性、边界插值、极限、解析和正则等性质,同时分析了参数对曲面形状的控制作用.
加权组合是CAGD中的一种常用造型方法.Huang[13]和Zhang[14]仅基于函数值,先构造了一种分母为(1,0)次、分子双三次的二元有理插值样条曲面,另一种分母为(0,1)次、分子双三次的二元有理插值样条曲面,然后将两种样条曲面加权组合得到一种新的二元有理插值样条曲面,并讨论了曲面的矩阵形式,误差分析以及局部约束问题.上述二元有理插值构造方法在形式上的共同点是分母为一次、二次或三次,而分子一般是三次或四次.对于给定的插值数据,通过改变参数值可以控制有理插值曲面的形状.这些有理函数较高的次数带来了形式以及计算的复杂性.本文仅基于给定函数值,通过对两种线性有理插值函数的加权组合构造一类新的二元有理插值方法.该有理插值函数具有形式对称的基函数.对于给定的插值数据,插值曲面形状的整体与局部控制灵活方便.
插值函数的构造思路及步骤如下:
(1)在x方向构造分子分母均为一次的有理插值曲线,然后在y方向用线性插值方法构造二元有理插值曲面;
(2)按相反顺序构造先y后x方向的二元有理插值曲面;
(3)对上述两类有理插值函数加权组合构造新的二元有理插值曲面.
设{(xi,yi,fi,j)},i=1,2;j=1,2为给定平面区域D=[x1,x2;y1,y2]上的插值数据点集,x1,x2和y1,y2为插值节点.令h=x2−x1,l=y2−y1,对xy平面上任意点(x,y)∈D,令u=(x−x1)/h,先沿x方向构造线性有理插值曲线
其中αj>0.显然,插值函数满足
对任意x,可在D上构造二元有理插值函数
这里v=(y−y1)/l,λ>0.可以验证满足
同理,先从y方向构造插值曲线,再从x方向构造插值曲面可以得到另一种二元线性有理插值函数
其中βi>0,µ>0.可以验证也满足
对于任意给定的插值数据点集 {(xi,yj,fi,j)},i=1,2;j=1,2 和正参数 α1,α2,β1,β2,λ,µ,在区域D上的插值函数(x,y)和(x,y)都是唯一的,且无论参数取何正值均满足插值条件.
基于插值曲面(1)式和(2)式,可以构造新的二元加权有理插值函数
其中ω∈[0,1].该函数满足插值条件
称α1,α2,β1,β2,λ,µ为形状参数,ω为权系数,也称(x,y)和(x,y)为基本曲面(或极限曲面).
为了便于分析该有理插值函数的性质,将(1)式和(2)式代入到(3)式并化简,插值函数P(x,y)也可改写为如下基表示形式
其中
称为二元加权有理插值函数的基函数,它们满足
以及对称性质.图1所示即为ω=0.5,其余形状参数均取2时的四个基函数,从左往右,上往下依次是 ω11(u,v),ω12(u,v),ω21(u,v),ω22(u,v).
由(4)式和(5)式可以看出,加权线性有理插值本质上即是对四个插值数据点的一种加权组合.
图1:二元加权有理插值函数的基函数
本节将讨论(3)式或(4)式定义的二元有理线性插值函数的积分性质、有界性质及对插值数据的逼近误差.
首先,由(4)式易知
因此当f(x,y)≡1时,由(6)式和(7)式立得如下积分性质.
另一方面,利用插值函数的基表示形式,易得加权线性有理插值曲面也具有如下有界性质.
定理 2设{(xi,yj,fi,j)},i=1,2;j=1,2是给定的插值数据点集,α1,α2;β1,β2;λ,µ 是任意正参数,ω∈[0,1].P(x,y)是区域D=[x1,x2;y1,y2]上的加权线性有理插值函数,则
或 |P(x,y)|≤N,其中
利用插值方法构造插值曲面时,插值函数与被插函数的误差估计是衡量插值方法有效性的一个重要理论依据,如下是关于插值误差分析的重要结论.
定理 3设{(xi,yj,fi,j)},i=1,2;j=1,2是给定的插值数据点集,α1,α2;β1,β2;λ,µ是任意正参数,ω∈[0,1].若f(x,y)∈C1[x1,x2;y1,y2],则有如下误差估计
其中N1=max|fx(x,y)|,N2=max|fy(x,y)|.
证对i=1,2;j=1,2,由Taylor展开知
即证.
插值曲面的形状控制是几何设计的一个重要研究方向.一般而言,插值曲面的形状取决于插值数据,插值数据给定后插值曲面的形状也就唯一确定了.对于给定的插值数据,本文提出的插值曲面形状可以灵活调控.
由于本文构造的加权线性有理插值曲面带有形状参数和加权系数,插值曲面可以在插值数据给定的前提下,在给定范围内通过改变参数α1,α2,β1,β2,λ,µ;ω的值可以调控(3)式定义的二元加权有理插值曲面的形状.
由插值函数的构造过程可以看出,权系数ω取值整体控制插值曲面的形状更倾向于极限曲面(x,y)或(x,y).特别的,ω=1或0时P(x,y)分别为(x,y)或(x,y).因此,ω→1时,插值曲面的形状更倾向于(x,y)的形状,ω→0时,插值曲面的形状更倾向于(x,y)的形状.给定插值数据点集(见表1).
表1:插值数据
图2:权系数对插值曲面形状的影响
取参数α1=α2=β1=β2=6,λ=µ=1,权系数的取值对插值曲面形状的控制效果如图2所示.
由图2可以看出ω=1和ω=0时的曲面(x,y)和(x,y)可视为曲面变化范围的边界情形,如图2(a)(b);ω取值越接近1,曲面的形状越接近(x,y),如图2(d);取值越接近0,曲面的形状越接近(x,y),如图2(e);而ω=0.5时的曲面兼顾了曲面(x,y)和(x,y)的形状特点,介于二者之间,如图2(c).
四个形状参数α1,α2,β1,β2对曲面形状的作用类似,故不妨仅讨论α1对曲面形状的局部控制.
注意到在有理插值函数的基表示形式(4)式中,仅ω11(u,v)和ω21(u,v)含有参数α1,且它们满足
(1)ω11(u,v)是关于α1的增函数;
(2)ω21(u,v)是关于α1的减函数;
(3)ω11(u,v)+ω21(u,v)不再包含α1.
因此,随着α1的增加,(4)式中f11的权重增加,f21的权重减少,f12和f22的不变.即参数α1主要控制了插值曲面片边界曲线y=y1(x1≤x≤x2)的形状.同理,参数α2,β1,β2主要控制了插值曲面片其它三条边界曲线的形状.对插值数据点集(表1),取α2=β1=β2=6,λ=µ=1,ω=0.5,参数α1的取值对插值曲面形状的控制效果如图3所示.
图3:参数α1对插值曲面形状的影响.
由于f11>f21,随着α1的增大,图3(a)中α1=1,图2(c)中α1=6,图3(b)中α1=10,可以看出边界曲线y=y1(x1≤x≤x2)上从x1到x2的下降速度变慢,反之则加快.因此参数α1,α2,β1,β2控制了插值曲面片四条边界曲线的形状.
两个形状参数λ,µ对曲面形状的作用类似,这里仅讨论λ对曲面形状的局部控制.有理插值曲面的基函数中均包含参数λ,且满足
(1)ω11(u,v)和ω21(u,v)是关于λ的增函数;
(2)ω12(u,v)和ω22(u,v)是关于λ的减函数;
(3) ω11(u,v)+ω12(u,v)+ω21(u,v)+ω22(u,v)=1.
因此随着λ的增加,(4)式中f11和f21的权重增加,f12和f22的权重减少.即参数λ控制了插值曲面片沿y(x1≤x≤x2)方向的变化趋势.对插值数据点集(表1),取ω=0.5,α1=α2=β1=β2=6,λ=1,参数µ的取值对插值曲面形状的控制效果如图4所示.
图4:参数µ对插值曲面形状的影响.
随着µ的增大,图2(c)中µ=1,图4(a)中µ=6,图4(b)中µ=10,可以看出越靠近边界曲线x=x1(y1≤y≤y2)插值曲面越“平缓”,越靠近边界曲线x=x2(y1≤y≤y2)插值曲面越“陡峭”.因此参数λ,µ分别控制了插值曲面片沿两个坐标轴方向的变化趋势.
对于插值区域D=[x1,x2;y1,y2]内的任意点(x,y),令(u,v)为局部坐标.以下定量分析插值曲面的局部点控制问题,即如何确定插值曲面在某点处的函数值等于给定的实数M,其中
称(8)式为函数值控制方程.局部坐标(u,v)已知,若能找到一组待定正参数α1,α2,β1,β2,λ,µ和权系数ω满足(8)式,则可以实现局部函数值约束控制.
不失一般性,上述形状控制问题可以归结为中央点函数值控制问题,即此时(u,v)=(0.5,0.5).为了简化运算步骤,不妨令λ=µ=ω=0.5,α1=α2=α,β1=β2=β,α和β为待定参数.则中央点函数值控制方程可表示为
其中因此可以得到如下结论.
定理4加权有理插值函数的中央点函数值控制问题有解的充分条件是序列{k1,k2,k3,k4}变号数的值不为零.
证由函数值控制方程(9)式可知,参数α和β若存在正解,则加权线性有理插值函数的中央点函数值控制问题有解的充分条件是k1,k2,k3,k4不同号,即证.
给定平面区域D=[0,1;0,1],插值数据如表1所示.下面讨论加权线性有理插值函数的中央点函数值控制问题.取λ=µ=ω=0.5,α1=α2=α,β1=β2=β.为了便于求解,不妨设α=β.
图5:有理插值曲面的中央点函数值控制.
(1)α=β=6时,中央点函数值M=2.4762,此时的有理插值曲面如图5(a).
(2)若要使插值曲面在中央点的形状“上升”,如M=3,根据(9)式只需α=β=0.5,此时的有理插值曲面如图5(b).
(3)若要使插值曲面在中央点的形状“下降”,如M=2.4,根据(9)式只需α=β=14,此时的有理插值曲面如图5(c).
本文利用加权组合的方法,先按不同顺序生成两种二元线性有理插值曲面,然后将二者加权组合得到一种新的线性有理插值曲面.该插值曲面具有对称的基表示形式,满足积分一致性,有界性,讨论了其插值误差分析.对于给定的插值数据,在一定范围内改变形状参数α1,α2,β1,β2,λ,µ和权系数ω的值可以整体或局部调控有理插值曲面的形状并实现中央点函数值控制.
基函数共包含7个参数,虽然参数多有利于控制形状,但是也给参数的选择带来诸多不便,可考虑适当减少一些不必要或对曲面形状影响不大的参数.如可令α1=α2,β1=β2,λ=µ,对称地控制曲面的形状.数值实验结果表明,与现有三次及四次有理插值方法相比,线性有理插值方法次数更低,计算量小,形状控制方法简单有效.
参考文献
[1]张慧明,李建俊,段继光.|x|在调整的第二类Chebyshev结点组的有理插值[J].数学杂志,2014,34(3):509–514.
[2]刘爱奎,段奇,杜世田,曹庆杰,E.H.Twizell.插值曲线区域控制的加权有理插值方法[J].计算机辅助设计与图形学学报,2000,12(7):497–501.
[3]Ideon E,Oja P.Linear/linear rational spline collocation for linear boundary value problems[J].J.Comp.Appl.Math.,2014,263:32–44.
[4]Han X L.Convexity-preserving approximation by univariate cubic splines[J].J.Comp.Appl.Math.,2015,287:196–206.
[5]Sun Q H,Bao F X,Zhang Y F,Duan Q.A bivariate rational interpolation based on scattered data on parallel lines[J].J.Vis.Commun.Image R.,2013,24:75–80.
[6]Duan Q,Zhang Y F,Twizell E H.A bivariate rational interpolation and the properties[J].Appl.Math.Comp.,2006,179:190–199.
[7]Duan Q,Wang L,Twizell E H.A new bivariate rational interpolation based on function values[J].Infor.Sci.,2004,166:181–191.
[8]Duan Q,Zhang H L,Liu A K,Li H G.A bivariate rational interpolation with a bi-quadratic denominator[J].J.Comp.Appl.Math.,2006,195:24–33.
[9]邓四清,方逵,谢进.一种新的基于函数值的二元有理插值及其性质[J].应用数学学报,2008,31(4):758–768.
[10]邓四清,方逵,谢进,陈福来,陆海波.一种基于函数值的二元有理插值函数及其性质[J].计算数学,2009,31(1):77–86.
[11]邓四清,方逵,谢进,陈福来,陆海波.一种新的带参数双三次有理插值样条的有界性与点控制[J].计算数学,2010,32(4):337–348.
[12]项梅灵,唐月红.一种二元有理插值样条函数的凸性[J].计算机辅助设计与图形学学报,2012,24(9):1171–1179.
[13]Huang W X,Wang G J.A weighted bivariate blending rational interpolation based on function values[J].Appl.Math.Comp.,2011,217:4644–4653.
[14]Zhang Y F,Bao F X,Zhang C M,Duan Q.A weighted bivariate blending rational interpolation function and visualization control[J].J.Comp.Anal.Appl.,2012,14(7):1303–1320.