• ベストアンサー

Mathematicaでの計算結果にて

工学系の学生です。 卒業研究の為にMathematicaで計算をしています。 解きたいのは5次方程式なのですが計算すると解によくわからない記号がでてきます。 (例) x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 1] x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 2] x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 3] x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 4] x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 5] 分からないのはこの#1^nの部分です。 Mathematicaのヘルプを読むと #nの部分と後半の&, n で純関数を置き換えているという説明があったのですがまず純関数というものがよく理解できないでいます。 また、この例の場合、解はどのように形になるのでしょうか。 分かる方どうかよろしくおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

本当はマニュアルなりなんなりを見てほしいんだけど: x^5 - a^2 b x^4 + 2a x^3 + a^3 b x^2 + a^3 = 0 という方程式を解こうとしたんでしょうか? その解は (Mathematica が判断するところでは) きれいな形にならなかったので, しょうがなく 「x^5 - a^2 b x^4 + 2a x^3 + a^3 b x^2 + a^3 = 0 を満たす x」 と返しているんだと思います. このような x は (一般には) 5個あって, 「その方程式を満たす 1個目の x」, 「2個目の x」, ... を順に x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 1] x→[a^3+a^3#1^2+a^3b#1^3+2a#1^3-a^2b#1^4+#1^5 &, 2] ... と表示しています.

gaji_gaji
質問者

お礼

と、言う事はやはり解が存在しないということになるのでしょうか。 たしかに今結果を見てみたら出力された式と解きたい式は表示方法が違うだけでまったく同じですね。気づきませんでした。 ありがとうございました。

その他の回答 (1)

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.2

mathematicaにも解けなかったってことでしょう。 5次方程式には一般的な解の公式が存在しませんから。

gaji_gaji
質問者

お礼

やはり解けなかったと言う事なんですね。 5次式は確実に解けるという公式は無いと言うのは知っていたのですが結果が出てきたのでもしかしたら、と思ったのですが。 ありがとうございました。

関連するQ&A

  • Mathematicaによる記号計算

    Mathematicaでは、数学で習うような数式の解析解を記号を使った解の式として出力する機能がありますが、これは既知の解法や数式の変換手法などの組み合わせのみで作られているのでしょうか? また、Mathematicaでは解析解を出せない変微分方程式などがあったら教えていただきたいです。

  • mathematicaでの計算

    mathematicaで微分演算子を含むハミルトニアンを独立に扱いたのですが,できるのでしょうか? 例えば,一次元調和振動子のハミルトニアンでしたら H=-d^2/dx^2+x^2 ですが,これを独立に扱って (H-E)^2*ψ などの計算をmathematicaで簡便に行いたいのですが(ここでψは簡単な指数関数,ψ=exp(-a*x^2) など),このような計算のプログラミングはどのようにすればできるのでしょうか?

  • Mathematica で2元4次連立方程式を解くには・・・

    教えて下さい! 2元4次連立方程式{f(x,y)=0, g(x,y)=0} (関数fとgはxとyの4次方程式です。)について、 例えば、[x,-10,10]のような限定された範囲で 実数解(x,y)を Mathematicaを使って、30桁精度で数値的に求め、 それをx,yの2次元プロットしたいと思っております。 Mathematica のどのような関数を組み合わせれば これができるか、ご教示下さいませんでしょうか? よろしくお願いいたします。 (自分でC言語でプログラムした場合、解けるには解け るのですが、有効数字の桁数が十分でなく、部分的に 数値が丸まってしまい、プロットがとぎれてしまう問題 があったので、有効数字を自在に調節できるMathematica でやってみようと思ったのですが、例えば、安直に Plot[N[Solve[{f == 0, g == 0}], 30], {x, -10, 10, 0.01}] としてもダメでした。NRootなども検討しましたがうまく 行きません。)

  • 行列の連立方程式 (mathematica)

    mathematica4.1を使用して,行列で表した連立方程式を計算したいと思っています.例えば A= a11 a12 a13 a21 a22 a23 a31 a32 a33 B=b11 b12 b13 b21 b22 b23 b31 b32 b33 C,Dも同様に定義して A .x+B .y=1 C .x+D .y=0 x=x1 y=y1 x2 y2 x3 y3 のような連立方程式のx,yについて解きたいのですが,どのようにmathematicaで表現すればよいかが分かりません. どなたか教えてください.お願いします. 当然ではありますが,A,B,C,Dはすべて既知としています.

  • Mathematicaでの行列計算

    MathematicaでN×Nの複素行列   ┌               ┐   | a_11+i*b_11 … a_1N+i*b_1N | A= |                |   | a_N1+i*b_N1 … a_NN+i*b_NN |   └               ┘ などでa_ij、b_ijを実数として Conjugate[A]などを計算するためにはどうしたらよいでしょうか? Assumptions->{Im[a_11]==0,Im[a_12]==0,Im[a_13]・・・・・}のように単純に一つ一つ定義していくのではなく、a_ij、b_ijをいっぺんに定義する方法があればお願いします。

  • mathematica

    mathematicaで以下のような計算をしたいと思っています。 目標:y=f(x)がありy=1のときのxの値が知りたい そこで自分は逆関数を求めてからその式に1を代入して求めようと考えたのですがmathematicaで逆関数を求めるのはどのようにすればよいのでしょうか? もうひとつの解法としてシンプルに1=f(x)を解こうと試みてsolveを使ったのですが自分が今使おうとしているf(x)は中に積分が入っていたりと複雑なせいか、solveでは解けないと返ってきました。 上記のどちらでも構わないのでmathematicaで目標を求めるにはどのようにすればいいのでしょうか。よろしくお願い致します。

  • mathematicaにおけるニュートン法の精度

    mathematicaを使ってニュートン法(FindRoot)を利用して方程式の解を求めました。 ここで一つ質問なのですがニュートン法は最終的に接線とx軸の交点Xnにおいて |Xn-Xn-1|<εを満たすようなXnを求めるまで計算を繰り返しますがmathematicaのニュートン法FindRootではこのεの値は何なのでしょうが。 知っている方よろしくお願いいたします。

  • Mathematicaの計算進行状況

    Mathematicaにおいて,あるパラメータnが0~1の範囲について,連立方程式をNSolveで解いてその結果をプロットさせようとしています。式は以下の通りです。(煩雑なので省略形です) Plot[{変数群}/.NSolve[{代数方程式群}, {変数群}], {n, 0,1}] ただいつ計算が終わるのかわからなくて・・・ いったい今どのくらい計算が進行しているのかモニタに表示する方法はないでしょうか??

  • Mathematicaに近似を実行する方法について

    Mathematicaである方程式の近似解を求めたいのですが,できるのでしょうか? たとえば, 1+X+X^2+X^3+・・・ とあって,0<X<1でX^2以上の項が無視できるとしたときに 1+X と出力してくれるような機能が欲しいのですが...

  • 数学II 式の計算と方程式

    数学II 式の計算と方程式 二次方程式 x~2-3x+1=0 の解をa,bとするとき、a~2,b~2を解とする二次方程式を2つ求めよ。 という問題なのですが、解と係数の関係からa+bとabをもとめてみたもののどうにもなりません。 アドバイスをお願いします。