0

このコードで何が間違っていますか?

atvalue(y(x),[x=0],1)$
desolve(diff(y(x),x)=y(x),y(x));
plot2d(y(x),[x,-6,6]);

出力:

plot2d: expression evaluates to non-numeric value everywhere in plotting range.
plot2d: nothing to plot
false

微分方程式から得られる y(x) をプロットしたい。

4

2 に答える 2

0

その理由は、desolve の後に表示される結果が、y が x の関数として定義されていることを意味しないためです。y(x)実際、plot2dでf(x)(またはその他の不明な関数)を変更すると、同じエラーが発生します。違いを見ます:

(%i9) atvalue(y(x),[x=0],1)$

(%i10) desolve(diff(y(x),x)=y(x),y(x));
                                           x
(%o10)                            y(x) = %e
(%i11) y(x);
(%o11)                               y(x)
(%i12) y(x):=%e^x;
                                            x
(%o12)                            y(x) := %e
(%i13) y(x);
                                        x
(%o13)                                %e

方程式 (結果) を自動的に関数定義に "変換" する方法があるかどうかはわかりません。方法が見つかったら、答えを完成させます。

于 2013-09-30T20:55:19.357 に答える