多くの入力パラメータを持つ複雑な数学関数があるとしますP = [p1, ..., pn]
。関数をブロック単位で因数分解できるとします。たとえば、次のようになります。
f(P) = f1(p1, p2) * f2(p2, ... pn)
そして多分
f2(p2, ..., pn) = p2 * f3(p4) + f4(p5, ..., pn)
f
の多くの値を評価する必要があるとします。P
たとえば、 の最小値を見つけたいとしますf
。すでに計算済みで、 where is equal to except forf(P)
を計算する必要があるとします。この場合、を再計算する必要はありません。f(P')
P'
P
p1
f2, f3, f4
f1
この種のキャッシング システムを実装するのに役立つライブラリはありますか? RooFitは知っていますが、ブロックで作成された統計モデル向けです。もっと一般的なものを探しています。scipy / scikits などが推奨されますが、c++ ライブラリも問題ありません。この技に名前はありますか?