S9G5 黃金螺線與極坐標方程
談到黃金比例,常會提到黃金螺線,並說鸚鵡螺就符合黃金螺線。這次就讓我們用 Geogebra 來驗證看看是否符合黃金螺線。為了繪製黃金螺線,本節(jié)也將介紹極坐標的曲線方程。從這來認識阿基米德螺線 r = a+b θ 與等角螺線 r?=?a*b^θ。

任務(wù)一:極坐標方程與阿基米德螺線

說明:
圓弧型的曲線很適合用極座標方程來表示。先來欣賞個基本的阿基米德螺線 r =?θ?。
當(dāng) GGB 看到式子中有 r,?θ? 時,會自動用極座標方程來解釋。也就是會轉(zhuǎn)譯為 Curve( (θ; θ),θ,0, 2*pi) 。
在座標中間用分號來標示時,就表示此為極座標。第一個參數(shù)表示半徑?r 。因此,?(θ;?θ) 就表示?r = θ?。若希望多繞幾圈,再輸入?yún)?shù) n ,則?Curve( (θ;?θ),θ,0, 2*n*pi)? 就表示繞 n=5 圈的阿基米德螺線。
若要繪製更一般的阿基米德螺線,則可加入滑動條 a,b ,並定義?c1=Curve(?(b -?a?θ;?θ),θ,0, 2*n*pi) 、c2=Curve( (b + a θ;?θ),θ,0, 2*n*pi) ,就可形成兩個方向的螺線。
操作步驟:
a = 1/(2*pi)
b = 0?
n = 5
c1 = Curve((aθ+b;θ),θ,0, 2*n*pi)
c2?=?Curve((-aθ+b;θ),θ,0, 2*n*pi)
t = Slider(0,n)
Pt = c1(2*pi*t)? # 讓?Pt 在 C1 上移動
vPt = Vector(O,Pt)
補充:嘗試輸入 r= a (1-sin?θ) 就可以得到笛卡爾心型線。

任務(wù)二:極坐標方程與等角螺線

說明:這節(jié)要來探究等角螺線,其極座標方程為 r =?b^θ ,表示隨著角度增大時,其半徑等比的增大。若將方程改寫為?r?=?b^(θ/2*pi) 時,表示每增加一圈,半徑變?yōu)?b 倍??深惐褥栋⒚酌椎侣菥€ r = ?b*θ/(2*pi)?,每增加一圈,其半徑增加 b 。一個是等比、另一個是等差的形式。
這個螺線又稱為等角螺線主要因為從中心點與曲線上一點的連線與其切線的夾角都是定值。
而所謂的黃金螺線其?b?值為 1.618^0.5 也就是每繞半圈其半徑變?yōu)?1.618 倍。再加入?yún)?shù)a 就可以得到一個大小縮放的黃金螺線。
操作步驟:
a= 0.90162
b= 1.618^2
n=4?
c1 = Curve( (a*b^(t/(2*pi);t), t, 0 , 2*n*pi)
A= Point(c1)
O=(0,0)
LOA=Line(O,A)
# 使用 Intersect(LOA,c1)? 會產(chǎn)生很多點,將這些點命名為 A1,A2,A3
A0?= Intersect(LOA,c1)
A1 = Intersect(LOA,c1)
A2?= Intersect(LOA,c1)
A3?= Intersect(LOA,c1)
tA_0 = Tangent(A,c1)?
tA_1?=?Tangent(A_1,c1)
tA_2?=?Tangent(A_2,c1)
aA0 = Angle(sA0,tA2)
aA2?= Angle(sA0,tA0)
任務(wù)三:極坐標方程與等角螺線

說明:在了解等角螺線的基本參數(shù) r=a*b^(θ/(2*pi))?後,此節(jié)要將等角螺線套用在圖片上。先插入圖片,並調(diào)整好位置,使得螺線的起始點位在原點 O。

接著在螺線上標一個點 A ,再連接 AO 並在內(nèi)圈螺線標註點 B?。接著以?b=OA/OB 來取得參數(shù) b 的值。
而對於 a 的選取,要設(shè)置螺線轉(zhuǎn)了 loop 圈後,到達 A 點。也就是當(dāng)?aA =??Angle(A)+2*loop*pi 時,r= a*b^(aA/(2*pi)) = OA 長。因此 ,a 取值為 OA/(b^(aA/(2*pi)) 。
接著再建立曲線方程? cA= Curve( (a*b^(t/(2*pi));t),t,0,aA ) 就可得到貼合螺線的黃金螺線。
操作步驟:
O = (0,0)
A = (-10,-3) # 在圖上的螺線選一點
sOA = Segment(O,A)
B= Point(sOA) # 並將 O 移動內(nèi)圈螺線上
sOB = Segment(O,B)
b = sOA/sOB
loop = 3
aA = angle(A)+loop*2pi
a =?sOA/(b^(aA/(2*pi)))
cA= Curve( (a*b^(t/(2*pi));t),t,0,aA )
任務(wù)四:螺線的內(nèi)部圓弧

說明:為了繪製內(nèi)部的螺紋,需在螺紋上建立一個點。此時用圓弧工具連接 A,C,B 就可以出現(xiàn)第一個圓弧。
要建立多個圓弧,先用序列取得螺線上的點。首先,先數(shù)出一圈約有 m=16 個螺紋。因此,一圈有 n=16*loop-1 的螺紋。因此,將曲線 cA 的範圍分割為 n 段。要取得這圓弧兩端點 As,Bs 可用 Sequence( cA(t aA/n), t,?m+1, n ) 以及Bs = Sequence( cA(t aA/n), t, 1, n-m ) 。
接著再利用 ?C 來建立圓弧的第三個點。先取得過 C 的等角螺線。因此,先計算?aC = angle(C)+2*pi*loop,c =?Segment(O,C)/(b^(aC/(2*pi)))。此時就可得過 C 的等角螺線?cC=Curve( (ac*b^(t/(2*pi)) ; t), t, 0, aC)。
接著建立 cC 上的分割點,參照先前的任務(wù),建立 Cs= Sequence( cC(t* aC/n), t, m+1, n )。再利用 zip 來建立多個圓弧。
操作步驟:
# m 為一圓周內(nèi)出現(xiàn)的圓弧數(shù)量,利用這個建立圓弧兩端的點列As,Bs
m=16
n=m*(loop+0.5)-1
As = Sequence( cA(t aA/n), t,?m+1, n )
Bs = Sequence( cA(t aA/n), t, 1, n-m )
#先標示一點 C ,并借此建立弧上點列Cs,來建立圓弧列
aaC?= angle(C)+loop*2pi
c?= Segment(O,C)/(b^(aC/(2*pi)))
cC= Curve( (c*b^(t/(2*pi)) ; t), t, 0, aC)
Cs= Sequence( cC(t* aC/n), t, m+1, n )
cs = zip(CircumcircularArc(a,c,b), a, As, c,Cs,b,Bs )
#建立滑條條讓圖形依次出現(xiàn)
fcs=slider(1,10,1,1,100)
Fcs=First(cs,fcs)
s=slider(0,1,0.01,1,100)
sCs=Curve(cA(t),t,0,s*aA)
小結(jié)
本節(jié)主要認識極座標方程的使用。通過極座標方程來繪制圓狀的曲線。
除了極座標方程外,最有趣的還是在于問題的拆解,從一個圖片嘗試去解構(gòu)其數(shù)學(xué)的結(jié)構(gòu)。除了這個范例,這邊也在附上另外一個螺線圖。鼓勵大家多做這些嘗試,會更加活化應(yīng)用數(shù)學(xué)語言的能力。

【GGB】https://www.geogebra.org/m/dvs8nhxf
【Bili】https://www.bilibili.com/video/bv1w5411w74f
【youtube】https://www.youtube.com/playlist?list=PLXH05kw-i_5IsMozVV-Lbw7oahYCQlgRl