符号数学问题(mathematica)

时间:2011-05-11 11:54:47

标签: wolfram-mathematica

我在我的教程中得到了这个问题,我可以做部分a)和b)。你有没有 c)部分的任何想法?

问题: 符号解决数量r=y/x的以下等式:

3/y^4==3/x^4+a/(x+2y)^4

(a)使用Map或Thread对等式的两边执行替换y->r x

 ans:    
    3/(r^4 x^4) == 3/x^4 + a/(x + 2 r x)^4

(b)绘制a\[Element]{-1,1}的解决方案。对于a\[Element]{-1,1},有多少解决方案真正有价值?这个数字是否取决于a

 ans: Graph and 4 solutions and no its doesn't depend on `a`. 

enter image description here

(c)通过让a在-1和1之间运行,在上面获得的解决方案中以0.02为步长构建数值解。使用Cases选择正确的解决方案,并使用ListPlot绘制区间a\[Element]{-1,1}中发生的所有实际解决方案。

Ans:不知道。

1 个答案:

答案 0 :(得分:1)

您可以使用Eliminate快捷方式a)和b)。您也可以要求Mathematica在实数上求解方程式。 (第8节):

In[538]:= eq = 
 Eliminate[3/y^4 == 3/x^4 + a/(x + 2 y)^4 && r == y/x, {x, y}]

Out[538]= -24 r - 72 r^2 - 96 r^3 + (-45 + a) r^4 + 24 r^5 + 72 r^6 + 
  96 r^7 + 48 r^8 == 3

In[539]:= r /. Solve[eq && -1 < a < 1, r, Reals]

Out[539]= {ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 1], -1 < a < 0 || 
   0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
       110250 #1^3 - 225 #1^4 + #1^5 &, 1] || 
   Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 
       225 #1^4 + #1^5 &, 1] < a < 1], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 2], -1 < a < 0 || 
   0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
       110250 #1^3 - 225 #1^4 + #1^5 &, 1] || 
   Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 
       225 #1^4 + #1^5 &, 1] < a < 1], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 3], 
  0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
      110250 #1^3 - 225 #1^4 + #1^5 &, 1]], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 4], 
  0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
      110250 #1^3 - 225 #1^4 + #1^5 &, 1]]}

然后您可以绘制最终的解决方案:

enter image description here

Out[539]为您提供精确的代数解决方案以及它们是真实的条件。因此,当a介于0和Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 225 #1^4 + #1^5 &, 1]

之间时,实际解决方案的最大数量为4

现在,让我们来看c)。您应该使用NSolve来构建所有解决方案。然后,按照建议Cases提取实际解决方案,然后ListPlot

Table[Thread[{a, 
    Cases[r /. NSolve[eq, r], r_ /; Im[r] == 0]}], {a, -1, 1, 
   0.02}] // ListPlot

enter image description here