도플러 효과 시뮬레이터
이 시뮬레이션의 방정식
| f₀ | 음원 진동수 f₀ (Hz) | 사이렌이 내는 음높이이자 운전자가 듣는 음높이 | |
|---|---|---|---|
| c | 음속 c (m/s) | 20 °C 공기에서 343 m/s, 0 °C에서 331, 물에서 1,480 | |
| v_s | 음원 속력 v_s (m/s) | 30 m/s is 108 km/h | |
| v_o | 음원 쪽으로 다가가는 듣는 사람의 속력 | 여기서는 0: 듣는 사람은 서 있다 | |
| θ | 음원의 운동 방향과 듣는 사람까지 선 사이의 각 | 지금 도착하는 소리가 나왔을 때의 각. 0°는 듣는 사람에게 곧장 다가옴, 180°는 곧장 멀어짐 | |
| f | 듣는 사람에게 들리는 진동수 | 음원이 다가오는 동안 높고, 가장 가까운 점에서 f₀와 같고, 멀어지면 낮다 |
현재 값을 넣으면:
| λ | 음원 앞과 뒤의 파장 | 앞에서는 마루가 촘촘해지고 뒤에서는 늘어난다. 그린 원은 마루 수십 개 중 하나 |
|---|
현재 값을 넣으면:
| M | 마하수 | 1을 넘으면 음원이 자기 소리를 앞지른다 | |
|---|---|---|---|
| α | 마하 원뿔의 반각 | 모든 파면이 이 원뿔에 쌓인다. 원뿔이 듣는 사람을 지나갈 때 소닉 붐이 들린다 |
현재 값을 넣으면:
도플러 효과 시뮬레이터 사용법
- 사이렌을 단 자동차가 도로를 달려 듣는 사람 옆을 지나갑니다. 소리의 마루 수십 개 중 하나를, 차가 그것을 낸 자리에서 퍼져 나가는 원으로 그렸습니다. 차 앞에서는 원이 몰리고 뒤에서는 퍼집니다.
- 차가 다가오고, 지나가고, 멀어지는 동안 듣는 사람에게 들리는 진동수와 반음 단위의 변화를 읽습니다. 듣는 사람에게 들리는 소리 내기를 체크하면 익숙한 음높이 하강을 들을 수 있습니다. 그래프는 차 위치에 따른 진동수를 보여 주며, 속도 변환기로 속력을 km/h나 mph로 바꿀 수 있습니다.
- 음원 속력을 음속보다 높여 보세요. 원이 더는 차보다 앞서지 못하고 원뿔에 쌓이는데, 이것이 마하 원뿔입니다. 듣는 사람은 원뿔이 지나갈 때까지 아무것도 듣지 못하다가, 그 순간 다가오는 소리와 멀어지는 소리를 한꺼번에 듣습니다. 이것이 소닉 붐입니다.
자주 묻는 질문
도플러 효과란 무엇인가요?
파동의 근원과 여러분이 서로에 대해 움직일 때 들리는 진동수가 바뀌는 현상입니다. 음원이 다가오면 각 마루가 바로 앞 마루보다 조금 더 가까운 곳에서 나오므로 촘촘하게 도착해 음이 높아지고, 멀어지면 늘어져 도착해 음이 낮아집니다. 음원 자체의 진동수는 바뀌지 않습니다.
도플러 공식은 무엇인가요?
f = f₀ × (c + v_o) ÷ (c − v_s cos θ)입니다. f₀는 낸 진동수, c는 음속, v_s는 음원 속력, v_o는 듣는 사람이 음원 쪽으로 움직이는 속력, θ는 소리를 낼 때 음원의 운동 방향과 듣는 사람까지 선 사이의 각입니다. 정면에서 듣는 사람이 서 있으면 다가올 때 f = f₀ c ÷ (c − v_s), 멀어질 때 f₀ c ÷ (c + v_s)입니다.
차가 지나갈 때 음이 왜 갑자기 떨어지나요?
차가 가장 가까워지는 순간 각 θ가 거의 0°에서 거의 180°로 확 바뀌기 때문입니다. 도로에 가까이 설수록 변화가 빠르고 떨어짐도 급하며, 도로에서 멀면 음이 천천히 미끄러지듯 내려갑니다.
소닉 붐은 왜 생기나요?
소리보다 빠른 음원은 자기 파동을 앞지릅니다. 내보낸 모든 파면이 뒤쪽 원뿔 표면에 쌓이며, 그 반각 α는 sin α = c ÷ v_s를 만족합니다. 원뿔에는 급격한 압력 변화가 실려 있고, 그것이 여러분 위를 지날 때의 변화가 바로 붐입니다. 붐은 음속 장벽을 깰 때만이 아니라 비행기를 계속 따라다닙니다.
WebGL이 꺼져 있다고 나옵니다.
3D 화면에는 WebGL이 필요하며, 최신 브라우저는 모두 지원합니다. 브라우저 설정에서 하드웨어 가속이 꺼져 있거나 그래픽 드라이버가 매우 오래되면 비활성화될 수 있습니다. 하드웨어 가속을 켜거나 다른 브라우저를 사용해 보세요.
무언가 업로드되나요?
아니요. 시뮬레이션은 사용자의 브라우저가 WebGL로 직접 그립니다. 어디에도 전송되지 않으며, 페이지를 한 번 불러오면 오프라인에서도 계속 작동합니다.