mathematica怎么清理指定的数据
大运算需要分块计算。用一点“.”可以清除变量。但真正占地方的中间计算结果怎么清理? 放在函数的栈里面.不是很清楚 楼主的意思 这是wolfram的说辞Mathematica 使用内存时很仔细,每次当所产生的中间结果不再使用时,Mathematica 就立即回收分配给它的内存. 这意味着在进程的任意点,Mathematica 仅保存实际需要的那些表达式,它不保存后面不需要的对象.
但事实上不完全是
举个例子 我求多项式A、B的最小公倍式。
直接求内存溢出。
先对A因式分解,保存关闭Mathematica;再对B因式分解,保存关闭Mathematica;然后求最小公倍式,得到结果了。
而人手分步,中间不关闭Mathematica,在对B因式分解内存溢出。明显是A的因式分解过程没及时清理。 3# zeroieme
Mathematica 仅保存实际需要的那些表达式,它不保存后面不需要的对象.
可能是因为系统提供的函数的默认算法实际确实需要那么多内存,所以就崩溃了。
这个应该比较正常,我以前碰到好几次 Mathematica 要shut down的情形,
这个时候,我一般都是换一种算法。 现在情况是分别计算可行。
所以怎么完成A因式分解,自动释放内存,再算B,释放,再下一步。 5# zeroieme
楼主可否贴出你的具体问题 就是这里
http://bbs.emath.ac.cn/thread-3702-1-2.html
16楼的想法 7# zeroieme
:L ,这个化简很麻烦的。
只是不知zeroieme用的是什么命令 现在得到的两式 F(R)=0和G(R,S)=0
我准备将两式用按R的各次幂系数分别保存成0~14(仅偶次)和0~28两套文件。类似手算,取高次幂系数的最小公倍式,约得两式系数,C=A X- B Y,如此辗转下去。基本每次计算后都要求释放内存。
页:
[1]