忍者ブログ

Memeplexes

プログラミング、3DCGとその他いろいろについて

群速度 両手の法則

フレミングの左手の法則のように、手を使って群速度の方向を計算する簡単な方法を思いついたのでプログラムにします。


動機

前回、時空図を使ったら群速度の方向が直感的にわかるというようなことを述べましたが、私は内心これではまだ不十分だと感じていました。そこで今回は、両手を使って幼稚園児でもわかりそうな理解の方法を解説します。両手を使って群速度を計算するのです!これ以上直感的な方法はないでしょう。唯一の欠点は、ちょっと手をねじるため体が硬いと痛いかもしれないということだけです!

手を使って群速度を計算する

操作方法

マウスで手をドラッグ:手を移動する(2つの波の波長を変更する)。

解説

これは両手を使って群速度が逆転する様子を直感的に理解するためのプログラムです。群速度とは2つの波(赤い波と青い波)をあわせたときに現れる、元の波とは違うパターンの波の速度のことです(紫の波)。これは生き物に見紛うような美しいパターンで、一見理解の及ばないものに思えるかも知れませんが、実際には手で遊ぶだけでどちらに進むか計算できます。

このプログラムの手を次の図のように変更すると、群速度は右への移動になります。紫の矢印が群速度の方向です(赤と青の矢印は、それぞれ足される前の波の移動方向です。つまり右へ移動しています)。

一方で、次のように手を移動すると、群速度は左への移動になります。つまり、逆転しているのです。

手を動かすと、紫色の矢印の方向は変わり、それは群速度の変化を意味します。

注意してほしいのは、このデモでは個々の波の速度自体は全く変わっていないという点です(その機能はこのプログラムにはありません。話を簡単にして理解しやすくするためです)。手によって変化するのは、波の波長だけです――両手の間隔を広げれば波長は長くなり、近づければ短くなります。群速度の方向は、波長だけで調節できるのです。

ただし、これを実際の両手で行うときは、波長も速度も変更できます。つまりこの手でやる遊びは、群速度の完全な計算方法というわけです!この海の生物の泳ぐ様子を思わせる波の動きを理解するには、複雑な数式など必要なく、単に両手があるだけでよいのです!

拍手[0回]

PR