Math World Lab

三角関数のグラフ(sin, cos, tan)

振幅・周期・位相のパラメータが波形を変形させる仕組みと振動現象への応用

この単元の発見をシェア
3行要約(Key Takeaways / AIOサマリー)
1
三角関数 sin, cos, tan は単位円上の点の座標(あるいは辺の比)から生まれる周期関数で、x を横方向にずらしても同じ形が無限に繰り返される
2
y = A sin(Bx + C) の形では、A が波の高さ(振幅)、B が波の詰まり具合(周期 2π/|B| を決める)、C が波の左右のずれ(位相)をそれぞれ独立にコントロールする
3
sin・cos で表される滑らかな周期運動は、キャラクターの上下浮遊アニメーションや振り子・ばねの振動、音波・交流電流の波形など、あらゆる周期現象のシミュレーションの基礎になっている

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

Purpose & Motivation

なぜ生まれたのか?

三角関数 sin, cos, tan は単位円上の点の座標(あるいは辺の比)から生まれる周期関数で、x を横方向にずらしても同じ形が無限に繰り返される

身につく武器・思考力

y = A sin(Bx + C) の形では、A が波の高さ(振幅)、B が波の詰まり具合(周期 2π/|B| を決める)、C が波の左右のずれ(位相)をそれぞれ独立にコントロールする

実社会・ITでの活躍現場

  • •キャラクターの浮遊アニメーションと単振動シミュレーション
  • •ITシステム・アルゴリズム実装における論理設計
  • •データ分析やシミュレーションにおける数理モデリング

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

sin・cos・tan のボタンで表示する関数を切り替え、振幅 A・角周波数 B・位相 C のスライダーを動かしてみよう。A を大きくすると波が縦に伸び、B を大きくすると波が横に詰まって速く振動し、C を動かすと波形全体が左右にスライドする。下部のアニメーションでは、同じ sin 波が「上下に浮遊するキャラクター」の動きとしてリアルタイムに再生される。

振幅 AA: 1.0
角周波数 BB: 1.0
位相 CC: 0.00
y=1.0 sin(1.0x+0.00)y = 1.0\,sin(1.0x + 0.00)周期 ≈ 6.28
💡 応用: sin波によるキャラクターの浮遊アニメーション
🙂

上のスライダーで設定した振幅・角周波数・位相をそのまま使い、時間 t を角度として Asin⁡(Bt+C)A\sin(Bt+C) をキャラクターのY座標オフセットに使っています。

直感チェック!ミニクイズ

関数 y = 3sin(2x) の周期はいくつか?

Layer 2 — 定義・受験・証明

定義

単位円周上の点 PP を、原点を中心に角 θ\theta(ラジアン)だけ回転させた位置に取ったとき、その xx 座標を cos⁡θ\cos\theta、yy 座標を sin⁡θ\sin\theta と定義する。さらに tan⁡θ=sin⁡θcos⁡θ\tan\theta = \dfrac{\sin\theta}{\cos\theta}(cos⁡θ≠0\cos\theta \neq 0)と定義する。

これらはいずれも「角を入力すると比を返す」周期関数であり、一般形 y=Asin⁡(Bx+C)y = A\sin(Bx + C) において、AA は振幅(波の高さ)、BB は角周波数(BB が大きいほど波が詰まる)、CC は位相(波の左右方向のずれ)を表す。

公式・数理モデル

y=Asin⁡(Bx+C),周期=2π∣B∣,tan⁡θ=sin⁡θcos⁡θy = A\sin(Bx + C), \quad \text{周期} = \frac{2\pi}{|B|}, \quad \tan\theta = \frac{\sin\theta}{\cos\theta}

証明・導出

周期が 2π/∣B∣2\pi / |B| になることの導出:

sin⁡θ\sin\theta は θ\theta が 2π2\pi増えるごとに同じ値を繰り返す性質(sin⁡(θ+2π)=sin⁡θ\sin(\theta + 2\pi) = \sin\theta)を持つ。

関数 y=sin⁡(Bx)y = \sin(Bx) において、xx が TT だけ増えたときに中身の角が ちょうど 2π2\pi 増えれば波形は元に戻る。すなわち、

B(x+T)=Bx+2π  ⟺  BT=2π  ⟺  T=2πBB(x + T) = Bx + 2\pi \iff BT = 2\pi \iff T = \frac{2\pi}{B}

BB が負の場合も波の詰まり具合(間隔)は変わらないため、一般に周期は T=2π∣B∣T = \dfrac{2\pi}{|B|} となる。

また tan⁡θ=sin⁡θ/cos⁡θ\tan\theta = \sin\theta / \cos\theta において、cos⁡θ=0\cos\theta = 0 となる θ=π/2+nπ\theta = \pi/2 + n\pi(nn は整数)では分母が 0 になるため、tan のグラフはそこで無限大に発散する「漸近線」を持つ。これが sin・cos のなめらかな波形と、tan の周期的に切れるグラフとの決定的な違いを生む。

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

  • 振幅 AA:グラフの縦方向の伸縮率。AA を負にすると上下が反転する
  • 角周波数 BB:周期 2π/∣B∣2\pi/|B| を決める。BB が大きいほど波が横に詰まって振動が速くなる
  • 位相 CC:−C/B-C/B だけ波形全体を左右に平行移動させる(位相のずれ)
  • tan⁡θ\tan\theta は θ=π/2+nπ\theta = \pi/2 + n\pi で定義されず、周期は π\pi(sin・cos の半分)である
参照基準・学習指導要領との対応

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

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

キャラクターの浮遊アニメーションと単振動シミュレーション

ゲームやUIアニメーションで「ふわふわ浮いているような」自然な上下動を作るとき、時間 tt を角度に見立てた sin⁡\sin 波をそのままY座標のオフセットとして使う。振幅・角速度・位相をパラメータ化することで、複数のオブジェクトに微妙にずれた周期運動を与えられる。

1type Vec2 = { x: number; y: number };
2
3// 単振動(sin波)によるキャラクターの浮遊オフセットを計算
4function computeFloatOffset(
5 timeSec: number,
6 amplitude: number, // 振幅 A(px)
7 angularFreq: number, // 角周波数 B(rad/sec)
8 phase: number // 位相 C(rad)
9): number {
10 return amplitude * Math.sin(angularFreq * timeSec + phase);
11}
12
13// キャラクターの基準位置に浮遊オフセットを加算して毎フレーム更新
14function updateCharacterPosition(
15 basePos: Vec2,
16 timeSec: number
17): Vec2 {
18 const offsetY = computeFloatOffset(timeSec, /* A */ 8, /* B */ 2, /* C */ 0);
19 return { x: basePos.x, y: basePos.y + offsetY };
20}
21
22// 60fpsのゲームループを想定した例
23let t = 0;
24const base: Vec2 = { x: 100, y: 200 };
25setInterval(() => {
26 t += 1 / 60;
27 const pos = updateCharacterPosition(base, t);
28 console.log(`キャラクター位置: (${pos.x.toFixed(1)}, ${pos.y.toFixed(1)})`);
29}, 1000 / 60);
この単元につながる学習ロードマップ

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

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

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

関連度高高校数学

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

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

関連度高高校数学

指数関数と対数関数

「爆発的な急成長」と「莫大な桁数を扱いやすい尺度に圧縮する」表裏一体の数学

関連度高高校数学

数列と漸化式(フィボナッチと再帰)

過去の状態から次の状態を紡ぎ出すルール。再帰・動的計画法(DP)と複利の数理

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

同レベル推薦高校数学

ベクトルの内積

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

同レベル推薦高校数学

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

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

同レベル推薦高校数学

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

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

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

工学・実践連携工学応用

勾配降下法

谷底を探すAIの基本アルゴリズム

工学・実践連携工学応用

ニューラルネットワークの数学(順伝播と活性化関数)

入力に重みを掛けて足し合わせ、非線形関数で発火させるAIの基本素子

工学・実践連携工学応用

レコメンドの仕組み(コサイン類似度とベクトル検索)

ユーザーの好みと商品の近さを「ベクトルのなす角」で判定するアルゴリズム

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

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

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