- ベストアンサー
エクセルを使って数式をときたい
72.8(1+cosθ)=4{(22.1X/22.1+X)+(50.7Y/50.7+Y)} 58.2(1+cosθ)=4{(39.5X/39.5+X)+(18.7Y/18.7+Y)} の二式を、θを適当に変えながら、連立させてXとYを求めるなんてことはエクセルでできますでしょうか? もしできたらやり方を教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>以前にも他の質問にこたえていただきました。ありがとうございました。 以前にもここで近似値の求め方を聞いておられた方ですね。思い出しました。(笑) ソルバーが使えるようになったのですね。 まず、一点。すみません。下の一部が間違っています。 C2 =4*(39.5*B1/(39.5+B1)+18.7*C1/(18.7+C1)) B3 =B2-A2 逆ですね。C2とB3を入れ替えてください。(ただし、再度ここからコピーペーストした方がいいですよ) 申し訳ないです。 それでも値が出なかった時は(ソルバーで仮の解が見当たりませんと表示されてD2の値が0に近くなっていない時)はオプションを色々変えてみるか、実務で大体の値が分かっている時はその値を入れれば解がでます。B1、C1の初期値をとりあえず20,20にして始めてみたりして下さい。 -------------------------------------------------- θ=60,80 だったら、 A1 60 A2 =72.8*(1+COS(A1/180*PI())) A3 =58.2*(1+COS(A4/180*PI())) A4 80 というふうにやっていいですか? -------------------------------------------------- 問題ないです。
その他の回答 (3)
- age_momo
- ベストアンサー率52% (327/622)
近似解とは逆の言葉が厳密解 例えば x^2-4x+1=0 の方程式は解の公式から x=2±√3です。数学的にはこれが正解ですが、単にxに数字を適当に (本当はぜんぜん適当じゃないんですが)0になるところを探しても いいですね。Excel等はそうやって解を求めます。 x=0.267949192 と3.732050808 をxに代入すれば上の方程式はほぼ0になります。 これが近似解です。実際に使用する分には全く問題ないと思います。(しっかり 近似できていればですが) #1さんのやり方ですが ツール→アドイン→ソルバーアドインにチェック は理解できましたでしょうか?アドインは使えるでしょうか? ツールのところにソルバーは出てきたでしょうか? OKなら以下のように入力してください。 下の記入のコピーペーストでいけると思います。 セル 入力 A1 60 A2 =72.8*(1+COS(A1/180*PI())) A3 =58.2*(1+COS(A1/180*PI())) B1 0 C1 0 B2 =4*(22.1*B1/(22.1+B1)+50.7*C1/(50.7+C1)) C2 =4*(39.5*B1/(39.5+B1)+18.7*C1/(18.7+C1)) B3 =B2-A2 C3 =B3-A3 D2 =C2^2+C3^2 次に ツール → ソルバー でメニューを表示させて 目的セル $D$2 目標値 値に● 0を入力 変化させるセル $B$1:$C$1 を入力して実行ボタンを押す。 解を記入して終わり A1がθの値です。その時の解がB1とC1に出ます。ちなみに60°の時は X=14.033 Y=29.671になりました。
- Sbacteria
- ベストアンサー率42% (55/129)
#1の方の解答に対する補足を読んで、エクセル自身が連立方程式を解いてくれると勘違いされているのではないかと思いました。質問では、θの値を適当に変えて...とあるので、その先をもう少し考えてみてください。#1の方の解答は、偏差を最小にするようにθを決めようとするものです。あくまでも近似式なのは、θを例えば1度ごとに変化させて、偏差の最小値を求めたとしても、1度のスケール内で偏差が0になるかどうかわからないからです。コンピュータがどうやって処理していくかをアルゴリズムで考えてご覧なさい。そうすると、計算的に答えを求める方法の意味が分かると思います。でも、上記の方程式なら、X,Yについて解いてしまえば良いのでは無いですか?そうすると、θがいくつの時に、Xが..Yが..という表を簡単に作成できます。でも、エクセルは、方程式を解く作業はできません。
お礼
回答ありがとうございました。 ポイントつけられなくて、すいません。
- shkwta
- ベストアンサー率52% (966/1825)
エクセルのソルバーアドインを使うと、反復計算によってこのような連立方程式の近似解を求めることができます。 ツール→アドイン→ソルバーアドインにチェック 次に、どこかのセル範囲に適当にθ,X,Yを入れておき P = 72.8*(1+cos(θ))-4*((22.1*X/(22.1+X))+(50.7*Y/(50.7+Y))) Q = 58.2*(1+cos(θ))-4*((39.5*X/(39.5+X))+(18.7*Y/(18.7+Y))) R = P^2 + Q^2 のようにP,Q,Rを計算します。このRを反復計算で0にすることをめざします。 ツール→ソルバーで、 目的セルをR、 目標値を「値 0」、変化させるセルをXとY、あとオプションで精度や反復回数などをセットして実行すれば、解を求めてくれます。
お礼
すいません。あの、よかったら、書いていただいたやり方もう少し詳しく教えていただけないですか?
補足
回答ありがとうございます。 あの、近似解というのは、ただの解と違うんですか? 私の中では、θがたとえば60度の時、X,Y=??,?? という形で計算できればと思っています。なんだか馬鹿な質問かもしれないですが、よかったら教えてください。 すいません私エクセルはほとんど使ったことが無いので、とんでもないことを聞いているのかもしれないです。
補足
回答ありがとうございます。 以前にも他の質問にこたえていただきました。ありがとうございました。 すいません教えていただいたとおりにやったのですが、私がやると、θ=60°のとき、 B1=-6.545521787 C1=238494354.5 となってしまいます。 あとあの、質問と同じ式で、二つの式のθの値が異なる場合、たとえば、 θ=60,80 だったら、 A1 60 A2 =72.8*(1+COS(A1/180*PI())) A3 =58.2*(1+COS(A4/180*PI())) A4 80 というふうにやっていいですか?