波の干渉とは
2つの波が出会うと、高さが足し算されます。山と山が重なれば大きな山に(強め合い)、山と谷が重なれば平ら(打ち消し合い)。音・光・水面——あらゆる波で起きる現象で、ノイズキャンセリングや干渉縞もこの原理です。波動方程式を格子で計算しています。
水面の裏で解いている式
波紋の動きは波動方程式(∂²u/∂t² = c²∇²u)で表せます。本シミュレーターは水面を格子に分け、各点の高さが「周囲4点の平均」に引っ張られるように毎フレーム更新しています。「水の粘り」は減衰項で、大きくすると波がすぐ静まります。
| 水の粘り | 見え方 |
|---|---|
| 小さい | 波が長く残り、干渉模様がよく見える |
| 中くらい | ふつうの水面に近い |
| 大きい | 蜂蜜や油のような重い液体。波はすぐ消える |
波紋から分かる「波の速さ」
実際の水面では、水深が浅いほど波は遅く進みます。津波が沖では時速800km(ジェット機並み)なのに、岸に近づくと時速数十kmまで減速し、その分だけ高くなるのはこのためです。また小さな波紋(さざ波)は表面張力が支配的で、波長が短いほど速く進む——雨粒の波紋が“細かい波ほど先に広がる”のはこの性質です。
よくある質問
- 重い場合は?
- 少しカクつくときはタップの数を減らしてみてください。
- データは送信されますか?
- いいえ。すべてブラウザ内で計算します。
- 2つの波紋がぶつかると消える?
- 山と谷が重なった瞬間は平らになりますが、波はそのまま通り抜けて再び現れます。波は「足し算されるだけで、互いを壊さない」性質があります。
- 端で反射するのはなぜ?
- 水槽の壁と同じで、格子の端で波が跳ね返るように計算しています。反射波と元の波が干渉して、複雑な模様を作ります。