0

重複の可能性:
Mathematica: シンボルのキャッシュをクリアする方法、つまり、パターンのない DownValues の設定を解除する

このリンクは、Mathematica で再帰的な定義を高速化する方法を示しています。

f[0]=f[1]=1
f[x_] := f[x] = f[x - 1] + f[x - 2]

ここで、この定義から f[5] を見つけたとします。次に、次の値がメモリに格納されます

?f

Global`f

f[0]=1

f[1]=1

f[2]=2

f[3]=3

f[4]=5

f[5]=8

f[x_]:=f[x]=f[x-1]+f[x-2]

ここで、後で計算を行うために、メモリから のキャッシュされた値を削除したいがf、f の定義は削除したくないとします。どうすればこれをきれいに行うことができますか。

私は試しUnset[f[n_]]ましたが、キャッシュされた値ではなく、定義が削除されます。私は試しClear["_Integer"]ましたが、これは何もしません。

キャッシュされた値を削除する方法を知っている人はいますか? f[2]...f[5]の定義はわかりませんfか? Unset[f[k]]kの値を事前に知らないため、何らかのタイプのループを記述せずに。読んでくれてありがとう

4

0 に答える 0