0

私の質問には 2 つの部分があります。1: グリッド上で二重積分を行う必要があります

answer = integrate (  f(x,y) times besselfunction(x,y))

ここで、高速アクセスのためにベッセル関数を事前に計算してディスクに保存できることを読みました。どうすればいいですか?現在、必要に応じて scipy.special から besselfunction を評価しています。

2 番目の質問: 微分方程式を数値積分し、スプライン解を使用して他の微分方程式を解きます。ただし、スプライン ソリューションは低速です。これをより速くする方法はありますか?

4

1 に答える 1

0

ディスク上のメモ化ソリューションを探しているようです。
おそらく、これまでに計算されたすべての関数呼び出しの結果をディスクに保存するために berkeleydb を使用するメモ化デコレーターを作成できます (結果の berkeleydb ファイルを、プログラムを実行するすべてのマシンに持ち運ぶことができ、それが非常に巨大になることを気にしない場合)。 、指定された一連の引数の関数を一度だけ計算する必要があります...ここで行っていることのコンテキストでこれが良いアイデアであるかどうかはわかりません)
「デコレータディスクをメモする」のグーグルはあなたの問題に対するいくつかの興味深い解決策をもたらします。
これは特に有望に見えます - http://www.stanford.edu/~pgbovine/incpy.html

于 2011-08-28T03:39:21.887 に答える