相关疑难解决方法(0)

如何对多项式执行复杂的变量更改(在Mathematica中)

我有四个变量(w,x,y和z)中的整数多项式,我知道这些变量可以写成这六个变量中的整数多项式:

  • a = wz
  • b = xy
  • c = w ^ 3 + z ^ 3
  • d = x + y
  • e = w ^ 3 x + yz ^ 3
  • f = w ^ 3 y + xz ^ 3

如何使用Mathematica(或者Java)轻松地对变量进行这种更改?

java math wolfram-mathematica polynomial-math

13
推荐指数
1
解决办法
1762
查看次数

通过自动引入时间变量或以任何其他方式简化非常长的符号表达式

在尝试解决符号数学问题后,我得到了一个大约17000个字符的表达式.我正在使用Matlab的符号工具箱,但我对任何建议(Mathematica,无论如何)都持开放态度.

出于显而易见的原因,我不会将表达式直接复制粘贴到问题中.这是一个链接.

运行Matlab命令simplifysimple,甚至企图collect没有改善的情况(有些我们更糟糕).

但我想知道,我不关心是否使用时间参数逐步评估表达式.就像是:

 z1 = a^2*y1;
 %Now the expression can be simplified by using z1 as alias!
 z1+z1^2 ....
Run Code Online (Sandbox Code Playgroud)

是否有一种自动方法可以通过时间变量逐步简化这种方法?此外,您可以想到的任何其他方法都是合理的.

matlab wolfram-mathematica symbolic-math maple

7
推荐指数
1
解决办法
1万
查看次数

关于mathematica中"智能"替换的问题

我如何告诉mathematica巧妙地做这个替换?(或者我如何更聪明地告诉mathematica做我想做的事)

expr = b + c d + ec + 2 a;
expr /. a + b :> 1

Out = 2 a + b + c d + ec
Run Code Online (Sandbox Code Playgroud)

我希望答案是a + cd + ec + 1.在有人建议之前,我不想这样做a :> 1 - b,因为出于审美目的,只要无法进行简化,我就想拥有两者a并且b在我的等式中a+b = 1.


此外,我如何得到它取代的所有实例1-b,-b+1或者-1+b,b-1a-a分别,反之亦然?

以下是此部分的示例:

expr = b + c (1 - a) + (-1 + b)(a - …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica

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

如何在Mathematica中替换隐式子表达式?

我在Mathematica中有这个表达式:

(a^2 (alpha + beta)^2)/(b^2 + c^2) + (a (alpha + beta))/(b^2 + c^2) + 1  
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,表达式中有几个子表达式在整个表达式中重复出现.

我希望能够更换a/(b^2+c^2)使用dalpha+betagamma.

最后的表达应该是:

1+d*gamma+a*d*gamma^2
Run Code Online (Sandbox Code Playgroud)

我有更复杂的表达方式,能够做到这一点将大大简化我的工作.

我试过谷歌搜索这个问题,我只找到使用FactorTerms和ReplaceRepeated的答案,但不能一致地工作,并且对于像这样的更复杂的表达.我希望有人在这里有答案.

wolfram-mathematica

5
推荐指数
1
解决办法
4059
查看次数