关于清除缓存的问题
mathematica吧
全部回复
仅看楼主
level 5
爱因·思果
楼主
对于如下定义的函数,在进行计算后,如何清除其缓存而保留函数的定义?
f[x_,y_] := f[x,y] = 函数体;
在进行大规模计算后,f函数会保留很多的值来加速计算,这样会产生大量的内存冗余,在这些冗余完成其存在价值后,就需要清除掉以方便下一个计算过程。但是应如何清除?Clear或者ClearAll的话,会连带函数的定义一同清除。。。
2022年12月02日 04点12分
1
吧务
level 10
asdasd1dsadsa
可能没什么特别简单的方法。
重设DownValues,模式匹配寻找定义,Unset之类的。
或者一开始就把缓存变量的符号写成另一个符号g。
2022年12月02日 07点12分
2
爱因·思果
谢谢!就是unset!只要能够对downvalues进行单独清除,整个过程也就可以实现了
2022年12月02日 08点12分
1