问题标签 [mathematica-7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1830 浏览

wolfram-mathematica - 有没有更快的方法来找到最小值和最大值?

我经常写:{Min@#, Max@#} &

然而这似乎效率低下,因为表达式必须扫描两次,一次是为了找到最小值,一次是为了找到最大值。有没有更快的方法来做到这一点?表达式通常是张量或数组。

0 投票
2 回答
295 浏览

wolfram-mathematica - 每个组在指定级别的唯一上下文

最新版本的 Mathematica 提供了$Context为每个单元组设置唯一的选项,通过:

  • 评估 > 笔记本的默认上下文 > 每个单元组唯一

这是一个吸引人的概念,但我发现它无法使用,因为我的代码跨越了多个单元组。

我想要一种方法来为特定级别的单元组(例如 every )指定唯一的上下文Section,但不是为 every Subsectionor指定单独的上下文Subsubsection

解决方案将需要在创建新单元组时对其产生影响。

0 投票
2 回答
1312 浏览

wolfram-mathematica - 在 Mathematica 7 中连接两个整数

在 Mathematica 7 中连接两个正整数的最有效方法是什么?

cc[123, 4567]>>1234567

超过两个怎么办?

cc[123, 4, 567, 89]>>123456789

0 投票
2 回答
215 浏览

wolfram-mathematica - v7 中 GroebnerBasis 的奇怪行为

我在使用时遇到了一些奇怪的行为GroebnerBasis。在m1下面,我使用希腊字母作为变量,在 中m2,我使用拉丁字母。它们都没有与之相关的规则。为什么我会根据我选择的变量得到截然不同的答案?

图片:

在此处输入图像描述

可复制代码:


编辑:

正如belisarius 所指出的,我的用法GroebnerBasis并不完全正确,因为它需要多项式输入,而我的不是。m1这个由复制意大利面引入的错误直到现在都没有引起注意,因为当我使用上面的代码完成其余代码时,我得到了我所期望的答案。但是,我并不完全相信这是一个不合理的用法。考虑下面的例子:

哪个是对的。所以我的解释是在这种情况下使用它是可以GroebnerBasis的,但我不太熟悉它背后的深层理论,所以我在这里可能完全错了。

PS 我听说如果你GroebnerBasis在帖子中提到三遍,Daniel Lichtblau 会回答你的问题 :)

0 投票
1 回答
6828 浏览

wolfram-mathematica - Mathematica 7 逐步显示答案

我想知道 Mathematica 用于获得结果的步骤。我有

和 Mathematica 显示 0 但我想知道它是如何得到这个结果的。

0 投票
2 回答
435 浏览

wolfram-mathematica - Interpolation 的 InterpolationOrder 选项的奇怪行为

当尝试重新创建一个InterpolationFunction由我制作的选项时,NDSolve我遇到了非常奇怪的问题。考虑以下内容(文档中的示例函数):InterpolationOrderInterpolationInterpolationFunction

现在让我们尝试重建它。这是数据:

这是InterpolationOrder

现在我们尝试构建InterpolatingFunction

并得到错误Message

Interpolation::inord: 选项 InterpolationOrder -> {3} 的值应该是非负机器大小的整数或长度等于维数 1 的整数列表。 >>

但是如果我们InterpolationOrder手动指定就OK了:

谁能解释为什么InterpolationOrder -> interpolationOrder在工作时不起作用,InterpolationOrder -> {3}尽管必须根据标准评估顺序在调用之前interpolationOrder替换?{3}Interpolation

PS 该问题出现在Mathematica 7.0.1 和 8.0.1 中,但不在Mathematica 5.2 中。

更新

我找到了一个解决这个错误的方法:

按预期工作。

Rule[InterpolationOrder,interpolationOrder]由和求值生成的表达式似乎Rule[InterpolationOrder,{3}]具有不同的内部结构,尽管它们是相同的:

0 投票
3 回答
400 浏览

performance - “地图列表”功能

Mathematica中有许多函数不仅返回最终结果或单个匹配,而且返回所有结果。此类函数被命名为*List. 展示:

  • 折叠列表
  • 嵌套列表
  • 替换列表
  • 组成列表

我缺少的是 MapList 函数。

例如,我想要:

我想要该函数的每个应用程序的列表元素:


可以将其实现为:

但是,它的效率很低。考虑这个简单的案例,并比较这些时间

这说明平均而言MapList,比将函数映射到列表中的每个元素并创建 1000x1000 数组的总和慢约 38 倍。


因此,如何最有效地实现 MapList?

0 投票
1 回答
302 浏览

performance - 检查列表是否包含零的最快方法

在准备Secret Santa 的答案 - 生成“有效”排列时,我遇到了检查列表是否包含零的需要。我想知道在Mathematica 7中最快的方法是什么,重点是非负整数的简短列表。

usingMin[list] === 0是我发现的最快的,比MemberQor更快FreeQ,但我希望有一种更快的方法,与BitXor下面的操作相当:

0 投票
1 回答
1404 浏览

colors - ColorFunction and Blend with respect to ListDensityPlot in Mathematica

I am trying to plot a series of data corresponding to (x,y) positions using ListDensityPlot in Mathematica 7. mydata is a list of data triplets {x,y,f}, where f is a real number between -4.5 and +4.5 (inclusive).

I would like ListDensityPlot to have deep blue color when f=-4.5 and deep red color when f=+4.5, and color that is linearly interpolated between blue and red when f is between -4.5 and +4.5.

I have tried to use a command like:

I get the following:

ListDensityPlot of mydata

I have pasted mydata below. ListDensityPlot generates a plot, but strangely, regions of very negative f have been colored white, not blue as they should be. Do you have any ideas about how I can fix this?

Thank you very much!

Andrew DeYoung Carnegie Mellon University

0 投票
2 回答
1971 浏览

parallel-processing - 为什么这个 Mathematica 7 Do 循环按顺序工作,但并行产生错误(使用 ParallelDo)?

我正在运行 Mathematica 7,并且正在尝试Do使用ParallelDo. 以下标准的顺序代码可以正常工作:

但是,如果我使用ParallelDo而不是 standard Do,则此代码会给出错误消息:

我收到的错误消息是:

我能做些什么来并行运行这个Do循环吗?

谢谢!

安德鲁·德扬

卡内基·梅隆大学