虛數到底有什麼意義?從 i 說起

2021-09-17 21:53:55 字數 1934 閱讀 7255

有人在stack exchange問了乙個問題:

"我一直覺得虛數(imaginary number)很難懂。中學老師說,虛數就是-1的平方根。

可是,什麼數的平方等於-1呢?計算器直接顯示出錯!

直到今天,我也沒有搞懂。誰能解釋,虛數到底是什麼?它有什麼用?"

下面,我就用自己的語言,講述我所理解的虛數。

什麼是虛數

首先,假設有一根數軸,上面有兩個反向的點:+1和-1。

這根數軸的正向部分,可以繞原點旋轉。顯然,逆時針旋轉180度,+1就會變成-1。

這相當於兩次逆時針旋轉90度。

因此,我們可以得到下面的關係式:

(+1) * (逆時針旋轉90度) * (逆時針旋轉90度) = (-1)

如果把+1消去,這個式子就變為:

(逆時針旋轉90度)^2 = (-1)

將"逆時針旋轉90度"記為 i :

i^2 = (-1)

這個式子很眼熟,它就是虛數的定義公式。

所以,我們可以知道,虛數 i 就是逆時針旋轉90度,i 不是乙個數,而是乙個旋轉量。

複數的定義

既然 i 表示旋轉量,我們就可以用 i ,表示任何實數的旋轉狀態。

將實數軸看作橫軸,虛數軸看作縱軸,就構成了乙個二維平面。旋轉到某乙個角度的任何正實數,必然唯一對應這個平面中的某個點。

只要確定橫座標和縱座標,比如( 1 , i ),就可以確定某個實數的旋轉量(45度)。

數學家用一種特殊的表示方法,表示這個二維座標:用 + 號把橫座標和縱座標連線起來。比如,把 ( 1 , i ) 表示成 1 + i 。這種表示方法就叫做複數(complex number),其中 1 稱為實數部,i 稱為虛數部。

為什麼要把二維座標表示成這樣呢,下一節告訴你原因。

虛數的作用:加法

虛數的引入,大大方便了涉及到旋轉的計算。

比如,物理學需要計算"力的合成"。假定乙個力是 3 + i,另乙個力是1 + 3i ,請問它們的合成力是多少?

根據"平行四邊形法則",你馬上得到,合成力就是( 3 + i ) + ( 1 + 3i ) = ( 4 + 4i )。

這就是虛數加法的物理意義。

虛數的作用:乘法

如果涉及到旋轉角度的改變,處理起來更方便。

比如,一條船的航向是3 + 4i 。

如果該船的航向,逆時針增加45度,請問新航向是多少?

( 3 + 4i ) * ( 1 + i ) = ( -1 + 7i )

所以,該船的新航向是-1 + 7i。

如果航向逆時針增加90度,就更簡單了。因為90度的航向就是 i ,所以新航向等於:

( 3 + 4i ) * i = ( -4 + 3i )

這就是虛數乘法的物理意義:改變旋轉角度。

虛數乘法的數學證明

為什麼乙個複數改變旋轉角度,只要做乘法就可以了?

下面就是它的數學證明,實際上很簡單。

任何複數 a + bi,都可以改寫成旋轉半徑 r 與橫軸夾角 θ 的形式。

假定現有兩個複數 a + bi 和 c + di,可以將它們改寫如下:

a + bi = r1 * ( cosα + isinα )

c + di = r2 * ( cosβ + isinβ )

這兩個複數相乘,( a + bi )( c + di ) 就相當於

r1 * r2 * ( cosα + isinα ) * ( cosβ + isinβ )

展開後面的乘式,得到

cosα * cosβ - sinα * sinβ + i( cosα * sinβ + sinα * cosβ )

根據三角函式公式,上面的式子就等於

cos(α+β) + isin(α+β)

所以,( a + bi )( c + di ) = r1 * r2 * ( cos(α+β) + isin(α+β) )

這就證明了,兩個複數相乘,就等於旋轉半徑相乘、旋轉角度相加。

虛數的意義,虛數到底是什麼

四軸飛行姿態的解算需要用到虛數 四元數,無奈重溫高等數學,betterexplained上面有關於虛數的非常好的解釋,很淺顯易懂,轉給大家參考。四軸飛行姿態的解算需要用到虛數 四元數,無奈重溫高等數學,betterexplained 上面有關於虛數的非常好的解釋,很淺顯易懂,轉給大家參考。這個 有一...

複數乘法 數學當中的複數到底有啥意義?

有人在stack exchange問了乙個問題 我一直覺得虛數 imaginary number 很難懂。中學老師說,虛數就是 1的平方根。可是,什麼數的平方等於 1呢?計算器直接顯示出錯!直到今天,我也沒有搞懂。誰能解釋,虛數到底是什麼?它有什麼用?下面,我就用自己的語言,講述我所理解的虛數。一 ...

從程式設計角度看B S C S到底有什麼不同

本文 網上人云亦云的東西就不重複了,沒有價值,這裡只談幾個對設計程式很關鍵的幾個區別。1使用的技術不同 2速度不同 3安全性要求不同 1使用的技術不同 b s前台使用css,html,js,c s就沒有這些概念。所以使用css,html,js的都是b s的系統,當然那些在c s中嵌入瀏覽器核心的東西...