0
は、私は(この場合はx^3-2*x^2+a
に)別のルートを返す関数test(a)
をプロットしようとしています:Maximaの変数名スコープはどのように機能しますか?
なぜこれが動作しませんか?最後の行でa
からx
に変更すると、なぜ機能しますか?
は、私は(この場合はx^3-2*x^2+a
に)別のルートを返す関数test(a)
をプロットしようとしています:Maximaの変数名スコープはどのように機能しますか?
なぜこれが動作しませんか?最後の行でa
からx
に変更すると、なぜ機能しますか?
問題はmnewton
は、指定された変数(この例では単にx
)に値を代入した後、数に評価される式を必要とすることです。この作業を行うには、a
に値が入るまでmnewton
が呼び出されないようにする必要があります。たとえば、次のようなものがあります。
plot2d (lambda ([a], rhs(mnewton(p(x, a) = 0, x, 20)[1][1])), [a, -1, 1]);
ここで、p(x, a)
は多項式です。
a
という大きな値の場合、mnewton
からエラーが発生するため、a
の範囲を小さくしました。
find_root
を試して、1変数の方程式を解くこともできます。
機能が問題であるので、三次多項式である、そこに厳密解があるとマキシマはそれを見つけることができます経由:私の具体的なケースMaximaは見つけることができないでalgsys([p(x, a)], [x]);
私の質問に選ばれた機能は、単にプレースホルダーましたルートは 'solve(..)'となります。 あなたの答えと 'find_root(..)'ヒントをありがとう! – Frithjof