Mathematica如何保存运行结果?
来源:网络收集 点击: 时间:2024-03-02Mathematica这个软件有时候很耗时。
常见情形1:绘图计算特别耗时。比如这段绘图数据计算用时60min.


然而将算好的数据呈现出来却只需要几秒钟。
(Tips: 通常先计算Table数据,然后就可以使用ListVectorPlot替换VectorPlot, ListStreamPlot替换StreamPlot 等等, Graphics3D这些只负责根据数据画图的函数,可以将 运算数据 和 调整绘图样式 分开。)


常见情形2:数值求解微分方程特别耗时。比如这个耗时18分钟。


以上这两种情况有一个共同点,就是我们没法简单的把计算结果导出成字符串存在记事本里。并不是1+1=2,把2复制下来那么简单。
第一种情况的绘图数据里面有颜色/样式等无法表达成字符串的数据类型,第二种情况,运行结果是几个插值函数。
还有其他情况等等。很多时候我们很长时间算出来的东西也许是个插值函数,也许是一个动画,也许是一个复杂的图形,也许是一个数据类型庞杂的列表。



序列化既然不能保存这些数据,那么就应该二进制存储。还好Mathematica提供一种二进制数据交换格式WDX, 可以将内核中的形态各异的数据原封不动的存到文件里。

Export导出WDX的基本用法:
Export

Import导入WDX的基本用法:
待读取符号=Import;

WDX可以接受任何变量,也许是一个Plot图像,也许是一个列表,也许是一个函数。当然,运算结果可能有上百MB.

如果磁盘空间充足,利用WDX格式时间换空间是明智之举。
DumpSave函数也能类似地存储数据,读者可以自行了解。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_212158.html