主要内容

曲线拟合工具箱样条函数和MATLAB样条函数

曲线拟合工具箱样条函数

曲线拟合工具箱™样条函数包含MATLAB的基本版本®b样条包的程序(扩展到处理也向量-值样条),如样条实用指南,(应用数学。科学Vol. 27,施普林格,纽约Verlag (1978), xxiv + 392p;修订版(2001),xviii+346p),以下简称为<一个class="indexterm" name="d123e13427">动力.这个工具箱使得创建和处理分段多项式函数变得很容易。

这个工具箱的典型用途包括构造和随后使用分段多项式逼近。这种构造将涉及数据拟合,但可以拟合的可能数据范围很广。在最简单的情况下,给一个人分数(tyI),并正在寻找一个分段多项式函数f满足ft我)=y我,所有,或多或少。完全匹配需要插值,一个近似的匹配可能涉及最小二乘近似或者是平滑样条.但要近似的函数也可以用更多的篇幅来描述<一个class="indexterm" name="d123e13454">隐式方法,比如微分或积分的解<一个class="indexterm" name="d123e13458">方程。在这种情况下,数据的格式为房颤)(t我),一个微分或积分算子。另一方面,人们可能想构造一个样条曲线它的确切位置并不重要,重要的是它的整体形状。最后,在所有这些过程中,我们可能会寻找包含多个变量的函数,例如张量积样条函数

已经采取了谨慎的做法,使工作尽可能地无痛和直观。特别是,用户不需要担心如何构造或存储样条以便以后使用,也不需要临时用户担心诸如“断裂”、“结”或“系数”之类的项目。只要知道构造的每个函数只是另一个变量,可以作为许多命令的输入(在适当的地方),包括以fn,代表函数.有时,了解一下在工具箱内部,样条是用命令以不同的形式存储的,这可能也很有用fn2fm可用于转换之间的形式。

目前,这个工具箱支持分段多项式函数的两种主要表示金宝app形式,因为人们发现在某些常见情况下,每一种都优于另一种。b形在构造样条时特别有用,而ppform在要广泛计算分段多项式函数时更有效。这两种形式几乎完全是<一个class="indexterm" name="d123e13481">b表示,<一个class="indexterm" name="d123e13484">Pp表示用于样条的实用指南

但是,多年来,曲线拟合工具箱样条函数已经超越了程序样条的实用指南.工具箱现在支持“分散转换”形式,金宝app或stform,以处理二元薄板样条的构造和使用,也支持两种表示有理样条的方法,rBform和rform,以处理NURBS。

样条对于数据拟合是非常有效的,因为要解决这个问题的线性系统是带状的,因此,正确地解决它们所需的工作,只随着数据点的数量线性增长。特别地,MATLAB稀疏矩阵工具被用于曲线拟合工具箱样条函数,当它比工具箱本身的方程求解器更有效时,slvblk它依赖于这样一个事实,即这里的一些线性系统几乎是块对角的。

所有多项式样条构造命令都被用来产生二元(甚至多元)分段多项式函数,作为这里使用的单变量函数的张量乘积,以及各种各样的下载188bet金宝搏fn……命令也适用于这些多变量函数。

这里有各种示例,都可以通过Help浏览器访问。强烈建议你去看看其中的一些,或者去splinetool,以帮助您处理样条。

样条函数

考虑集

年代 Π ξ k μ

所有(标量值)有序分段多项式k和休息时间ξ1<……<ξl+ 1,对于= 2…l,可能会跳过去ξ在其μ但在低阶导数中没有跃迁。这一套是<一个class="indexterm" name="d123e13550">线性空间,也就是函数的任意标量倍数年代再次在年代中任意两个函数的和年代

因此,年代包含一个<一个class="indexterm" name="d123e13564">基(实际上是无穷多个基),即一个序列f1、……fn所以,每一个f年代可以写独特的在表单中

f x j 1 n f j x 一个 j

为合适的系数一个j.数量n这里出现的是线性空间的年代.系数一个j通常被称为坐标f关于这个基。

特别是,根据<一个class="indexterm" name="d123e13614">Curry-Schoenberg定理,我们的空间年代有一个由b样条组成的基,即所有b样条的序列的形式 B · | t j ... t j + k j= 1…n,<一个class="indexterm" name="d123e13629">结序列t从中断序列中获得ξ和序列µ按下列条件:

  • ξ1ξl+ 1发生在t完全k

  • 为每一个= 2:l,有ξ发生在t完全k- - - - - -µ

  • 确保序列是非递减的,并且只包含from的元素ξ

注意一个结的多重性和穿过这个结的样条的平滑性之间的对应关系。特别是在a<一个class="indexterm" name="d123e13682">简单结,即在结序列中只出现一次的结,只有(k- 1)st导数可能是不连续的。

MATLAB样条函数

MATLAB技术计算环境通过命令提供样条近似样条.如果在表单中调用c =样条(x, y),则返回<一个class="indexterm" name="d123e13707">带有断点序列的三次样条的格式x取这个值y(我)x(我),所有,并满足无结结束条件。换句话说,就是命令c =花键(x, y)给出与命令相同的结果c =csapi(x, y)在曲线拟合工具箱样条函数中可用。但只有后者在xy描述多元网格数据。在MATLAB中,该命令提供了对多元网格数据的三次样条插值<一个href="//www.tatmou.com/help/matlab/ref/interpn.html">interpn(x1,…,xd, v, y1,…,码,样条)哪个返回插值张量积三次样条在指定网格的值日元、……

此外,任何曲线拟合工具箱样条fn……命令可以应用于MATLAB的输出样条(x, y)命令,使用曲线拟合工具箱样条命令的简单版本fnvalppmakfnbrk可直接在MATLAB中获得,如命令ppvalmkppunmkpp,分别。

预期的背景

曲线拟合工具箱样条函数最初是作为样条逼近专家感兴趣的MATLAB环境的扩展,以帮助他们构建和测试样条逼近的新方法。这样的人将掌握了材料样条的实用指南

然而,构造和使用样条逼近的基本命令并将其设置为可用,没有更多的知识比需要明白这意味着什么,说,构造一个interpolant或一些数据的最小二乘近似式,或意味着什么区分或集成功能。

考虑到这一点,有一些章节,比如<一个href="//www.tatmou.com/help/curvefit/cubic-spline-interpolation.html" class="a">三次样条插值例如,构造切比雪夫样条或构造和使用张量积的部分是为那些对开发自己的样条命令感兴趣的用户准备的。下载188bet金宝搏

向量数据类型支持金宝app

曲线拟合工具箱样条函数可以处理向量-值样条,即值为R的样条d.由于MATLAB一开始只有一种变量类型,即矩阵,所以现在对于如何处理向量,即数字列表,仍然存在一些不确定性。MATLAB有时将这样一个列表存储在只有一行的矩阵中,有时存储在只有一列的矩阵中。首先,这样的一个<一个class="indexterm" name="d123e13816">1行矩阵被称为<一个class="indexterm" name="d123e13820">行向量;在第二个例子中,这样一个<一个class="indexterm" name="d123e13823">第1列矩阵被称为<一个class="indexterm" name="d123e13827">列向量。不管怎样,这些只是不同的方式存储向量,而不是不同的类型的向量。

在这个工具箱,<一个class="indexterm" name="d123e13837">向量,即数字列表,也可能最终存储在一个1行矩阵或1列矩阵中,但有以下协议。

R中的一点d,也就是说,一个<一个class="indexterm" name="d123e13846">d向量,总是存储为列向量。特别是,如果你想提供n附些的d-vectors,则需要提供该列表作为n矩阵大小的列[d n]

当其他的数字列表(例如,一个结序列或一个中断序列)可以在内部存储为行向量时,你可以提供这样的列表,作为行向量或列向量。

样条函数命名约定

这个工具箱中的大多数样条命令的名称都遵循以下模式之一:

cs……命令构造三次样条(ppform)

sp……命令以b形式构造样条

fn……命令对样条函数进行操作

. 2…转换的一些命令

api . .命令通过插值来构造近似

. . aps命令通过平滑来构造近似

. . ap2命令构造一个最小二乘近似

knt…命令构造一个特定的结序列(部分)

民主党…命令的例子。

理由曲线拟合工具箱样条函数

为方便使用,大多数曲线拟合工具箱样条函数都有默认参数。在Syntax下的引用项中,我们通常首先用all列出函数必要的输入参数,然后用all可能的输入参数。当有多个可选参数时,有时,但不是总是,它们的确切顺序是无关紧要的。当它们的顺序很重要时,您必须指定在您感兴趣的参数之前的每个可选参数。在这种情况下,您可以使用[](空矩阵)作为输入。参考页中的描述告诉您每个可选输入参数的默认值。

与MATLAB中一样,只有显式指定的输出参数才返回给用户。

致谢

MathWorks®感谢卡尔德不懂礼貌的人到曲线拟合工具箱样条函数。从第一个版本到3.3.4版本(2008),de Boor教授编写了样条工具箱™。

德布尔教授在1996年获得了约翰·冯·诺伊曼奖,并在2003年获得了国家科学奖章。他是美国艺术与科学学院和国家科学院的成员。他是本书的作者样条的实用指南(施普林格,2001)。

一些样条函数命名约定是与Jörg Peters讨论的结果,Peters当时是威斯康星大学麦迪逊分校计算机科学专业的研究生。