2026a

# NURBS 与其他有理样条

# 有理样条介绍


有理样条定义为两个样条的比:

这要求 为标量值,而 常常取为向量值,而且我们通常希望 在我们感兴趣的 点非零。

有理样条很出名,因为相比于通常的样条,有理样条可以用来准确地描述一些特定的基础形状,比如圆锥。

# rs 型:rp 型, rB 型

在有理样条 中的两个样条 需要是无关的。它们甚至可以是不同的类型,但是目前的工具箱中要求它们是相同的类型,甚至具有相同的阶数、断点或结点。在满足这个假设的情况下,您可以使用以下(向量值)样条函数描述这样的有理样条:

它的值向量为有理样条 的值向量再加一个元素,这称之为有理样条的rs型,或更精确地说,是rp型rB型,这取决于 是 pp 型还是 B 型。在内部,把这些有理型与它们对应的通常的样条类型,比如 rp 型和 B 型,区分开的是它们的类型部分,即 fnbrk(r,"form") 的输出。这对于 fn 指令正确地应用在某一个 rs 型上已经足够了。

比如在 fnval 中,从 ) 得到 是非常简单的。假设 v 是 处的值,则 v[1:end-1]./v[end] 为 在 x 处的值。如果 dv 是 ,则 (dv[1:end-1]-dv[end].*v[1:end-1])./v[end] 则为 。更通常地,由莱布尼茨公式可以知道

因此

这意味着您可以使用 的导数(即 的导数)以及直到 j-1 阶的 的导数计算 的第 j 阶导数。这种方法在 fntlr 中就用来计算有理样条的导数。对于多元有理样条的偏导数和方向导数也有类似的公式。

# 相关主题