Mapleで連立方程式の解の順序と複合表示について

このQ&Aのポイント
  • Mapleで連立方程式を解く際、解の表示順序が異なる場合があります。解がx,yの順に表示される場合とy,xの順に表示される場合があります。
  • 解の表示順序は連立方程式の式の順序や数式の書き方によって異なります。
  • 解を複合表示するには、連立方程式をsolve関数で解き、解の符号を考慮して表示する必要があります。
回答を見る
  • ベストアンサー

Mapleで連立方程式で表示される解の順序と複合での表示について

度々すいません。Win2k&Maple7の環境の者です。 f:=abs(3*x+y)/10*10^(1/2)=abs(y); g:=abs(y)=abs(2*x-y-1)/5*5^(1/2); h:=abs(2*x-y-1)/5*5^(1/2)=abs(3*x+y)/10*10^(1/2); solve({f,g,h},{x,y}); とした場合に解がx,yの順に表示されないのは何故なのでしょうか? 今迄、連立方程式を解かせる度にy,xの順に解が表示される時もあれば、x,yの順に表示される時もあります。どういう場合にy,xやx,yの順に表示されるのでしょうか? それと上記の解を複合±を使って表示させるにはどうしたらいいのでしょうか?

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

  • ベストアンサー
  • inara
  • ベストアンサー率72% (293/404)
回答No.1

WinXP&Maple5です。 >解がx,yの順に表示されないのは何故なのでしょうか? 参考文献によると、この原因はsolveコマンドが、連立方程式のように解が複数あるとき、解の組を「集合」として扱うからのようです(集合には順序はない)。しかし、それを「リスト」として扱うと(例えば集合をリストに代入)、指定した順序で表示されます。以下のようにすれば必ずx,yの順番で表示されます。 f:=abs(3*x+y)/10*10^(1/2)-abs(y); g:=abs(y)-abs(2*x-y-1)/5*5^(1/2); h:=abs(2*x-y-1)/5*5^(1/2)-abs(3*x+y)/10*10^(1/2); soln:=solve({f,g,h},{x,y}): for i from 1 to 4 do x[i]:=subs(soln[i],x):y[i]:=subs(soln[i],y) od; 最初の連立方程式はf=0、g=0、h=0の形式に書き換えました(あとで検算するため)。Mapleではf:=...=0と書かなくても、=0と解釈してくれます。 solnは解の組を入れる変数で、この段階では「集合」のままですので順番はMapleまかせです。次のfor文でこのsolnからx[ ],y[ ]に解を分けて入れていきます。x[ ],y[ ]はリストではありませんが、順番を指定しているのでx[ ],y[ ]の順で表示されます(odの後が;で終わっているので表示を確認できると思います)。配列変数x[1~4]とy[1~4]が解です。x[1]とy[1]は同じ組の解です。こうすれば解を後の計算に使うことができます。 x[ ],y[ ]が確かに解になっていることを確認するには以下を実行します(30桁計算の例)。mapコマンドを使う方法もありますが、subsのほうが理解しやすいのでそうしました。 for i from 1 to 4 do evalf(subs(x=x[i],y=y[i],[f,g,h]),30) od; >上記の解を複合±を使って表示させるにはどうしたらいいのでしょうか? 参考書やWebサイト、Helpファイルを調べましたが表示する方法は見つかりませんでした。複号は2種類(±と干)しかないので、出てくる符号の組み合わせによっては複号同順では1つの式で表せず、かといって複号任意とすると全ての組み合わせが解になってしまうという問題があるからでしょう。 参考文献:「はじめてのMaple V リリース4」シュプリンガー・フェアラーク東京株式会社(1990),p.67.

Erika111
質問者

お礼

有難うございます。 お蔭様で大変参考になりました。

関連するQ&A

  • Mapleで連立方程式の解が正常に出力されません

    こんにちは。 Windows2000でMaple7の環境です。 A(-1,-2),B(3,4),C(5,6)の△ABCの内心の座標を求めています。 各辺の直線の方程式を求めて点と直線間の距離の公式を使って内心の座標を求めようと試みたのですが何故か最後の連立方程式の解が4組も出力されてしまいます。これは何が原因なのでしょうか? x1=-1;y1=-2;x2=3;y2=4;x3=5;y3=6; subs({x1=1,y1=1,x2=3,y2=2,x3=2,y3=3},{y-y1=(y1-y2)/(x1-x2)*(x-x1)}); {y - 1 = 1/2 x - 1/2} subs({x1=1,y1=1,x2=3,y2=2,x3=2,y3=3},{y-y1=(y1-y3)/(x1-x3)*(x-x1)}); {y - 1 = 2 x - 2} subs({x1=1,y1=1,x2=3,y2=2,x3=2,y3=3},{y-y3=(y3-y2)/(x3-x2)*(x-x3)}); {y - 3 = -x + 2} d1:=abs((1/2*x-y-1/2))/((1/2)^2+(-1)^2)^(1/2); d1 := 1/5 | 1/2 x - y - 1/2 | sqrt(5) sqrt(4) d2:=abs((2*x-y-1))/((2)^2+(-1)^2)^(1/2); d2 := 1/5 | 2 x - y - 1 | sqrt(5) d3:=abs((x+y-1))/((1)^2+(1)^2)^(1/2); d3 := 1/2 | x + y - 1 | sqrt(2) solve({d1=d2,d2=d3,d3=d1},{x,y}); {y = 1/18*sqrt(5)*sqrt(2)+2/9, x = 8/9+1/18*sqrt(5)*sqrt(2)}, {y = -1/6*sqrt(5)*sqrt(2)-1/3, x = 1/6*sqrt(5)*sqrt(2)+1/3}, {y = 2/9-1/18*sqrt(5)*sqrt(2), x = 8/9-1/18*sqrt(5)*sqrt(2)}, {x = 1/3-1/6*sqrt(5)*sqrt(2), y = -1/3+1/6*sqrt(5)*sqrt(2)}

  • 連立方程式の解

    以下の連立方程式の解と式を教えて貰えませんか? x=3y-7 x+5y=9 です。分かりやすく教えていただけると助かります。

  • 連立方程式の解について

    連立方程式ax+by+c=0, dx+ey+f=0の解が、x=const(定数)となり、y軸に平行になる解をもつときの条件を教えてください。

  • 連立方程式の解

    連立方程式の解 連立方程式{ax+by=9 の解が bx-ay=-2 x=4,y=-1 であるときa,bの値を求めなさい。 この問題が分かりません! 解き方を教えてください! お願いします!

  • 非線形連立方程式の解

    数学に詳しい方、どなたか教えて下さい。 下記のような非線形連立方程式を解こうと、エクセルのソルバーを使って試みましたが、 解が得られませんでした。 ちなみに初期値は(x,y)=(1,1)で実行しました。  12171060/e^((0.03+x)/y)+4847040/e^((0.06+x)/y)+762696/e^((0.09+x)/y)-1=0 …(1)  13523400/e^((0.02+x)/y)+5385600/e^((0.04+x)/y)+847440/e^((0.06+x)/y)-1=0 …(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なども検討しましたがうまく 行きません。)

  • 解が一つに決まらない連立方程式

    x-3y=3 2x-6y=6 を解きなさい。 という問題で x-3y=3…(1) 2x-6y=6…(2) (1)×2より2x-6y=6 これは(2)と全く同じ式である。(1)を満たす(x,y)の組は無数にあるから、連立方程式の解も無数にある。 と回答にはありましたが、『(1)、(2)を満たす(x,y)の組は無数にあるから~』ではないんですか?

  • 連立方程式の解と定数a

    連立方程式の解と定数a x、yの連立方程式 ax+by=9 bxーay=ー2 の解がx=4、y=ー1となるaの値を求めよ この問題はx=4,y=-1を代入してaを求めて解くと思いますが、 これは連立方程式の解がx=4,y=-1となるための必要条件じゃないんですか? つまりといた後にそのaで確かに(4,-1)(のみ?)が解となるか確かめる必要があるんじゃないですか? 数学はまったく苦手なので質問がまとはずれでしたらお知らせください。よろしくお願いします

  • 連立方程式

    連立方程式{2x-4y=k, -x+2y=-2 が解を持つとき、次の各問いについて教えてください。 (1)kを求めてください。 (2)この連立方程式の解を求めてください。 (1)ができたら(2)はできると思うのですが… よろしくお願いします。

  • 連立方程式

    aを実数の定数として、x,yの連立方程式(a+2)x+3y=a , (2a-1)x+ay=3を考える。連立方程式がただ一つの解をもつとき、x,yをそれぞれ求めよ。(aを用いて) このような問題なのですが、そもそも連立方程式がただ一つの解をもつ条件とは何なのですか?教えて下さい!!!