Matlab 其實具備一般工程型計算器該有的基本功能, 這包括任意計算次方、指數與對數函數、三角與反三角函數、雙曲與反雙曲函數。 這裡我們介紹三角與反三角函數。
六個三角函數在 Matlab 中對應的函式是
正弦 | sin( ) | 餘弦 | cos( ) |
---|---|---|---|
正切 | tan( ) | 餘切 | cot( ) |
正割 | sec( ) | 餘割 | csc( ) |
sin(0)是 0,而
sin(3.1416)是 -7.3464e-06,那幾乎是 0,因為 3.1416 幾乎是圓周率。 讀者亦可實驗
cos(3.1416)看到答案幾乎是 -1。Matlab 並不提供角度量的三角函數, 使用者必須自行轉換。
Matlab 提供一個函式 (而非常數),用來計算圓周率的值。 它就叫做 pi。雖然您下指令
pi仍然得到 3.1416 但是它在機器內部是一個更準確的值,因此
sin(pi)得到 1.2246e-16,更幾乎是正確答案 0 了, 而它之所以不是零,又是「數值計算無可避免的誤差」在作怪。不過
cos(pi)真的是 -1,而
sin(pi/2)真的是 1。
六個反三角函數在 Matlab 中對應的函式是
反正弦 | asin( ) | 反餘弦 | acos( ) |
---|---|---|---|
反正切 | atan( ) atan2( ) | 反餘切 | acot( ) |
反正割 | asec( ) | 反餘割 | acsc( ) |
例如
asin(1)得到 pi/2 而
acos(sqrt(3)/2)得到 0.5236,也就幾乎是 pi/6,都是可預期的。 讀者亦可實驗
asin(2)看看結果。
反正切函式有兩種,這符合工程師的工作習慣。 一種是 atan( ) 就如大部分數學課本上所述,它取值任意實數, 而計算出來的結果介於 -pi/2 與 pi/2 之間。
atan(1)得到近似 pi/4 的結果,而
atan(-10000)得到近似 -pi/2 的結果。
另一種反正切函式是 atan2( ),它需要兩個輸入值。 若輸入 atan2(y,x) 則 Matlab 計算平面上 (x,y) 點與原點所連之線段和 x 軸的夾角, 或者說是 x + yi 這個複數與實軸的夾角,此夾角以 -pi 到 pi 之間測量。例如
atan2(1, 1)得到 pi/4,而
atan2(-1, 1)因為 (-1,1) 在第四象限所以得到 -pi/4,但
atan2(-1, -1)在第三象限而得到 -(3/4)*pi。
習題