Lupa,q-Bézier曲线的离散卷积生成与求值算法*

【www.zhangdahai.com--其他范文】

耿梦圆,解 滨,韩力文,3,4

(1.河北师范大学数学科学学院,河北 石家庄 050024;
2.河北师范大学计算机与网络空间安全学院,河北 石家庄 050024;
3.河北省计算数学与应用重点实验室,河北 石家庄 050024;
4.河北省数学与交叉科学国际联合研究中心,河北 石家庄 050024)

在计算机辅助几何设计CAGD(Computer Aided Geometric Design)中,Bernstein基函数因其优良性质使得Bézier曲线曲面成为描述自由曲线曲面的重要工具[1-3]。

近年来,q-微积分理论[4]引发众多研究人员的研究兴趣并在超几何分析、量子力学等领域广为应用。

其迅猛发展促使基于q-整数的广义Bernstein算子陆续被提出,其中研究较为广泛的主要为Lupaq-Bernstein算子和Phillipsq-Bernstein算子。

1987年,Lupa[5]首次提出有理形式的q-模拟Bernstein算子,研究其逼近和保形性质,后被称之为Lupaq-Bernstein算子。

Ostrovska[6]和Wang等[7]探究了算子的一致收敛性及收敛速度等问题。

1996年Phillips[8]引入基于q-整数的多项式形式的q-Bernstein算子,可由q-差分简单表示,为便于区分,本文称之为Phillipsq-Bernstein算子。

随后Oruç等[9]构造出Phillipsq-Bézier曲线,引起研究人员的关注与研究。

在此带动与影响下,带有形状参数的广义Bézier曲线曲面在曲线曲面造型上发挥了重要作用。

2014年,Han等[10]依据Lupaq-Bernstein算子构造出基于q-整数的Lupaq-Bézier曲线曲面,得到了曲线的几何不变性、升阶等性质及de Casteljau算法等。

相比于Phillipsq-Bézier曲线,Lupaq-Bézier曲线的函数类型、形状参数q的取值范围及端点相切的性质均不同:(1) Phillipsq-Bézier曲线为多项式形式且参数q∈(0,1],而Lupaq-Bézier曲线为有理函数形式且q∈(0,+∞),取值范围更广;(2) Phillipsq-Bézier曲线仅与首控制边相切,而Lupaq-Bézier曲线与首末控制边均相切。

2.1 Lupa q-Bézier曲线的相关定义

特别地,q-二项式系数满足Pscal-type关系式,如式(1)和式(2)所示:

(1)

(2)

(3)

为n次Lupaq-Bézier曲线,其中:

(4)

为n次Lupaq-Bernstein基函数。

当q=1时,Lupaq-Bézier曲线退化为经典Bézier曲线。

2.2 离散卷积的相关定义

(5)

离散卷积满足交换律及结合律,如式(6)和式(7)所示:

A(t)⊗B(t)=B(t)⊗A(t)

(6)

A(t)⊗(B(t)⊗C(t))=(A(t)⊗B(t))⊗C(t)

(7)

定义6[20]离散卷积的微分法则,如式(8)所示:

(A(t)⊗B(t))′=

A′(t)⊗B(t)+A(t)⊗B′(t)

(8)

3.1 Lupa q-Bernstein基函数的离散卷积形式

根据q-二项式系数满足的Pascal-type关系式(1),给出Lupaq-Bernstein基函数的递推关系。

引理1[10]n次Lupaq-Bernstein基函数是2个n-1次Lupaq-Bernstein基函数的仿射组合,如式(9)所示:

(9)

利用此递推关系式,从零次基函数开始,依次向高一次的基函数递推,得到Lupaq-Bernstein基函数的向下递推三角形,如图1所示。

从上至下第i层的中间节点恰好是第i次的Lupaq- Bernstein基函数。

Figure 1 Downward recurrence of Lupa q-Bernstein basis functions图1 Lupa q-Bernstein基函数的向下递推

n次Lupaq-Bernstein基函数出现在第n层向下递推三角形的底部。

同时,基函数是由顶端到底部第i个位置的所有路径乘积之和,例如,对于4次Lupaq-Bernstein基函数式(10)成立:

(10)

结合定义5,此过程等同于函数序列离散卷积的计算过程,由此构造出Lupaq-Bernstein基函数的离散卷积形式。

定理1设函数序列如式(11)所示:

k=1,2,…n

(11)

则Ak(t;q)可离散卷积生成n次Lupaq- Bernstein基函数序列,如式(12)所示:

A1(t;q)⊗…⊗Ak(t;q)⊗…⊗An(t;q)

(12)

注1当q=1时,式(12)退化为经典Bernstein基函数的离散卷积形式[20]。

注2文献[15]主要围绕Lupaq-Bernstein基函数的离散概率模型给出离散卷积形式。本文则是从基函数的向下递推结合路径角度得到该形式,同时在下文中将进一步发挥离散卷积表示与向下递推三角形的作用,探究Lupaq-Bézier曲线的特点与优良性质。

Figure 2 Basis functions constructed by convolutionof function sequences in reverse order图2 函数序列逆序卷积构造的基函数

3.2 Lupa q-Bézier曲线的de Casteljau算法

Figure 3 A de Casteljau algorithm for Lupa q-Bézier curve图3 Lupa q-Bézier曲线的一种de Casteljau算法

定理2对于任一条n次Lupaq-Bézier曲线,基于离散卷积可生成n!种de Casteljau算法。

(13)

如图4所示,当以图2定义的离散卷积顺序构造时,de Casteljau算法具有显式矩阵表示[12],记为de Casteljau算法2,如式(14)所示:

(14)

Figure 4 de Casteljau algorithm with explicit matrix representation图4 具有显式矩阵表示的de Casteljau算法

注3定理2所提出的n!种de Casteljau算法在计算Lupaq-Bézier曲线上任意点的效率上是一致的,针对不同的使用需求可选择不同的算法。

例1对于一条形状参数q=4的3次Lupaq-Bézier曲线,可生成3!种de Casteljau算法,如图5所示,‘o’点为不同算法求得的曲线上的同一点。

与经典Bézier曲线de Casteljau算法求得切点[21]不同,Lupaq-Bézier曲线de Casteljau算法倒数第2层2节点构成的直线段与曲线相交于2个点,本文将这2个交点统称为割点。

如图5所示,不同的de Casteljau算法得到的割点不同,有时为左割点,有时为右割点。

第5节将给出2种de Casteljau算法,分别求得左/右割点的判定条件。

Figure 5 3! de Casteljau algorithms for cubic Lupa q-Bézier curve图5 3次Lupa q-Bézier曲线的3!种de Casteljau算法

定理3设n次Lupaq-Bézier曲线的一阶速端曲线表达式如式(15)所示:

(15)

Aj-1(t;q)⊗Bj(t;q)⊗Aj+1(t;q)⊗…⊗An(t;q)

(16)

(17)

(18)

当q=1时,该速端曲线是以原曲线控制顶点的向前差分ΔP0和ΔP1为首末控制顶点的一次Bézier曲线;当q∈(0,1)∪(1,+∞)时,二次Lupaq-Bézier曲线的速端曲线是以P′(0;q),P′(1;q)为首末端点的直线段。

除此之外,通过定理3进一步整理可得到首末2个n次Lupasq-Bernstein基函数的导函数的显式表达式。

(19)

(20)

根据离散卷积的微分法则可在基函数一阶导序列式(16)的基础上继续微分,得到基函数的高阶导数,进而计算Lupaq-Bézier曲线的高阶导矢。

定理4Lupaq-Bernstein基函数的二阶导函数序列的离散卷积结构如式(21)所示:

(21)

(22)

(23)

图3与图4为曲线具有的2种de Casteljau算法。

图6a和图6b分别展示了不同形状参数q下的二次Lupaq-Bézier曲线,其中q=1所表示的曲线为经典Bézier曲线。

由图6可知,Lupaq-Bézier曲线始终位于控制多边形与经典Bézier曲线之间,并且通过选取不同的形状参数q值,可以任意调整曲线形状,增加曲线造型的灵活性[10]。

Figure 6 Quadratic Lupa q-Bézier curves with different shape parameters图6 不同形状参数的二次Lupa q-Bézier曲线

Figure 7 Comparison of de Casteljau algorithmsbetween Lupa q-Bézier curve and classical Bézier curve图7 Lupa q-Bézier曲线与经典Bézier曲线de Casteljau算法对比

下面分别给出de Casteljau算法1和算法2得到左割点或右割点时的充分必要条件。

定理5任意给定参数t∈(0,1),de Casteljau算法1求得左割点当且仅当形状参数q>1;求得右割点当且仅当0

证明对比Lupaq-Bézier曲线de Casteljau算法1与经典Bézier曲线de Casteljau算法,为便于区分,记二次经典Bézier曲线de Casteljau算法节点为和

(24)

(25)

定理6任意给定参数t∈(0,1),de Casteljau算法2求得左割点当且仅当形状参数01。

(26)

(27)

注4Lupaq-Bézier曲线具有端点插值性,即当参数t=0时,de Casteljau算法1或算法2求得参数对应曲线上一点为P0;t=1时,算法1或算法2求得曲线上一点为P2。

图8a和图8b展示了de Casteljau算法1分别在q>1时取不同参数t得到的左割点和0

de Casteljau算法2得到左/右割点的示例见图9。

Figure 8 Left/right cut points gotten by de Casteljau algorithm 1 图8 de Casteljau算法1得到的左/右割点

Figure 9 Left/right cut points gotten by de Casteljau algorithm 2 图9 de Casteljau算法2得到的左/右割点

上述定理5和定理6分别给出了de Casteljau算法1和算法2得到左割点或右割点时形状参数 的取值范围。

算法3双割点算法

输入:控制顶点P0,P1,P2,参数t,q。

输出:左/右割点CL,CR。

步骤3计算另一割点

步骤4根据形状参数的取值范围判断,倘若q≥1,则CL=C1,CR=C2;若0

定理7给定二次Lupaq-Bézier曲线P(t;q),其中q∈(0,+∞),t∈(0,1),应用双割点算法3时,节点与左/右割点CL,CR构成的交比固定。

证明当q>1时,利用双割点算法3中的步骤2与步骤3得到2个割点且CL=C1,CR=C2,则式(28)和式(29)满足:

(28)

0

(29)

证毕。

本文通过引入向下递推三角形和离散卷积函数序列,提出n次Lupaq-Bernstein基函数的离散卷积结构,并将向下递推三角形反转箭头方向自下而上卷积生成Lupaq-Bézier曲线。

借助离散卷积的交换性,进而得到n!种新的de Casteljau算法。

文中列举出了其中的2种算法及其优势,对于其他算法的特征有待进一步探究。

根据对2种de Casteljau算法及其形状参数q的讨论,二次Lupaq-Bézier曲线可选择性得到左/右割点。

另外给出同时计算2个割点的算法,并证明双割点算法具有交比不变性。

本文仅得到2个n次基函数导数的显式表达式。

对于其他基函数导数的具体形式还有待探究。

对于3次或更高次Lupaq-Bézier曲线的割点讨论及其应用需要进一步研究。

猜你喜欢 算子形状定理 挖藕 假如悲伤有形状……中学生天地(A版)(2022年11期)2022-11-25与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性数学物理学报(2022年5期)2022-10-09J. Liouville定理中等数学(2022年6期)2022-08-29拟微分算子在Hp(ω)上的有界性数学物理学报(2021年2期)2021-06-09Heisenberg群上与Schrödinger算子相关的Riesz变换在Hardy空间上的有界性数学物理学报(2021年1期)2021-03-29各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用应用数学(2020年2期)2020-06-24A Study on English listening status of students in vocational school校园英语·上旬(2019年6期)2019-10-09你的形状新世纪智能(英语备考)(2018年11期)2018-12-29“三共定理”及其应用(上)中学生数理化·七年级数学人教版(2017年6期)2017-11-09火眼金睛小天使·五年级语数英综合(2016年12期)2016-12-09

推荐访问:卷积 离散 算法

本文来源:http://www.zhangdahai.com/shiyongfanwen/qitafanwen/2023/0903/649004.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!