我们有这个系统: x'[t] == x[t] - 5 y[t] + z[t]y'[t] == 3 x[t] - 3 y[t] - 3 z[t]z'[t] == -2 x[t] + 10 y[t] + 4 z[t] 和初始条件: x[0] == .01y[0] == 3z[0] == 0 我制作了具体的情节: eqn = {x'[t] == x[t] - 5 y[t] + z[t],
x'[t] == x[t] - 5 y[t] + z[t] y'[t] == 3 x[t] - 3 y[t] - 3 z[t] z'[t] == -2 x[t] + 10 y[t] + 4 z[t]
和初始条件:
x[0] == .01 y[0] == 3 z[0] == 0
我制作了具体的情节:
eqn = {x'[t] == x[t] - 5 y[t] + z[t], y'[t] == 3 x[t] - 3 y[t] - 3 z[t], z'[t] == -2 x[t] + 10 y[t] + 4 z[t]}; sol = NDSolve[{eqn, x[0] == .01, y[0] == 3, z[0] == 0}, {x[t], y[t], z[t]}, {t, -5, 5}] {xde[t_], yde[t_], zde[t_]} = {x[t], y[t], z[t]} /. Flatten[sol] ParametricPlot3D[{xde[t], yde[t], zde[t]}, {t, 0, 10}, AxesLabel -> {"x", "y", "z"}, PlotRange -> {{-15, 15}, {-15, 15}, {-15, 15}}]
我知道如何选择一个随机点来绘制整个轨迹,但我找不到一种方法来动画沿着绘制的轨迹移动的点.
在这个特定的例子中,该点应该在t == 0并且一直移动直到t == 2.
Animate[Show[ParametricPlot3D[{xde[t], yde[t], zde[t]}, {t, 0, 10}, AxesLabel -> {"x", "y", "z"}, PlotRange -> {{-5, 15}, {-5, 5}, {-5, 15}}], Graphics3D[{Red, PointSize[.05], Point[{xde[T], yde[T], zde[T]}]}]], {T, 0, 2}]