2012-12-17 14 views
4

我們有系統:動畫沿着特定溶液的情節的點的移動來獲得使用ParametricPlot3D

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

回答

5

這很容易在數學 - 使用一個交互式界面:

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}] 

enter image description here

+0

謝謝你!完美! – Sektor