03 (旋轉)拋物面上的光線反射(多次)
旋轉拋物面
我們在此處所要討論的是橢圓拋物面中的旋轉拋物面。
若用一個與對稱軸垂直的平面,切過旋轉拋物面,截痕即是一個圓;若用一個包含對稱軸的平面,切過旋轉拋物面,其截痕會是一群焦點、開口大小一樣的拋物線。也就是說,將一個拋物線,對其對稱軸旋轉,所圍得的圖形,即是旋轉拋物面。
其中一種形式的旋轉拋物面之方程式為:z=a(x2+y2)。
用此方程式表示的旋轉拋物面,其對稱軸為z軸。
而這裡我們只先討論旋轉拋物面,是因為旋轉拋物面有固定的焦點。這表示所有平行對稱軸的入射光線,反射路徑都會經過焦點,也就是能將光線聚集在一點上。這也代表,不論是衛星訊號接收器或碟式聚光太陽能熱發電,都是用旋轉拋物面。
切平面與法線
在三維空間中,對旋轉拋物面上的一點而言,該點的"切線"會有無限多條,即使鎖定其中一條"切線",過該點且垂直該"切線"的直線亦有無限多條,這樣就不容易找到我們所需要的法線。
到了三維空間,你可能會想:
「我們只要找出拋物面在該點的"切平面",就可以找出過該點且垂直"切平面"的法線了。」
但是找出切平面這件事情,除了超出了高中職所學之外,Geogebra也沒有工具或指令能夠直接做出切平面,
當然還是有方法的,只要我們不依賴切線或切平面就找出法線。而讓我們先回到二維平面去看法線與拋物線的性質。
參考下圖,設拋物線方程式為y=ax2,
A、B為拋物線上兩點,而各別通過A、B的兩條斜直線為A、B在拋物線上的法線。
這裡會有一個很特別的情形,當我們去找出兩條法線與y軸的交點A0、B0時,會發現一個相同點:
A、A0的y座標之差,剛好等於B、B0的y座標之差。不論A、B怎麼移動,都會有這樣子的特性。
更特別的,它們的差距,剛好等於。這表示,我們能用一個方法來製造法線:
利用拋物線上一點P和P0所做出的直線,當作P在拋物線上的法線。
其中,P0=(0,y(P)+), y(P)即是P點的y座標。
類似地,這個方法也可以在旋轉拋物面上使用.只有一些地方不太一樣。
例如例子中,拋物線的方程式是y=ax2 ,而這裡旋轉拋物面所使用的方程式為z=a(x2+y2) ,在這之中,拋物線的對稱軸為y軸,而旋轉拋物線的對稱軸則是z軸。
所以修改後的法線製作方法如下:
利用拋物面上一點P和P0所做出的直線,當作P在拋物線上的法線。
其中,P0=(0,0,z(P)+), z(P)即是P點的z座標。
所以,製作法線的指令,可輸入 Line( P , ( 0 , 0 , z(P) + 1/(2a) )
接著只要熟悉一下3D繪圖區的操作模式,就可以開始製作拋物面的光線反射了。
在此處製作 拋物線上的光線反射(多次)
步驟1 打開3D繪圖區,關閉主繪圖區。
在"檢視"之中操作
步驟2 製作光源起點A、拋物面以及最初的反射點B
(1) 先製造一個新點A,不要製造成在軸上的點。
(2) 在指令列輸入指令:z = 0.05(x^2 + y^2) (此拋物面的焦點會位於(0,0,5) )
.確認一下拋物面的名稱是否為f,以下以拋物面名稱為f為例去操作
(3) 調整點A的位置(A點必須要在拋物面的上方)
(4) 在拋物面上製造一點B。
.記得移動視角,確認A,B兩點的位置。
(5) 製作向量AB,作為光線的示意。
步驟3 製作反射光線
.法線是用來幫我們找出對稱點,也就是光線的走向。這裡我們就不再製造出法線。
(1) 做點A對「B的法線」之對稱點A',
輸入指令Reflect( A , Line( B , ( 0 , 0 , z(B) + 10 ) ) )。
(2) 做出射線,輸入指令Ray( 0.99*B+0.01*A' , A' ),並將其重新命名為r1。
(3) 做出射線r1與拋物線f的交點,得到C點。
(4) 製作向量BC,作為光線的示意。
步驟4 製作下一個反射點
(1) 利用前一個反射點,做點B對「C的法線」的對稱點B',
輸入指令Reflect( B , Line( C , ( 0 , 0 , z(C) + 10 ) ) )。
(2) 做出射線,輸入指令Ray( 0.99*C+0.01*B' , B' ),並將其重新命名為r2。
(3) 做出射線r2與拋物面f的交點,得到D點。
(4) 製作向量CD,作為光線的示意。
步驟5 重複步驟4,直到做出足夠的反射點
.當光線不是平行對稱軸或者經過焦點時,光線會在拋物線上反射無限次。
.大多時候光線反射幾次後,就會跑到很遠的地方。所以只要做4~6次的反射,就足以應付大多數的情況了。
步驟6 調整特殊情形的射線顯示,並隱藏不必要物件
(1) 當起始光源A到B之間會通過焦點時,光線反射一次後會遠離拋物線,所以要讓射線r1顯示。
將射線r1的顯示條件設定為「 x(B) == x(A') 」,同時製造向量BA',讓射線r1看起來更有方向感,並使該向量的顯示條件亦設為「 x(B) == x(A') 」。
(2) 當起始光源A到B的方向平行對稱軸時,光線反射兩次後會遠離拋物線,所以要讓射線r2顯示。將射線r2的顯示條件設定為「 x(C) == x(B') 」,同時製造向量CB',讓射線r2看起來更有方向感,並使該向量的顯示條件亦設為「 x(C) == x(B') 」。
(3) 隱藏不必要出現的法線、射線和對稱點。