ppmak
放在一起在ppform花键
语法
ppmak(休息,系数)
ppmak
ppmak(优惠系数d)
sizec ppmak(优惠系数)
描述
命令ppmak (…)
将样条的ppform从最小的信息,其余推断的信息。fnbrk
提供完成的任何或所有的部分描述。这样,实际的数据结构用来存储ppform很容易对各种修改没有任何影响fn……
命令,使用这种结构。然而,普通用户不太可能使用ppmak
明确,而是依靠各种样条建设命令工具箱构建特定的样条函数。
ppmak(休息,系数)
返回指定的花键的ppform打破信息休息时间
和系数的信息系数
。这些信息是如何解释取决于函数是单变量或多变量,所表示的吗休息时间
作为一个序列或一个单元阵列。
如果休息时间
是一个序列,它必须不减少的,其第一项不同。然后函数被认为是单变量,各个部分的ppform决定如下:
在那之后,的条目系数
会重新排序,由命令
系数=重塑(排列(重塑(系数[d、k、l]), [1 3 2]), (d * l k))
为了符合内部解释的系数阵ppform一元样条。这只适用于当您使用语法ppmak(休息,系数)
在哪里休息时间
是一个序列(行向量),而不是当它是一个单元阵列。排列并不是当你使用three-argument形式的ppmak
。three-argument形式只有重塑完成,不是交换。
如果休息时间
是一个单元阵列,长度吗米
,那么函数被认为是米
变量(张量积),和它的各个部分ppform决心从输入如下:
的
米
向量l已经长度(减免{我})1
作为它的我
th条目,相应地,米
细胞阵列的基本时间间隔的时间间隔(优惠{我}(1). .减免{我}(结束)
作为它的我
条目。维度
d
的目标和功能米
向量k
(坐标态多项式)订单的部分直接从的大小了系数
,如下所示。如果
系数
是一个米
维数组,函数是纯量值,即,d
1,米
向量k
是计算大小(系数)。/ l
。在那之后,系数
重塑的命令吗系数=重塑(系数(1、大小(系数)))
。如果
系数
是一个(r + m
维数组,sizec =大小(c)
说,然后d
被设置为sizec (1: r)
,向量
k
是计算sizec (r + (1: m)) / l
。在那之后,系数
重塑的命令吗系数=重塑(系数,(prod (d), sizec (r + (1: m))))
。
然后,系数
被解释为一个等价的尺寸吗(d, l (1)、k (1), (2), k (2),…, l (m), k (m))
,其(我(1):r(1),(2),(2),…,我(m), r (m))
项的系数
在本地函数的多项式表示的(超)矩形
事实上,这是内部的解释系数阵的ppform多元样条。
ppmak
提示输入休息时间
和系数
。
ppmak(优惠系数d)
与d
一个正整数,也把在一起的ppform花键的信息提供,但预计单变量的函数。在这种情况下,系数
采取的尺寸吗(d * l k)
,l
获得,长度(减免)1
,这决定了订单,k
的样条。用这个,系数(我* d + j,:)
了是吗j
th组件的系数向量(我+ 1
)圣多项式。
sizec ppmak(优惠系数)
与sizec
一个行向量的正整数,也将一起ppform花键的提供的信息,但解释系数
的大小sizec
(并返回一个错误刺激(大小(系数)
不同于刺激(sizec)
)。这个选项是非常重要的,只有在罕见的情况下,输入参数系数
是一个数组与一个或多个单维度。因为,MATLAB®抑制拖单维度,因此,没有明确的规范计划的规模系数
,ppmak
会解释系数
不正确。
例子
这两个样条函数
p1 = ppmak ([1 3 4], [1 2 5 6; 3 4 7 8]);p2 = ppmak ([1 3 4], [1 2 3 4; 5 6; 7 8], 2);
ppform完全相同(2-vector-valued,订单2),但第二个命令提供安排内部使用的系数。
ppmak ([0:2], [1:6])
构造具有基本区间的分段多项式函数(0
。。2
)和组成的两张订单3的独家内部打破1。由此产生的函数是标量,也就是说。,维d
它的目标是1。函数是连续的,从第一块x|→x2+ 2x+ 3,而第二块x|→4 (x- 1)2+ 5 (x1)+ 6。
当函数是单变量和维度d
没有显式地指定,那么采取的行号系数
。应该一个整数列号数量的倍数l
的规定休息时间
。例如,语句ppmak ([0:2], [1:3; 4:6])
会导致一个错误,因为打破序列(0:2)
表明两个多项式,因此预计偶数列系数矩阵。修改后的报表ppmak ([0:1], [1:3; 4:6])
指定了抛物线曲线x|→(1、4)x2+ (2、5)x+ (3、6)。特别是,维度d
它的目标是2。不同的修改语句ppmak ([0:2], [1:4; 8])
还指定了一个平面曲线(即d
是2
),但是这一个是分段线性的;它的第一个多项式块x|→(1、5)x+ (2,6)。
明确规范的维度d
,在单变量的情况下,将导致一个不同的解释的条目系数
。现在的列号表示多项式顺序,应该等于和行号d
倍的碎片。因此,声明ppmak ([0:2], [1:4; 8], 2)
是错误的,而声明ppmak ([0:2], [1:4; 8], 1)
指定一个标量分段立方的第一块x|→x3+ 2x2+ 3x+ 4。
如果你想不断多项式,基本区间[0 . .1]say, whose value is the matrix eye(2), then you would have to use the full optional third argument, i.e., use the command
页= ppmak(0:1,眼(2),(2,2,1,1));
最后,如果你想构建一个2-vector-valued二元多项式的矩形(1 . .1]x [0 . .1)线性变量和常数在第二,说
系数= 0 (2 2 1);系数(::1)= (1 0;0 1];
那么简单的
页= ppmak({[1],[0 1]},系数);
会失败,在每个生产订单2的纯量值函数变量,会吗
页= ppmak({[1],[0 1]},系数,大小(系数));
而下面的命令会成功:
页= ppmak({[1],[0 1]},系数,[2 2 1]);
看到其他的例子“ppform入门”的例子。