绘制非解析方程的隐式变量

时间:2015-01-31 01:42:09

标签: wolfram-mathematica

我有一个非分析方程式。我可以解决不同的参数值,但我的程序根本不工作。最后我想绘制y vs x

f[x_] := y + Sqrt[3 + x*y - x^20 - y^4]
Table[f[x], {x, 0.1, 0.5, 0.1}] 
NSolve[f[x] == 0, y] 

1 个答案:

答案 0 :(得分:1)

f[x_] := y + Sqrt[3 + x*y - x^20 - y^4]

sol = Solve[f[x] == 0, y];

x0 = Table[i, {i, 0.1, 0.5, 0.1}];
subs = N[sol /. x -> #] & /@ x0

这会产生结果,从中我们可以看到第一个和第二个解决方案产生复数。首先绘制两个真正的解决方案。

y3 = subs[[All, 3, 1, 2]];
y4 = subs[[All, 4, 1, 2]];

ListLinePlot[{Transpose[{x0, y3}], Transpose[{x0, y4}]}]

enter image description here

或者,可以使用

的解决方案生成图表
Plot[{sol[[3, 1, 2]], sol[[4, 1, 2]]}, {x, 0.1, 0.5}]

enter image description here

复杂的解决方案可以这样绘制:

ParametricPlot[{{Re[sol[[1, 1, 2]]], Im[sol[[1, 1, 2]]]},
  {Re[sol[[2, 1, 2]]], Im[sol[[2, 1, 2]]]}}, {x, 0, Pi/2}]

enter image description here