折射定律
作者:王一哲
日期:2018/2/8
折射定律 (law of refraction) 或稱為司乃耳定律 (Snell's law) 的型式為
當 時可以算出臨界角
若 則發生全反射。本次課程檔案已上傳至 GeoGebraTube,可以線上操作或下載檔案,網址為 https://ggbm.at/Xcxnvk2r
折射定律步驟
-
新增控制兩介質折射率 、、入射角 的數值滑桿,指令為
n_1 = Slider(1, 2, 0.1)
n_2 = Slider(1, 2, 0.1)
α = Slider(0°, 89°, 1°)
再手動將 調整為1, 調整為1.38,α 調整為 60°。
-
在原點上新增點 O,在 x 軸上畫直線作為兩介質的交界面,在 y 軸上畫直線作為法線
O = Point({0, 0})
f = Line(O, xAxis)
g = Line(O, yAxis)
-
在法線上新增點 A,再拖曳到(0, 4),畫上過點 A 並垂直於法線 g 的直線 h
A = Point(g)
h = PerpendicularLine(A, g)
-
將點 A 對點 O 順時鐘方向旋轉角度 α 變為點 A',畫出射線 i 作為入射光,再隱藏點 A'
-
畫出射線 i 與直線 h 的交點 B,再畫出角 BOA 作為入射角
B = Intersect(h, i)
θ_1 = Angle(B, O, A)
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
折射定律範例步驟 1 ~ 5 成果
-
計算 時的臨界角
θ_c = If(n_1 > n_2, (asin(n_2 / n_1) / π*180)°, 0°)
上式中 ,但是輸出的單位為弧度 (rad),2π rad = 360°,為了將單位換回 ° 因此加上了 / π*180° 。
-
計算折射角 β
β = If(n_1 <= n_2 || θ_1 <= θ_c, (asin(n_1 sin(θ_1) / n_2) / π*180)°)
上式中 || 代表或,當 或 成立時,用後面的式子計算折射角,若條件不成立則沒有定義折射角。
-
在法線上新增點 C,再拖曳到(0, -4),畫上過點 C 並垂直於法線 g 的直線 k
C = Point(g)
k = PerpendicularLine(C, g)
-
將點 C 對點 O 順時鐘方向旋轉角度 β 變為點 C',畫出射線 j 作為折射光,再隱藏點 C'
-
畫出射線 j 與直線 k 的交點 D,再畫出角 DOC 作為折射角
D = Intersect(k, j)
θ_2 = Angle(D, O, C)
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
折射定律範例步驟 6 ~ 10 成果
-
畫出發生全反射時的反射光
l = If(n_1 > n_2 && θ_1 > θ_c, Reflect(i, g))
上式中 && 代表且,當 與 都成立時射線 i 對法線 g 的線對稱。但是在輸入指令之後進到屬性裡面看定義會變成
If(n_1 > n_2 ∧ θ_1 > θ_c, Ray(Reflect(O, g), Reflect(A', g)))
這是 GeoGebra 自動轉換的,不需要管它。
-
將 調整為1.5, 調整為1,試試看當 增加時會不會發生全反射,如果可以就成功了。
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
折射定律範例步驟 11 ~ 12 成果
- 再將 調整為1, 調整為1.38, 調整為 60°。選取測量距離工具,用滑鼠左鍵在點O、B上各點一下,標示OB之間的距離。接著用同樣的作法,標示OA、AB、OC、OD、CD之間的距離。
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
測量距離工具選單
- 用以下指令新增是否顯示角度、距離的核取方塊。
angle = Checkbox({θ_1, θ_2})
length = Checkbox({文字AB, 文字CD, 文字OA, 文字OB, 文字OC, 文字OD})
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
折射定律範例最終成果
相關指令的官方說明書
- 點 https://wiki.geogebra.org/en/Point_Command
- 垂直線 https://wiki.geogebra.org/en/PerpendicularLine_Command
- 線對稱 https://wiki.geogebra.org/en/Reflect_Command
- 畫角度 https://wiki.geogebra.org/en/Angle_Command
- 數值滑桿 https://wiki.geogebra.org/en/Slider_Command
- 旋轉 https://wiki.geogebra.org/en/Rotate_Command
- 射線 https://wiki.geogebra.org/en/Ray_Command
- 條件 https://wiki.geogebra.org/en/If_Command