没有 detools 的 maple plot 方向场
maple plot directional field without detools
这是一道作业题。我要使用 for 循环和/或 procs 绘制 ode y' = x*y/2 的方向场。我有以下代码:
X := [seq(.1*x, x = -20 .. 20)];
Y := [seq(y, y = -2 .. 2, .1)];
P := Array([seq(0, x = 0 .. 41^2-1)]);
with(plots);
for k to 41 do for j to 41 do
slope := (1/2)*X[k]*Y[j];
Xp := [X[k], X[k]+.1]; Yp := [Y[j], Y[j]+0.1*slope];
P[41*(k-1)+j] := plot(Xp, Yp) end do end do;
display(P);
并得到一些看起来非常糟糕的东西,而不是 right.I 了解很多情节并且使用 detools 会更容易,但如前所述,它是为了家庭作业。我得到这样的东西:
http://i.imgur.com/FfSbTTl.png
如果您执行 display(P[1..2])
,您就会明白为什么 display(P)
看起来不对 - 它是 "window of plot windows"。
您需要告诉 Maple P 不是 一个 对象,但显示应该是 1681 个图,例如序列功能。
display(seq(P[i], i = 1..numelems(P)));
这是一道作业题。我要使用 for 循环和/或 procs 绘制 ode y' = x*y/2 的方向场。我有以下代码:
X := [seq(.1*x, x = -20 .. 20)];
Y := [seq(y, y = -2 .. 2, .1)];
P := Array([seq(0, x = 0 .. 41^2-1)]);
with(plots);
for k to 41 do for j to 41 do
slope := (1/2)*X[k]*Y[j];
Xp := [X[k], X[k]+.1]; Yp := [Y[j], Y[j]+0.1*slope];
P[41*(k-1)+j] := plot(Xp, Yp) end do end do;
display(P);
并得到一些看起来非常糟糕的东西,而不是 right.I 了解很多情节并且使用 detools 会更容易,但如前所述,它是为了家庭作业。我得到这样的东西: http://i.imgur.com/FfSbTTl.png
如果您执行 display(P[1..2])
,您就会明白为什么 display(P)
看起来不对 - 它是 "window of plot windows"。
您需要告诉 Maple P 不是 一个 对象,但显示应该是 1681 个图,例如序列功能。
display(seq(P[i], i = 1..numelems(P)));