The Nature of Code閱讀心得與Python實作:3.3 Trigonometry Functions

The Nature of Code閱讀心得與Python實作:3.3 Trigonometry Functions

更新於 發佈於 閱讀時間約 1 分鐘

這一節主要在談三角函數和向量的分量、角度間的關聯性。這個關聯性在向量的應用上,非常重要。先來看看三角函數的定義。

如下圖中的直角三角形,斜邊、對邊、鄰邊的長度分別是$a、b、c$,有一個內角,角度是θ。

raw-image

三角函數共有六個,其中三個是比較會用到的,它們的定義是:

  • 正弦函數sinθ = b / a
  • 餘弦函數cosθ = c / a
  • 正切函數tanθ = b / c

接下來,就從下面這張圖來看看,向量和三角函數之間,究竟有什麼關聯。

raw-image

從圖可以看出,向量v及兩個分量vx和vy,剛好會構成一個直角三角形,而v的方向角度,就是直角三角形的一個內角。所以,從這裡我們就可以得到,向量的角度和三角函數之間有這樣子的關聯:

tanθ = vy / vx


avatar-img
ysf的沙龍
15會員
140內容數
寫點東西自娛娛人
留言
avatar-img
留言分享你的想法!
ysf的沙龍 的其他內容
這一節要模擬的是擺(pendulum)這個裝置中,構造最簡單、具有理想化性質的單擺(simple pendulum)。
我們曾經利用sin函數來模擬彈簧吊錘(bob)的運動,雖然這樣子的做法程式很容易寫,但是卻沒辦法模擬彈簧吊錘受到如風力、重力等環境中其他作用力的影響下,在空間中的運動狀況。要克服這樣子的問題,就不能再倚靠sin函數,而必須改用能夠用來計算彈簧彈力的虎克定律(Hooke's law)。
在x軸上依序取一些點,然後把這些點以及其對應的sin函數的值所構成的二維座標點畫出來時,就可以看到由這個sin函數所產生的像波一樣的圖案,也就是波型(wave pattern)。不同樣式的波型,可以用來設計生物的軀幹或肢體,也可以用來模擬像水這類柔軟的表面。
這一節要模擬的是擺(pendulum)這個裝置中,構造最簡單、具有理想化性質的單擺(simple pendulum)。
我們曾經利用sin函數來模擬彈簧吊錘(bob)的運動,雖然這樣子的做法程式很容易寫,但是卻沒辦法模擬彈簧吊錘受到如風力、重力等環境中其他作用力的影響下,在空間中的運動狀況。要克服這樣子的問題,就不能再倚靠sin函數,而必須改用能夠用來計算彈簧彈力的虎克定律(Hooke's law)。
在x軸上依序取一些點,然後把這些點以及其對應的sin函數的值所構成的二維座標點畫出來時,就可以看到由這個sin函數所產生的像波一樣的圖案,也就是波型(wave pattern)。不同樣式的波型,可以用來設計生物的軀幹或肢體,也可以用來模擬像水這類柔軟的表面。