dポイントプレゼントキャンペーン実施中!

ベクトルAとBがあり、その両方に垂直なベクトルを求めたいのですが、
どうすれば良いのでしょうか?
内積を計算した結果で0になるものが直行しているというのはわかるのですが・・・

A 回答 (4件)

rei00 です。

先程の回答違ってますね。alfeim さんがお書きの様に A, B の外積が求めるものですね。

で,あえて内積で頑張るなら次の様になると思います。A, B を三次元ベクトル A (a1, a2, a3), B (b1, b2, b3) とし,求めるベクトルを X (x, y, z) とすると。

垂直=内積0より
 a1・x + a2・y + a3・z = 0
 b1・x + b2・y + b3・z = 0

これを解いて
 x = z・(b3・a2 - a3・b2)/(a1・b2 - b1・a2)
 y = z・(b3・a1 - a3・b1)/(a2・b1 - b2・a1)

今,求めるベクトルの大きさが決まっていませんので,x, y, z の比を使って,求めるベクトルは (a2・b3 - b2・a3, a3・b1 - b3・a1, a1・b2 - b1・a2) となります。

つまり A, B の外積になります。なお,3次元上の次元でも同様に出来ると思います(たぶん・・・)。
    • good
    • 4
この回答へのお礼

丁寧な説明、ありがとうございます。
なぜ外積を使うと垂直なベクトルが求まるのか理解できました。

お礼日時:2001/05/21 10:08

高等学校の数学や入試問題を解く時に「2つのベクトルのいずれにも垂直なベクトル」を求めるのは、しばしば使う計算です。


原理的には「内積=0」の方程式を二つ立てて解けばよいのですが、まとも計算すると時間ばかりかかります。以下の方法でやれば10秒程度で機械的に出せます。(私も受験生の時に随分お世話になった方法です)

問:
ベクトル1 (x1, y1, z1)
ベクトル2 (x2, y2, z2)
に垂直なベクトルの一つ(x3, y3, z3)を求む

方法:
与えられたベクトルの成分を
x1 y1 z1 x1
x2 y2 z2 x2
の順で機械的に並べる。(順に並べて、先頭のx1, x2を尻尾にもう一度並べる)
ちょうど行列式のように、x1 y2-x2 y1を作る。対称性からこれが求めるベクトルのz成分(z3)となる。
次に右に一つずれて、y1 z2-y2 z1を作る。これがx成分(x3)になる。
最後にz1 x2-z2 x1を作る。これがy成分(y3)になる。

本質的にはrei00さんの回答と同じなのですが、ツールと割り切ってしまってとにかく速く求められるのがミソです。
    • good
    • 1
この回答へのお礼

丁寧な説明ありがとうございました。
おかげでなんとかなりそうです。

お礼日時:2001/05/21 10:11

ベクトルAとベクトルBの外積が両ベクトルに対して垂直なベクトルだったと思います


3D系で法線求めるのに使ったと思いました

"法線 外積" あたりをキーワードにすれば原理も含めて説明してるサイトが見つかると思います
    • good
    • 3
この回答へのお礼

わかりました。サーチエンジンで検索してみます

お礼日時:2001/05/21 10:05

お書きの様に「内積を計算した結果で0になるもの」を求めれば良いわけですが,何がお分かりにならないのでしょうか?



内積の計算でしょうか。これでしたら,ベクトル X (x1, x2), Y (y1, y2) の内積は「x1・y1 + x2・y2」ですが。

この式をベクトル A, B に対して用いて得られる連立方程式を解けば求まると思います。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています