问题标签 [symbolic-math]

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 投票
1 回答
139 浏览

wolfram-mathematica - 简单的?Mathematica 7 中的消息传递

赋值 /.C1z[[1]] 的行为不像我期望的那样。我什至不确定这种现象叫什么,(这使得谷歌搜索变得非常困难)。

C1z 在常数和 A1[z] 方面确实保持 C1[z] 的正确值,但是当我尝试将其“插入”eq2 时,它似乎不起作用。

谢谢您的帮助。

0 投票
3 回答
6489 浏览

haskell - Haskell library like SymPy?

I need to manipulate expressions like 1 + sqrt(3) and do basic arithmetic like addition, subtraction, and division. I'd like the result to be in some sort of canonical form so that it can be used as a key in a map. Turning 1 + sqrt(3) into a float is not feasible due to roundoff problems.

I used SymPy for this task in Python. Is there an equivalent native library for Haskell?

0 投票
1 回答
7979 浏览

matlab - 使用符号求解器仅求解某些变量

我正在尝试用 3 个变量和 5 个常数求解 MATLAB 中的方程组。是否可以用solve解决三个变量,同时保持常数为符号而不用数值替换它们?

0 投票
2 回答
782 浏览

equation - 求解相关方程的算法

我正在做一个项目来创建一个通用方程求解器......设想它采用 25-30 个方程的形式,这些方程将与运算符一起保存在一个表中 - 变量名称。

然后我会调用这个表来求解任何带有缺失变量的方程,它会将运算符/其他部分移动到缺失变量的另一侧

例如 2x+ 3y=z 并且如果 x 缺少变量。我会用 y 和 z 的值调用方程,它会转换为求解 x=(z-3y)/2

方程可以是线性的、多项式的、二进制的(是/否结果)...

我不确定我是否可以获得任何可用的轻量级库,或者是否需要从头开始构建......任何指针或指导将不胜感激

0 投票
2 回答
10532 浏览

matlab - 在 Matlab 中构造分段符号函数

我正在尝试在 Matlab 中生成分段符号函数。它必须是象征性的原因是我希望能够在之后集成/区分函数和/或插入实际值。我有以下功能:

例如,我想把这个函数放在一个变量中(比如说 f),然后调用

并得到(标量)结果 2/3。

我尝试了各种方法,涉及分段()函数和符号比较,但没有任何效果......你能帮忙吗?:-)

0 投票
3 回答
6702 浏览

math - 在 Maple 中执行从 -infinity 到 infinity 的积分

我正在尝试在 Maple 中执行以下积分:

但 Maple 并没有返回答案,而是返回了积分语句本身:

虽然以更漂亮的形式(带有实际的积分符号等)。我试过删除“simplify()”,但没有任何区别。

知道为什么吗?它应该返回一个值。

0 投票
6 回答
2301 浏览

f# - Clojure 与 F# 中的符号数学计算

我遇到了以下 F# 示例,发现它很有趣。

http://www.codeproject.com/KB/net-languages/SymbolicCalcInFS.aspx

Clojure 是否有语言/库工具可以轻松地做这样的事情?可以对公式强制使用波兰表示法,如果这会使事情变得更容易。

谢谢,如果有问题请告诉我。

0 投票
1 回答
2197 浏览

wolfram-mathematica - 简化和重新排列mathematica中的非交换变量

简而言之,我有一个表达式,其中包含 , 和 , 之间的乘法p1,我p2想使用, where将表达式变为对称形式。q1q2[qi,pi]=ii*hbi={1,2}(pi^a*qi^b+qi^b*pi^a)/2

例如,因为p2*q2*p2^2我开始(p2*q2^3+q2^3*p2)/2 + 1/2*ii*p2^2*hb使用简化和一些替换。但是我无法简化,q2*q1^2*p2尽管我已经指定了一个规则q2*p2-> (p2*q2+q2*p2)/2 +ii/2*hb并且带有 1s 和 2s 的变量可以通勤。

更详细地说,这里是 Mathematica 代码(我使用量子包)。

该代码在索引为 1 或 2 时有效,但在同时使用两个索引时无效:

p2*q2*q1*q2给出p2*q1*q2^2,p2*q2*q2可以进一步简化,但既然有q1,Mathematica 就不会这样做。

更详细地说:我正在尝试编写一个 Mathematica 代码,该代码可以在本文的附录(eq. A2)中获取方程式 ,这就是我正在使用的代码。后一个文件中的代码与上面的代码略有不同,因为我无法让上面的代码也运行,但它会是理想的。

最后,我想将最终代码用于其他类型的哈密顿量,最高可达 4 次方甚至更高。

我想要一个建议,我可以学习如何编写一个可以为我进行有针对性的简化的包。

0 投票
3 回答
2511 浏览

clojure - Clojure 的计算机代数

简短版本:我对一些 Clojure 代码感兴趣,它允许我指定 x 的转换(例如排列、旋转),在这种转换下,函数 f(x) 的值是不变的,这样我就可以有效地生成 x 的序列满足 r = f(x)。Clojure 的计算机代数是否有一些发展?对于(一个微不足道的)示例

我可以调用 (preimage f #{0}),它会有效地返回 #{3 4 7}。自然,它也能够正确地注释 codomain。有什么建议么?

更长的版本:我有一个特定的问题让我有兴趣了解有关 Clojure 计算机代数的开发。谁能指出我这样的项目?我的具体问题涉及找到满足 F(x) = r 的所有单词组合,其中 F 是排名函数,ra 是正整数。在我的特殊情况下, f 可以计算为总和

F(x) = f(x[0]) + f(x[1]) + ... f(x[N-1])

此外,我有一组不相交的集合 S = {s_i},使得 f(a)=f(b) for a,b in s, s in S. 所以生成所有 x 的策略使得 F(x) = r 应该依赖于 F 的这种因式分解和每个 s_i 下 f 的不变性。换句话说,我计算了包含 S 元素总和为 r 的站点的所有排列,并将它们与每个 s_i 中元素的所有组合组成。这在以下情况下非常草率地完成:

这完成了工作,但错过了潜在的画面。例如,如果关联操作是乘积而不是总和,我将不得不重写部分。

0 投票
2 回答
10636 浏览

r - 求解 R 中的方程组

可以使用 Ryacas 库在 R 中以符号方式求解方程。例如

有人知道如何(象征性地)求解方程组吗?

谢谢你。