• 締切済み

ベクトルの計算について教えて下さい

エクセルでベクトルの計算をしたいのですがどのようにしていいのか分かりません。 どなたかご教授いただけませんでしょうか。 具体的な内容としては以下の通りです。 例(1) グライダーを「空気に対して」10m/sで360°方向(北)に進ませたい。 このとき、風が90°(東)から10m/sで吹いている。 360°方向(北)に グライダー(☆)を飛ばしたい(「空気に対して)10m/sで) ↑ | | ☆←---風が90°(東)から10m/sで吹いている この場合、グライダーを飛ばすべき方向はベクトルの和をとって、45°(北東) となる。 グライダーを45°(北東)に飛ばすと、風に流され、結果的にちょうど360°に 飛び、そのときの「地面に対する」速度は10m/sのままとなる (風は進行方向の真横から吹いているので、「地面に対する速度」は変化しないので) 例(2) グライダーをが「空気に対して」10m/sで360°方向(北)に進ませたい。 このとき、風が180°(南)から10m/sで吹いている。 360°方向(北)に グライダー(☆)を飛ばしたい(「空気に対して)10m/sで) ↑ | | ☆ ↑ | | 風が180°(南)から10m/sで吹いている この場合、グライダーを飛ばすべき方向はベクトルの和をとって、360°(北) となる。 このとき、グライダーの「空気に対する速度」が10m/sであり、その空気自体が 360°の方向に10m/sで進んでいるので、「地面に対する」速度は20m/sとなる 長文になりましたが、 以下の3つのベクトル(方向と速度)から A【飛ばしたい方向(既知数)      、地面に対する速度(未知数)】 B【風向(既知数)           、風速(既知数)      】 C【風を加味して飛ばすべき方向(未知数)、空気に対する速度(既知数)】 A、Cの未知数を作図手法ではなく数式的ににより解を得たいと考えています(最終的にはエクセルで様々なパターンの計算が容易にできるようにしたいと考えていますので)。 方法としては、【方向、速度】をSin、Cosを用いて直行する成分【X、Y】成分に分ける必要があるかと思います。 しかし、ベクトルBに関しては【風向、風速】ともに既知数なので直行ベクトルに分解できますが、ベクトルA、Bについてはベクトルの中に未知数があるため、直行成分に分解できず困っています。 また、仮に直行成分に分解できたとしてもそれを数式的にどのように 取り扱えばよいのか分かりません。 よい方法をご存知の方おられましたら、 是非ご教授いただけませんでしょうか。 よろしくお願いします。

みんなの回答

  • 12kokuki
  • ベストアンサー率24% (22/91)
回答No.2

とりあえず、こんな感じでどうだろう? 但し、【A】、【B】、【C】の場合わけはしていない。 (エクセル表)    A     B        C         D 1)        風    飛ばしたい方向   飛ばすには(答え) 2) 方位    [あ]       [う]        [お] 3) 速度    [い]       [え]        [か] 4) 5) 6)計算過程 7)X軸方向   [き]       [け]        [さ] 8)Y軸方向   [く]       [こ]        [し] 以上のようなエクセルシートを作り [あ]風の吹く方向(但し、X軸方向0度。Y軸方向90度・以下、角度については同意) [い]風の吹く速度 [う]飛ばしたい方向([あ]と同じ定義) [え]飛ばしたい速度(対地速度。変えたい場合は勝手に計算してください) [お]答え。(角度)       =IF(ISERROR(DEGREES(ATAN(D8/D7)))=TRUE,IF(B8>C8,90,180), DEGREES(ATAN(D8/D7))) [か]答え。(速度)        =SQRT(D7^2+D8^2) [き]風のX軸成分       =FIXED(B3*(COS(RADIANS(B2))),5) [く]風のY軸成分       =FIXED(B3*(SIN(RADIANS(B2))),5) [け]風のX軸成分       =FIXED(C3*(COS(RADIANS(C2))),5) [こ]風のX軸成分       =FIXED(C3*(SIN(RADIANS(C2))),5) [さ]飛べばいいX軸成分       =C7-B7 [し]飛べばいいY軸成分       =C8-B8 こんな感じかな? ただし、以下のことに注意 ・すべて対地速度で計算してください。 ・答えの方位に関しては多々バグがあります。  例)0度、180度の区別がない。これに関してはIF文で解決可とおもう。 ・答えの角度は、途中で計算してしまっているため、はっきりと答えがでない。 ・他多数。 後は自分で肉付けしてください。

noname#71905
noname#71905
回答No.1

以下のような解釈で良いのでしょうか? 例1{風向北,風速10(m/s)}の風が吹いているとき   地面の観測者から見て、方向北,速度10(m/s)で進むようにするには   グライダーを、方向北東,速度10√2(m/s)で飛ばせば良い 例2{風向北,風速10(m/s)}の風が吹いているとき   グライダーを、方向北,速度10(m/s)で飛ばすと   地面の観測者から見て、方向北,速度20(m/s)で進む

関連するQ&A