fnint
積分関数
構文
intgrf = fnint(f,value)
fnint(f)
説明
intgrf = fnint(f,value) は、その説明が f に含まれる "一変量" 関数の不定積分の説明です。積分は、関数の基本区間の左の端点が指定された value (既定値 0) になるように正規化されます。
出力は入力と同じタイプです。すなわち、両方が pp 型または両方が B 型になります。fnint は有理スプラインと st 型の関数のいずれでも機能しません。
fnint(f) は fnint(f,0) と同じです。
"多変量" 関数の不定積分は、座標方向でのみ、fnder(f,dorder) (dorder は非正のエントリをもつ) を介して使用できます。
例
ステートメント diff(fnval(fnint(f),[a b])) は、f によって記述された関数の区間 [a .. b] に対する定積分を提供します。
f が pp 型または最後のノットの多重度が十分に高い B 型の場合、丸め誤差を除き、f と fnder(fnint(f)) は同じです。
f が pp 型で、fa が基本区間の左の端点にある f 内の関数の値である場合、f によって表記される関数にジャンプ不連続点がない限り、丸め誤差を除き、f と fnint(fnder(f),fa) は同じです。
f が B 型の f を含んでおり、t1 が左端のノットの場合、丸め誤差を除き、fnint(fnder(f)) には B 型の f – f(t1) が含まれます。ただし、左端のノットの多重度が 1 つ減ります (最初の多重度が 1 より大きい場合)。また、右端のノットは、f 内の B 型の f の右端のノットがそうでない場合でも、完全多重度をもちます。
この最後の事実についての説明は次のとおりです。sp = spmak([0 0 1], 1) のスプラインは、基本区間 [0..1] では、0 で 1、1 で 0 の直線です。ここで、その導関数 spdi = fnint(fnder(sp)) を積分します。確認できるとおり、spdi のスプラインの基本区間は同じですが、その区間では 0 で 0、1 で -1 の直線に一致します。
例については、「Intro to B-form」および「Intro to ppform」を参照してください。
アルゴリズム
B 型の場合、積分の式 [PGS; (X.22)] が使用されます。