我需要解出方程y'=cos(y)-1的斜率场。
DSolve[{y'[x] == -1 + Cos[y[x]]}, y[x], x]
VectorPlot[{1, (-1 + Cos (y))}, {x, -3, 3}, {y, -3, 3}]我得到了一个空图。有什么帮助吗?
发布于 2017-02-01 05:38:58
正如注释中所建议的那样,您应该在Mathematica中使用Cos[]而不是Cos()。
您可以求解ode,并将VectorPlot与这样的解曲线结合起来
soln[y0_?NumericQ] :=First@DSolve[{y'[x] == -1 + Cos[y[x]], y[0] == y0}, {y}, {x, 0,10}];
vp = VectorPlot[{1, (-1 + Cos[y])}, {x, -3, 3}, {y, -3, 3}];
Show[vp, Plot[
Evaluate[{y[x]} /. soln[#] & /@ Range[-20, 20, 0.3]], {x, -3, 3},
PlotRange -> All, MaxRecursion -> 8, AxesLabel -> {"x", "y"}]]

https://stackoverflow.com/questions/41948724
复制相似问题