---
# System prepended metadata

title: GeoGebra 教學 11：波源移動的都卜勒效應及震波示意圖
tags: [GeoGebra]

---

# GeoGebra 教學 11：波源移動的都卜勒效應及震波示意圖

> 作者：王一哲
> 日期：2019/10/25

本次課程檔案已上傳至 [GeoGebraTube](https://www.geogebra.org/m/c4bzxywu)，可以線上操作或下載檔案。

<br />

## 原理

假設波源發出的聲波頻率為 $f_0$，空氣中的聲速為 $v$，波源以速度 $v_S$ 接近靜止的觀察者時，由於聲波的波長被壓縮，但空氣中的聲速不變，因此觀測到的聲波頻率會變為

$$f = \frac{v}{v-v_S} f_0$$

若波源以速度 $v_S$ 遠離靜止的觀察者時，由於聲波的波長被拉長，但空氣中的聲速不變，因此觀測到的聲波頻率會變為

$$f = \frac{v}{v+v_S} f_0$$

<img height="100%" width="100%" src="https://imgur.com/Lq8OTV2.gif" style="display: block; margin-left: auto; margin-right: auto;"/>
<div style="text-align:center">都卜勒效應示意圖動畫 （波源移動速度為0.6倍聲速）</div>
<br />

當波源移動速度大於空氣中的聲速時，聲波會疊加在一起形成震波，下圖中的 $\theta$ 為馬赫角，藍色的直角三角形斜邊為波源移動的距離，$\theta$ 的對邊為聲波前進的距離，因此

$$\sin \theta = \frac{v}{v_S}$$

<img height="60%" width="60%" src="https://imgur.com/obRe9hF.png" style="display: block; margin-left: auto; margin-right: auto;"/>
<div style="text-align:center">震波示意圖 （波源移動速度為2倍聲速）</div>
<br />

<img height="100%" width="100%" src="https://imgur.com/suGCIb8.gif" style="display: block; margin-left: auto; margin-right: auto;"/>
<div style="text-align:center">震波示意圖動畫 （波源移動速度為2倍聲速）</div>
<br />

## 繪圖步驟

1. 於指令列中依序輸入以下指令定義數值 v、λ、period。
    ```latex
    v = 1
    λ = 1
    period = λ / v
    ```

2. 於指令列中依序輸入以下指令新增數值拉桿，定義波源移動速度與波速的比值 ratio 與時間 t。
    ```latex
    ratio = Slider(0, 2, 0.1)
    t = Slider(0, 10*period, 0.02*period)
    ```

3. 定義當時要畫出的波源及聲波數量 num，再畫出波源與代表聲波用的圓形。
    ```latex
    num = floor(t / period)
    sources = Sequence((0 + i*ratio*v, 0), i, 0, num, 1)
    waves = Sequence(Circle(sources(i + 1), v*(t - period*i)), i, 0, num, 1)
    ```

4. 由於我想把現在的波源位置標出來，因此在最右側再畫一個點並調整成不同的顏色。
    ```latex
    source = Point({0 + ratio*v*t, 0})
    ```

5. 當 ratio > 1 時，可以畫出通過點 source 並於圓形 waves 相切的切線，指令為
    ```latex
    Tangent(source, waves(num))
    ```
    假設兩條切線被命名為 f 和 g ，再畫出通過第1個波源位置並與 f 垂直的直線 h
    ```latex
    h = PerpendicularLine(sources(1), f)
    ```
    畫出 h 和 f 的交點 A
    ```latex
    A = Intersect(h, f)
    ```
    計算馬赫角的正弦值
    ```latex
    sin_{angle} = sin(Angle(A, source, sources(1)))
    ```

6. 用文字工具加上說明，內容為
    ```latex
    0 ≤ ratio < 1:   Doppler effect (moving source)
    ratio > 1:  Shockwave
    \sin_{angle} = \frac{1}{ratio} = 物件[sin_{angle}]
    ```
<img height="40%" width="40%" src="https://imgur.com/B1BGAEC.png" style="display: block; margin-left: auto; margin-right: auto;"/>
<div style="text-align:center">文字工具</div>
<br />


##  相關指令的官方說明書

1. 數值滑桿 https://wiki.geogebra.org/en/Slider_Command
2. 序列 https://wiki.geogebra.org/en/Sequence_Command
3. 點 https://wiki.geogebra.org/en/Point_Command 
4. 圓 https://wiki.geogebra.org/en/Circle_Command
5. 切線 https://wiki.geogebra.org/en/Tangent_Command
6. 垂直線 https://wiki.geogebra.org/en/PerpendicularLine_Command
7. 交點 https://wiki.geogebra.org/en/Intersect_Command
8. 角度 https://wiki.geogebra.org/en/Angle_Command

<br />

---

###### tags:`GeoGebra`