文档
做分段多项式
Pp = mkpp(break,coefs)
Pp = mkpp(break,coefs,d)
例子
页= mkpp (休息时间,系数)建立一个分段多项式页从它的断点和系数。使用ppval求分段多项式在特定点上的值,或者unmkpp提取分段多项式的细节。
页= mkpp (休息时间,系数)
页
休息时间
系数
ppval
unmkpp
页= mkpp (休息时间,系数,d)指定分段多项式是向量值的,这样它的每个系数的值都是长度的向量d.
页= mkpp (休息时间,系数,d)
d
全部折叠
创建一个分段多项式,在区间[0,4]中有一个三次多项式,在区间[4,10]中有一个二次多项式,在区间[10,15]中有一个四次多项式。
break = [0 4 10 15];Coefs = [0 1 -1 1 1;0 0 1 -2 53;1 6 1 4 77];Pp = mkpp(break,coefs)
页=带字段的结构:形式:'pp'打破:[0 4 10 15]coefs: [3x5 double]件:3顺序:5 dim: 1
在区间[0,15]的多个点处计算分段多项式,并绘制结果。在多项式相交的断点处画出垂直虚线。
Xq = 0:0.01:15;Plot (xq,ppval(pp,xq)) line([4 4],ylim,“线型”,“——”,“颜色”,“k”) line([10 10],ylim,“线型”,“——”,“颜色”,“k”)
创建并绘制一个分段多项式,四个区间在两个二次多项式之间交替。
前两个子图显示了一个二次多项式,其负移到区间[-8,-4]和[-4,0]。多项式是
1 - ( x 2 - 1 ) 2 = - x 2 4 + x .
第三个子图显示了一个分段多项式,由这两个二次段在四个区间交替构造。添加垂直线来表示多项式相交的点。
Subplot (2,2,1) cc = [-1/4 1 0];Pp1 = mkpp([-8 -4],cc);Xx1 = -8:0.1:-4;情节(民ppval (pp1民),“k -”) subplot(2,2,2) pp2 = mkpp([-4 0],-cc);Xx2 = -4:0.1:0;情节(xx2 ppval (xx2 pp2),“k -”次要情节(2,1,2)页= mkpp ([8 4 0 4 8], [cc、cc、cc; cc]);Xx = -8:0.1:8;情节(xx ppval (pp、xx),“k -”)举行在线(4 [4],ylim,“线型”,“——”) line([0 0],ylim,“线型”,“——”) line([4 4],ylim,“线型”,“——”)举行从
断点,指定为长度向量L + 1的开始和结束的严格递增元素l间隔。
L + 1
l
数据类型:单|双
单
双
多项式系数,用an表示l——- - - - - -k第i行矩阵系数(我,:)包含某一阶局部系数的k第i个区间的多项式,[休息(我),优惠(i + 1).换句话说,多项式是系数(我,1)* (X-breaks(我))^ (k - 1) +系数(我,2)* (X-breaks(我))^ (k-2) +…+ coefs(i,k-1)*(X-breaks(i)) + coefs(i,k).
k
系数(我,:)
[休息(我),优惠(i + 1)
系数(我,1)* (X-breaks(我))^ (k - 1) +系数(我,2)* (X-breaks(我))^ (k-2) +…+ coefs(i,k-1)*(X-breaks(i)) + coefs(i,k)
维度,指定为整数的标量或向量。指定d表示分段多项式具有大小的系数值d.
分段多项式,以结构形式返回。元素使用此结构ppval函数在一个或多个查询点处计算分段多项式。该结构具有这些字段。
形式
“页”为分段多项式
“页”
长度向量L + 1的开始和结束的严格递增元素l时间间隔
l——- - - - - -k每一行的矩阵系数(我,:)包含某一阶局部系数的k第i个区间的多项式,[休息(我),优惠(i + 1)
块
件数,l
订单
多项式的阶数
昏暗的
目标的维度
因为多项式系数系数为每个区间的局部系数,则必须减去对应结区间的下端点才能在常规多项式方程中使用这些系数。换句话说,对于系数(a, b, c, d)在间隔中(x1, x2),对应的多项式为
(a, b, c, d)
(x1, x2)
f ( x ) = 一个 ( x − x 1 ) 3. + b ( x − x 1 ) 2 + c ( x − x 1 ) + d .
使用注意事项和限制:
输出结构页不同于页MATLAB结构®.在MATLAB中,ppval不能使用页结构。对于代码生成,ppval不能使用页由MATLAB创建的结构。unmkpp可以使用MATLAB页结构,用于代码生成。
创建一个MATLAB页结构,从页由代码生成器创建的结构:
在代码生成中,使用unmkpp将分段多项式的细节返回给MATLAB。
在MATLAB中,使用mkpp要创建页结构。
mkpp
如果你不提供d,然后系数必须是二维的,并且具有固定数量的列。在本例中,列数就是顺序。
要定义分段常数多项式,系数一定是列向量还是d必须至少有两个元素。
如果你提供d而且d是1,然后d一定是常数。否则,如果输入为ppval是非标量,那么输出的形状呢ppval可以不同于ppval在MATLAB。
1
如果你提供d,那么它必须有一个固定的长度。下列语句组之一必须为真:
假设M =长度(d)而且Npieces =长度(断点)- 1.
M =长度(d)
Npieces =长度(断点)- 1
Size (coefs,j) = d(j) Size (coefs,m+1) = npieces Size (coefs,m+2) = order
j
m + 2
尺寸(coefs,1) = prod(d)*npieces尺寸(coefs,2) =订单
如果你不提供d,则下列陈述必须为真:
pchip|ppval|样条|unmkpp
pchip
样条
系统中存在此示例的修改版本。你想打开这个版本吗?
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:.
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处
现在就去审判吧