Math World Lab

加法定理と波の干渉(ノイズキャンセリング)

「なぜ逆位相の音をぶつけると騒音が消えるのか?」三角関数の合成と音響工学の秘密

この単元の発見をシェア
3行要約(Key Takeaways / AIOサマリー)
1
三角関数の加法定理(sin(α±β), cos(α±β))は、異なる角度や位相を持つ波の重ね合わせを計算する根幹の定理
2
同じ周期の2つの波 a sin θ + b cos θ は、合成公式により振幅 √(a²+b²) の単一のサイン波に統合できる
3
ノイズキャンセリングイヤホンは、外の騒音と「振幅が等しく位相が180度(πラジアン)真逆の波」をマイクとスピーカーでぶつけ合わせ、sin θ + sin(θ + π) = sin θ - sin θ = 0 として音を完全に消滅させている

なぜこれを学ぶのか? — 現実社会とテクノロジーでの価値

Purpose & Motivation

なぜ生まれたのか?

周期や位相が異なる複数の波が合流したとき、全体の音や電波がどう強め合い、あるいは打ち消し合うかを予測・計算するために体系化された。

身につく武器・思考力

複雑に入り組んだ波形をシンプルなサイン波の足し引きに分解・合成し、逆位相によって騒音を相殺する高度な波動制御の思考が身につく。

実社会・ITでの活躍現場

  • •Apple AirPodsなどのアクティブノイズキャンセリング(ANC)イヤホン
  • •シンセサイザーの音作り(加算合成による多様な楽器音の再現)
  • •5GスマートフォンやWi-Fiの電波干渉防止(MIMOビームフォーミング)
  • •AM/FMラジオの周波数変調・振幅変調回路

Layer 1 — 直感・シミュレーター

元の波(青)と追加波(緑)の振幅・周波数・位相差をスライダーで変更してみよう。「逆位相(位相差 180°)」に設定すると、重ね合わされた合成波(赤)の振幅がみるみる小さくなり、完全に一直線(振幅 0 = 無音)へと消え去るノイズキャンセリング現象を観察できる。

波の干渉とノイズキャンセリング設定:
外部騒音の振幅:30
アンチノイズ振幅:30
位相差 δ:180°
波の重ね合わせ(干渉)シミュレーター:
■ 外部騒音■ アンチノイズ■ 耳に届く合成波
位相関係
完全な逆位相 (π rad)
sin(θ + δ)
合成波の最大振幅
0.0 px
騒音とアンチノイズの和
ノイズ低減効果
100% 完全消音
🎉 騒音が完全に消滅しました
直感チェック!ミニクイズ

騒音を表す波 f(t) = A sin(ωt) を完全に打ち消して無音にするために、スピーカーから出力すべき「逆位相の波」g(t) はどれか?

Layer 2 — 定義・受験・証明

定義

三角関数の加法定理:

sin⁡(α±β)=sin⁡αcos⁡β±cos⁡αsin⁡β\sin(\alpha \pm \beta) = \sin\alpha\cos\beta \pm \cos\alpha\sin\beta

cos⁡(α±β)=cos⁡αcos⁡β∓sin⁡αsin⁡β\cos(\alpha \pm \beta) = \cos\alpha\cos\beta \mp \sin\alpha\sin\beta

三角関数の合成(波の重ね合わせ):

asin⁡θ+bcos⁡θ=a2+b2sin⁡(θ+α)(cos⁡α=aa2+b2,  sin⁡α=ba2+b2)a\sin\theta + b\cos\theta = \sqrt{a^2 + b^2}\sin(\theta + \alpha) \quad \left(\cos\alpha = \frac{a}{\sqrt{a^2+b^2}}, \; \sin\alpha = \frac{b}{\sqrt{a^2+b^2}}\right)

公式・数理モデル

sin⁡(α+β)=sin⁡αcos⁡β+cos⁡αsin⁡β,asin⁡θ+bcos⁡θ=a2+b2sin⁡(θ+α)\sin(\alpha + \beta) = \sin\alpha\cos\beta + \cos\alpha\sin\beta, \quad a\sin\theta + b\cos\theta = \sqrt{a^2+b^2}\sin(\theta+\alpha)

証明・導出

加法定理から三角関数の合成公式の導出: asin⁡θ+bcos⁡θa\sin\theta + b\cos\theta に対し、点 (a,b)(a, b) を座標平面上にとると、原点からの距離は R=a2+b2R = \sqrt{a^2 + b^2} である。 式全体を RR でくくると、

asin⁡θ+bcos⁡θ=a2+b2(aa2+b2sin⁡θ+ba2+b2cos⁡θ)a\sin\theta + b\cos\theta = \sqrt{a^2 + b^2} \left( \frac{a}{\sqrt{a^2 + b^2}}\sin\theta + \frac{b}{\sqrt{a^2 + b^2}}\cos\theta \right)

ここで cos⁡α=aa2+b2,  sin⁡α=ba2+b2\cos\alpha = \frac{a}{\sqrt{a^2 + b^2}}, \; \sin\alpha = \frac{b}{\sqrt{a^2 + b^2}} を満たす角度 α\alpha が必ず1つ存在する。 代入すると、

=a2+b2(sin⁡θcos⁡α+cos⁡θsin⁡α)= \sqrt{a^2 + b^2} (\sin\theta\cos\alpha + \cos\theta\sin\alpha)

加法定理 sin⁡(θ+α)=sin⁡θcos⁡α+cos⁡θsin⁡α\sin(\theta + \alpha) = \sin\theta\cos\alpha + \cos\theta\sin\alpha を逆に適用することで、

=a2+b2sin⁡(θ+α)= \sqrt{a^2 + b^2}\sin(\theta + \alpha)

が美しく導かれる。2つの異なる波の足し算が、単一の拡大されたサイン波に統合される物理的根拠である。

押さえておきたいポイント

  • 加法定理は2倍角公式(sin⁡2θ=2sin⁡θcos⁡θ\sin 2\theta = 2\sin\theta\cos\theta、cos⁡2θ=1−2sin⁡2θ\cos 2\theta = 1 - 2\sin^2\theta)や半角公式の親元の式である
  • 積和の公式・和積の公式(高校数II)は、加法定理を足し引きすることで得られ、電波の振幅変調(AMラジオ)に直結する
  • 波の干渉: 位相差が 0°(同位相)なら振幅は 2倍(建設的干渉)、180°(逆位相)なら振幅は 0(相殺的干渉)
  • 周波数がわずかに異なる2つの波を足すと、振幅が周期的に膨らんだり縮んだりする「うなり(Beat)」が発生する
参照基準・学習指導要領との対応

本トピックの内容・数理モデルは、文部科学省学習指導要領(算数・数学・情報)および国際標準カリキュラムに準拠し、エンジニアリング現場の実装事例と照らし合わせてMath World Lab編集部により検証・作成されています。

Layer 3 — 工学応用・現場実装

アクティブノイズキャンセリング(ANC)とオーディオ信号の逆位相相殺エンジン

外部マイクで集音した環境騒音シグナルに対し、デジタルシグナルプロセッサ(DSP)で位相反転(Inverted Phase)フィルタを適用し、内部スピーカーから逆位相波をリアルタイム再生して合成音圧を 0 に抑え込むアルゴリズム。

1// オーディオバッファにおけるノイズ相殺シミュレータ
2function processActiveNoiseCancellation(
3 noiseSignal: Float32Array,
4 latencySamples: number = 0 // 位相遅れ補正
5): { outputSignal: Float32Array; cancellationRatePercent: number } {
6 const n = noiseSignal.length;
7 // 逆位相波の生成: 反転 g(t) = -f(t)
8 const antiNoiseSignal = new Float32Array(n);
9 for (let i = 0; i < n; i++) {
10 const srcIdx = i - latencySamples;
11 antiNoiseSignal[i] = srcIdx >= 0 ? -noiseSignal[srcIdx] : 0;
12 }
13
14 // 人の耳に届く合成波 = 騒音 + アンチノイズ
15 const outputSignal = new Float32Array(n);
16 let originalEnergy = 0;
17 let cancelledEnergy = 0;
18
19 for (let i = 0; i < n; i++) {
20 outputSignal[i] = noiseSignal[i] + antiNoiseSignal[i];
21 originalEnergy += noiseSignal[i] * noiseSignal[i];
22 cancelledEnergy += outputSignal[i] * outputSignal[i];
23 }
24
25 const reduction = Math.max(0, 1 - Math.sqrt(cancelledEnergy / (originalEnergy || 1)));
26 return {
27 outputSignal,
28 cancellationRatePercent: Math.round(reduction * 100),
29 };
30}
31
32// 例: 440Hzの純音騒音を逆位相波で相殺
33const sampleRate = 44100;
34const buffer = new Float32Array(100);
35for (let i = 0; i < buffer.length; i++) {
36 buffer[i] = Math.sin((2 * Math.PI * 440 * i) / sampleRate);
37}
38
39const result = processActiveNoiseCancellation(buffer, 0); // 遅延なし理想条件
40console.log(`消音率: ${result.cancellationRatePercent}%`); // 100% 消音
41console.log(`合成後の最大音圧: ${Math.max(...result.outputSignal)}`); // 0

次に学ぶならコレ!おすすめトピック

この単元と深い繋がりを持つ、あわせて学ぶと理解が深まるおすすめ単元

数理モデル・概念が近い関連トピック

関連度高工学応用

ノイズキャンセリングの音波干渉(逆位相合成の数学)

外来騒音に180度反転させた逆位相の音波をぶつけて完全消音する三角関数と波動力学

関連度高高校数学

三角関数(単位円とサイン・コサイン)

回転する点のx座標・y座標が三角関数の正体

Acoustic Beats Δf
関連度高高校数学

音のうなりと三角関数の積和公式・干渉の数理

2つの近い周波数が生む心地よい揺らぎ — 包絡線と楽器チューニングの原理

同じレベルで次に挑戦したいトピック

同レベル推薦高校数学

ベクトルの内積

2本の矢印の「向きの近さ」を1つの数値にする

同レベル推薦高校数学

微分の基本(接線と変化率)

平均変化率の極限として現れる「その瞬間の傾き」

同レベル推薦高校数学

積分の基本(面積と区分求積法)

微小な短冊を無限に足し合わせることで現れる「曲線下の面積」

工学・実社会での応用先でつながるトピック

工学・実践連携小学校・算数

比例と反比例

y=kxy = kx と y=kxy = \frac{k}{x}、グラフと表はどう違う?

工学・実践連携中学数学

二次関数と放物線

a, b, c を動かすと放物線の形と位置はどう変わる?

工学・実践連携中学数学

円の方程式(基礎)

中心と半径を動かして、円の方程式が「距離」そのものであることを確かめる

あなたの数学力をさらに伸ばす

数学の弱点診断や算数パズルに挑戦してみませんか?

簡単な質問に答えてあなたにぴったりの学習ロードマップを発見したり、直感を試すパズルで数の面白さを体験できます。