德布尔算法

✍ dations ◷ 2025-10-11 06:06:42 #算法,样条

数学的子领域数值分析中,De Boor算法是快速而且数值上稳定的算法,用于计算B样条形式的样条曲线。这是用于贝兹曲线的de Casteljau算法的一个推广。

一般的情况如下。我们要构造一个穿过一系列个点 d 0 , d 1 , , d p 1 {\displaystyle {\vec {d}}_{0},{\vec {d}}_{1},\dots ,{\vec {d}}_{p-1}} 的函数。要穿过点的序列,曲线必须满足 s ( u 0 ) = d 0 , , s ( u p 1 ) = d p 1 {\displaystyle {\vec {s}}(u_{0})={\vec {d}}_{0},\dots ,{\vec {s}}(u_{p-1})={\vec {d}}_{p-1}} d 0 , d 1 , , d p 1 {\displaystyle {\vec {d}}_{0},{\vec {d}}_{1},\dots ,{\vec {d}}_{p-1}} 阶多项式的曲线。这表示在任意区间上,曲线必须等于次数最多的多项式。它在不同的区间上可以是不同的多项式。多项式必须:当区间和上的多项式在点上相遇,它们必须有同样的值,而且他们的导数必须相等(以保证曲线是光滑的)。

De Boor算法是一个算法,当给定和 d 0 , d 1 , , d p 1 {\displaystyle {\vec {d}}_{0},{\vec {d}}_{1},\dots ,{\vec {d}}_{p-1}} 的值。它采用O(n2)次操作。注意算法的运行时间依赖于多项式的次数,而不是点的个数。

假设我们要计算参数值为 d i = d i {\displaystyle {\vec {d}}_{i}^{}={\vec {d}}_{i}} .现在计算

其中

s ( x ) = d {\displaystyle {\vec {s}}(x)={\vec {d}}_{\ell }^{}} .

相关

  • 辛伐他汀辛伐他汀(Simvastatin)为一种口服降血脂药物,常见商品名“Zocor”。该品会在运动、节食,和减肥时服用,以避免发生血脂升高。此外辛伐他汀也可降低高心脏病风险者发作的机会。严重
  • 鲁道夫·马库斯鲁道夫·“鲁迪”·阿瑟·马库斯(英语:Rudolph "Rudy" Arthur Marcus,1923年7月21日-),加拿大化学家,1992年诺贝尔化学奖获得者。生于加拿大蒙特利尔。1943年取得麦吉尔大学理学学
  • 贾斯珀县杰斯帕县(Jasper County, Georgia)是位于美国乔治亚州中部的一个县。面积1,055平方公里。根据美国2000年人口普查,共有人口11,426人。县治最大城市为蒙蒂塞洛 (Monticello)。成
  • 北北基宜北北基宜或简称北基宜,是台湾北部新北市、台北市、基隆市、宜兰县四县市的共同生活圈合称,其范围等于台湾日治时期台北州的辖区范围。也包含基隆北海岸(东北角)等地区,台湾本岛的
  • 火山矽肺病超微粒硅酸盐尘埃沉着症(英语:Pneumonoultramicroscopicsilicovolcanoconiosis),简称火山矽肺病,是肺尘病的一种。矽肺病越来越多地成为许多行业的关键健康话题,因为其职业原因已
  • 路易·马卢路易·马卢(法语:Louis Malle,1932年10月30日-1995年11月23日),法国电影导演。1932年生于法国北省(Nord)Thumeries。1995年殁于美国洛杉矶(Los Angeles)。
  • 副热带干旱半干旱气候副热带干旱半干旱气候主要分布于热带干旱半干旱气候的向高纬一侧,约在纬度25至35度的大陆西岸和内陆地区。具体分布于:北非、约旦、叙利亚、伊拉克、美国西南部、墨西哥北部、
  • ctype.hctype.h是C标准函数库中的头文件,定义了一批C语言字符分类函数(C character classification functions),用于测试字符是否属于特定的字符类别,如字母字符、控制字符等等。既支持
  • 梅滕更梅滕更(David Duncan Main,1856年6月10日-1934年8月30日)是一位英国圣公会差会医疗传教士,自1881年至1927年,曾在中国浙江省省会杭州工作数十年之久。他是杭州广济医院(Hospital o
  • 资讯安全管理系统资讯安全管理系统(Information Security Management System,简称:ISMS),是一套有系统分析和管理资讯系统的方法,由英国工业贸易部倡导,并在全球推行。1995年英国提出 BS-7799 Par