(注:この関数をオーバーロードしたL.solveFor(u,ν)も同じ動作をしますが、メモリー確保の動作を少し節約できます。いずれの計算についても、後の説明で使います。なるという好都合な性質を持っています。計算時間はグリッド数を細かくするとそのべき乗で増えていく)。1992、下記[2]参照)から取ってきました。プログラムコードそのものではありません。(例えば配列の番号が1から始まるとか)、QuantLibライブラリーには適合しない部分があるからです。オーバーロードしています。ように、三重対角演算子を線形結合する演算に使えます。いった差分演算子(既に説明したものです)も用意しています。Black-Scholes偏微分方程式が、下記のような演算子の形で表現されているとします。次のように定義できるでしょう。\]そう言っておきながら、QuantLib自体は、この様に演算子を使っている訳ではありません。Black-Scholes演算子を定義していますが、上記のような他の演算子を代数的に線形結合させた形にはしていません。かかわらず、それらの演算子については、ベースクラスが存在しません。Sub-sectionで説明するテンプレートクラスの中で使われるだけです。結果論から言えば、仮にベースクラスを定義していたとしても、パフォーマンスにそれ程影響を与える事はなかったでしょう。)メソッドを使ったとしても、実際に全体でかかる計算時間からすれば、計算速度への影響は無視できる程小さかったでしょう(訳注:ベースクラスで仮想関数を定義し、内容を派生クラスで実装すれば、実行時Polymorphismが実現できます。ベースクラスのメソッドを呼び出す事により、若干パフォーマンスを落とします。ところが実際には、メソッドの中のアルゴリズムの計算に相当時間がかかるので、ベースクラスのメソッド呼び出しにかかる時間は、相対的に小さくて済みむので、あえて仮想関数を避ける必要もなかったという意味)。http://wondermark.com/779/)、(階層を使わずに)最後まで突き進む事を選択しました。1992.<ライセンス表示>QuantLibのソースコードを使う場合は、ライセンス表示とDisclaimerの表示が義務付けられているので、添付します。