當前位置:首頁 > 教育 > 正文

行列式的本質是解決什麼問題?現實本質是什麼?

本文較為硬核,請酌情跳過部分内容。

如果你真想知道行列式(以及矩陣)究竟是在說什麼,我建議你看完全文。

行列式的本質其實很直觀,先說一下結論,行列式的本質是體積

至于是什麼的體積?

請往下看。

從線性空間談起

對一些讀者來說,理解行列式的意義需要重塑對線性代數的整體認知,所以我要先介紹一下線性代數的“正确打開方式”。

大部分線性代數教材都把線性方程組放在第一位,但我認為線性代數應該從線性空間講起。

線性空間也叫向量空間,之前學過線性代數的人可能會覺得這是個非常複雜的概念,但其實線性空間很簡單,最典型的線性空間就是我們熟悉的三維空間

或許我應該從更簡單的一維空間談起,它也是一種線性空間。

一條直線其實就是一個一維空間,直線上有無窮多個點,或者說直線是由無窮多個點組成的

類推下去,二維空間、三維空間、更高維的線性空間也都是由無窮多個點組成的,或者說:線性空間是點的集合

一些讀者可能會反駁道:

線性空間明明是滿足8條運算定律的向量的集合,怎麼能說成是點的集合?

這其實就涉及到我們對向量的理解了,什麼是向量?

是有大小和方向的量嗎?

不是,尤其是在線性代數中,一定要注意:向量是滿足8條運算定律的量,它不需要有方向,也不需要有大小

點,就是最直觀的例子。沒錯,點也是向量。其實這很好理解,當我們用坐标去表示向量(暫且看成有大小和方向的量)的時候,用的方法是一樣的。

對于向量這個概念,重要的不是它究竟是什麼,而是它滿足的運算定律是什麼,也就是前文提到的8條運算定律:

這8條運算定律其實都很簡單,就是我們熟知的那種有大小和方向的量的運算定律。

隻要滿足這8條運算定律,那就是向量。這會導緻函數也是一種向量,引出非常豐富的内容,在本文中就不多提了。

“基”與“坐标”

雖然向量不是有大小和方向的量,但是“有大小和方向的箭頭”的圖景可以幫助我們理解向量的性質,所以我們可以暫時把下文中的向量看成是“有大小和方向的箭頭”。

接下來就是重頭戲了,我們需要知道如何描述向量。很多人都知道可以用一組坐标去描述向量,就像下面這樣:

但是,僅僅靠坐标還不足以描述向量,因為坐标系有很多種,一組坐标在不同的坐标系中表示的向量是不同的,就像下面這樣:

所以,在我們用一組坐标表示向量的時候,一定要知道使用的是什麼坐标系。在線性代數中,用“基”表示坐标系,“基”其實也是向量,可以稱為基向量

理解基向量需要重新認識坐标系,我們通常對向量的坐标表示的看法是:

  • 把一個向量沿坐标軸方向分解,或者是把一個向量投影到坐标軸上,向量在坐标軸上的投影的長度就是坐标。

現在我們要放棄上面這種看法,轉而用基向量去重新理解坐标,每一種坐标系都有特定的基向量。

向量的坐标表示其實是:

  • 把一個向量表示成基向量的線性組合
  • 所謂的“線性組合”其實就是乘以一個常數(向量的數乘)以後再相加(向量的加法)。

這種方法其實就是把基向量伸縮以後再首尾相連,“伸縮”就是向量的數乘,“首尾相連”就是向量的加法,伸縮的系數就是坐标

也就是說,完整描述一個向量需要“基向量”和“坐标”,這二者缺一不可。很多人對于向量的印象僅僅隻是“坐标”,而忽略了“基向量”,這正是理解行列式的一個障礙,所以我一定要事先強調“基向量”的重要性。

在這裡就會出現一個很少有人明确告訴初學者的規則,基向量也是向量,描述基向量也需要“基向量”和“坐标”。這時就會出現“無限套娃”的情況(基向量一層一層套下去),為了防止這種“無限套娃”,線性代數默認:

  • 描述基向量基向量是直角坐标系的基向量

這可能有點繞,不過我相信大家都能理解它。

也就是說線性代數有一個默認的“背景”,這個“背景”是直角坐标系,在這個“背景”中構建出基向量,再用基向量的線性組合去表示一般的向量。

這是理解行列式必不可少的一環,我必須提前說清楚。

“基變換”與“坐标變換”

  • 不同的坐标系有不同的基向量.
  • 同一個向量在不同坐标系中有不同的坐标。

上文的關鍵内容其實就是這兩句話。

變換是連接不同坐标系的橋梁,也就是把一個坐标系變換到另一個坐标系。這種變換包括兩部分:

  • 基變換
  • 坐标變換

我們可以用一個簡單的旋轉變換看出它們之間的關系:

也就是說:基變換和坐标變換是反着的,專業一點的說法是它們互為逆變換

上面的例子其實是線性變換,也是線性代數中讨論的變換。之所以說稱其為“線性變換”是因為:

  • 新的基向量是舊的基向量的線性組合。
  • 新的坐标是舊的坐标的線性組合。

到了這一步,才算是碰到了理解行列式的門檻。

矩陣的意義

矩陣和行列式很像,事實上行列式就是對矩陣進行一套運算之後的結果,所以在理解行列式之前需要先了解矩陣。

上面的旋轉變換還可以寫成這種形式:

也就是說,矩陣其實就是線性變換的一種表現形式。

不過僅僅對矩陣理解到這個程度還不夠,根本不足以進一步理解行列式,想要加深理解就需要先運用一下矩陣,比如用矩陣表示“基變換”和“坐标變換”:

讓我們把重點放在“基變換”上面,“基變換”其實就是把新的基向量表示成舊的基向量的線性組合。相應的,矩陣中每一列的元素都是一個新的基向量的坐标。

這也就是說,矩陣也是一組向量的坐标,更準确地說是:一組基向量在另一組基向量中的坐标。

“線性變換”和“一組向量的坐标”其實是一回事,它們都是矩陣的意義。

(确實也可以簡單地說:矩陣就是一組向量。這可能是一個顯而易見的結果,不過簡單地觀察矩陣與向量的形式得到這個結論,和經過“基變換”得到這個結論相比,對結論的理解可遠遠不在一個檔次上。)

行列式的意義

現在,終于可以正式談論行列式的意義了。

前面說過:

  • 行列式就是對矩陣進行一套運算之後的結果。
  • 矩陣是一組基向量在另一組基向量中的坐标。

将它們綜合之後,大家就可以理解行列式的意義了。

行列式是一組基向量構成的圖形的“體積”,行列式的計算方法就是計算“體積”的方法。

基向量構成圖形的方法其實很簡單,兩個基向量構成的圖形就是平行四邊形,三個基向量構成的圖形就是平行六面體。

之所以統一用“體積”這個詞,而不用“面積”這個詞,是因為線性代數研究的向量是任意的n維空間中的向量,基向量構成的圖形也是任意的n維空間中的圖形,所以用“體積”這個詞更合适。

考慮到基向量是“單位向量”,所以行列式表示的“體積”也是“單位體積”,或者說是“體積元”。

(當然,這裡說的“體積”和我們熟悉的那個體積還是有些不同的,因為這裡說的“體積”是有方向的,這和行列式的計算方法有關。至于計算行列式的方法到底是怎麼來的,這就有些麻煩了,本文就不介紹了。)

行列式的用處

知道了行列式是體積元,其實就已經可以想到很多用處了。由于筆者隻對物理學有所了解,所以想到的用處基本上都在物理學裡,比如廣義相對論裡面會經常用到體積元。歡迎大家在評論區裡補充其它用處。

在線性代數裡面,行列式通常是用于判斷一個矩陣是否有逆矩陣。如果一個矩陣的行列式等于0,就說明這個矩陣沒有逆矩陣。

逆矩陣很好理解,在前面提到的旋轉變換裡面,表示順時針旋轉的矩陣的逆矩陣就是表示逆時針旋轉的矩陣。

一個矩陣存在逆矩陣其實就是說:矩陣表示的線性變換是可逆的,也就是在變換之後,還可以用逆變換變回原樣。

至于這和體積有什麼關系?

依然可以用基向量理解,線性變換是聯系兩組基向量的橋梁,一個線性變換(“基變換”)存在逆變換其實就是說:兩組基向量都可以表示成對方的線性組合。

理解這些内容隻需要看一張圖片:

如果一組基向量在線性變換之後發生了“降維”,那麼新的基向量就無法表示更“高維”的原本的基向量,這就說明這個線性變換沒有與之對應的逆變換。

你可能想看:

有話要說...

取消
掃碼支持 支付碼