标签: wolfram-cdf

我们可以在PowerPoint或Keynote中展示一些Dynamics/CDF吗?

我想在演示文稿中显示一些动态内容.但是,我不确定到星期四我有时间在Mathematica中以我想要的方式制作幻灯片.

是否可以在A Powerpoint(Microsoft)或Keynote(Apple)演示文稿中使用Mathematica构建动态对象?

wolfram-mathematica mathematica-8 mathematica-cdf wolfram-cdf

10
推荐指数
1
解决办法
7962
查看次数

关于在函数之间传递数据的简单问题

简单的问题,但我要求确保我不会忽视一个更有效的明显解决方案.

如果有一个大数据缓冲区,比如非常大的列表,需要更新,并希望将其传递给函数以在函数内部进行更新,如

a = Table[0,{10}]
a = update[a]
Run Code Online (Sandbox Code Playgroud)

并且因为我不能使用pass by reference(在CDF中,不能将函数的Atrributes更改为任何东西,例如HoldFirst),然后我被迫在函数内部按顺序复制列表更新它,并返回副本.

我的问题,除了使用不好的"全局变量"之外,还有更有效的方法吗?

PS.大约一年前,我通过引用询问了复制,这里是 我的Mathgroup问题的链接.(感谢Leonid回答btw,是有用的答案).

但我的问题在这里有点不同,因为现在我不能使用HoldFirst,还有其他任何我没有看到的替代方案,以避免这种额外的数据复制,它似乎会在程序变大时减慢程序的速度大.

(不能使用SetAttributes及其朋友,不允许使用CDF).

我将首先展示基本示例,然后展示如果我可以使用HoldFirst,我将如何做.

update[a_List] := Module[{copyOfa = a}, copyOfa[[1]] = 5; copyOfa]
a = Table[0, {10}];
a = update[a]

----> {5, 0, 0, 0, 0, 0, 0, 0, 0, 0}
Run Code Online (Sandbox Code Playgroud)

如果我可以使用HoldFirst,我会写

update[a_] := Module[{}, a[[1]] = 5; a]
Attributes[update] = {HoldFirst};

a = Table[0, {10}];
a = update[a]

----> {5, 0, 0, 0, 0, 0, 0, 0, 0, 0}
Run Code Online (Sandbox Code Playgroud)

效率更高,因为没有复制.通过引用传递.

我可以使用全局变量,如

a …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica wolfram-cdf

9
推荐指数
2
解决办法
1424
查看次数

从CDF播放器中获取数据

对于我的怀疑论者工作组,我在Mathematica中编写了一个程序来测试dowser评估通过照片向他们显示的人的状态的能力.对于空值测量,我将此文档以CDF格式分发给我们组的成员(新的v8可计算文档格式,意味着与CDF播放器一起运行).在我的计算机上(使用mma)它一切正常,但其他人无法导出数据(程序导出到Excel文件).在阅读细则时,我看到播放器不支持导出.所以我的问题是:

有没有办法从CDF播放器中获取数据?

wolfram-mathematica cdf wolfram-cdf

6
推荐指数
2
解决办法
2032
查看次数