Main Content

スプラインのタイプ: pp 型および B 型

多項式とスプライン

多項式は、平滑化関数を局所的に近似する際に適している近似関数です。たとえば、打ち切られたテイラー級数

i=0n(xa)iDif(a)/i!

は、f が十分に平滑化され、x が十分に a に近い場合に、f(x) の十分な近似が得られます。ただし、関数をより大きな区間で近似する場合は、近似多項式の次数 n を、許容できない大きさにしなければならないことがあります。代わりに、近似の区間 [a..b] を十分に小さい区間 [ξj..ξj+1] (ここで、a = ξ1<··· <ξl+1 = b) に分割すると、このような区間ごとに、比較的次数の低い多項式 pj で f への適切な近似が得られます。これは多項式区分が滑らかに溶け込むような方法でも実行できます。つまり、結果として得られたパッチ関数または合成関数 s(x) (x∊[ξjξj+1] (すべての j について) の場合に、pj(x) と等しい) にいくつかの連続導関数があります。このような滑らかな区分的多項式関数は、"スプライン" と呼ばれます。I.J. Schoenberg がこの用語を造りました。最初の微分が十分に小さい、2 回連続して微分可能な 3 次スプラインが製図工のスプラインの形状に近似されるためです。

多項式スプラインを表すために一般に使用されている方法は、pp 型と B 型の 2 つです。このツールボックスでは、しばしば pp 型のスプラインを "区分的多項式" と呼び、B 型の区分的多項式をスプラインと呼びます。これは、区分的多項式と (多項式) スプラインが、同じものの 2 つの異なるビューであるという事実を反映しています。

pp 型

k "次" の多項式スプラインの "pp 型" は、その "ブレーク" ξ1..ξl+1 に関する説明と、その l 区分の "局所的な多項式係数" cji を提供します。

pj(x)=i=1k(xξj)kicji,j=1:l

たとえば、3 次スプラインは 4 次です。これは、3 次多項式を指定するために 4 つの係数が必要であるという事実に対応しています。pp 型は、スプラインの評価やその他の "用途" に使用すると便利です。

B 型

"B 型" は、"作成" 中にスプラインを表す標準的な方法となっています。B 型は、複数のブレークにわたる平滑性要件における構築を容易にし、帯状線形システムへとつながるためです。B 型では、スプラインは B スプラインの重み付き和として説明され、

j=1nBj,kaj

必要な次数を k とします。その数 n は、k–1 以上に、スプラインを構成する多項式区分の数を加算した値となります。ここで、Bj,k = B (·|tj, ...,tj+k) は、j 番目の k "次" B スプラインです。この場合の "節点シーケンス" は t1≤t2≤··· ≤tn+k です。特に、Bj,k は、次数 < k で、ブレークが tj, ...,tj+k の区分的多項式で、非負であり、区間 [tj, ..tj+k] 外では 0 です。そのため、次のように正規化されます。

j=1nBj,k(x)=1on[tk..tn+1]

節点の多重度

節点の多重度は次の方法で平滑性を制御します。数値 τ が正確に r 回、シーケンス tj,...tj+k 内で出現した場合、Bj,k およびその最初の k-r-1 微分はブレーク τ を超えて連続し、一方、(k-r) 番目の微分は τ でジャンプします。コマンド bspligui を使用して、かなり視覚的な対話式の方法で B スプラインのこれらのプロパティをすべて試すことができます。

関連するトピック