發刊日期 |
2023年12月
|
---|---|
標題 | 四維空間物件初探在數學算板中的實踐 |
作者 | |
關鍵字 | |
檔案下載 | |
全文 |
一、四維空間簡介本文所討論的四維空間, 並非愛因斯坦所述的時空(spacetime), 而是一般化的歐氏四維空間。 時空是更複雜具有敏可斯基 (Minkowski) 特性的四維空間, 具有三個互相垂直的空間軸 ($x,y,z$ 軸), 外加一個時間軸 ($t$ 軸), 但時間軸與其他三軸並非等價的。 歐氏四維空間是由等價且兩兩互相垂直的四個軸 ($x,y,z,w$ 軸) 構成的。 (1) 空間的維度擴展相異兩點 $O,X$ 可構成一條直線, 這直線就是我們的一維空間, $O$ 稱為原點, $\overleftrightarrow{OX}$ 稱為 $x$ 軸, 我們以一個數($x$)表示一維空間中的一個點。 過 $O$ 作 $\overleftrightarrow{OX}$ 的垂直線 $\overleftrightarrow{OY}$ , 我們就得到一個平面, 這個平面就是我們的二維空間, $\overleftrightarrow{OY}$ 直線稱為 $y$ 軸, 這個平面稱為 $XY$ 平面, 我們以有序數對 $(x,y)$ 代表二維空間中的一個點。 經過 $O$ 點作平面的垂直線 $\overleftrightarrow{OZ}$, 我們就得到一個三維空間, $\overleftrightarrow{OZ}$ 稱為 $z$ 軸, 這個三維空間稱為 $XYZ$ 空間, 我們以三個有序數 $(x,y,z)$ 代表三維空間中的一個點。 以類似的想法, 若我們作出 $XYZ$ 空間中三軸的共同垂直線 $\overleftrightarrow{OW}$, 我們就可以得到四維空間, 稱為 $XYZW$ 空間, $\overleftrightarrow{OW}$ 稱為 $w$ 軸。 此時, 我們以四個有序數 $(x,y,z,w)$ 代表四維空間中的一個點。 這樣的過程, 我們稱為維度擴展。 設 $R$ 為實數集合, 令 $R^4=\{(x,y,z,w)\mid x,y,z,w\in R\}$ 表示一個四維空間的點集合。 $O(0,0,0,0)$ 為原點, $\overleftrightarrow{OX}$, $\overleftrightarrow{OY}$, $\overleftrightarrow{OZ}$, $\overleftrightarrow{OW}$, 為其互相垂直的四軸。 因此, 在四維空間中, $XY,XZ,XW,YZ,YW,ZW$ 是由坐標軸構成且互相垂直的六個平面。 $R^4$ 的部分集合稱為 4D 空間物件。 $R^4$ 中兩點 $A(x_1,y_1,z_1,w_1)$, $B(x_2,y_2,z_2,w_2)$, 的距離定義為 $AB=\sqrt{(x_1\!-\!x_2)^2+(y_1\!-\!y_2)^2+(z_1\!-\!z_2)^2+(w_1\!-\!w_2)^2}$, $\overline{AB}$ 的中點坐標為 $\Big(\dfrac{x_1+x_2}2,\dfrac{y_1+y}2$, $\dfrac{z_1+z_2}2,\dfrac{w_1+w_2}2\Big)$。 類似三維空間, 設 $a,b,c,d,e\in R$, $a,b,c,d$ 不全為 0, 我們稱 $\{(x,y,z,w)\mid ax+by+cz+dw=e, x,y,z,w\in R\}$ 為 $R^4$ 上的一個體或超平面 (hyperplane), $ax+by+cz+dw=e$ 就是它的方程式。 它其實就是一個三維空間, 因此 $w=0$ (或 $x=0 $, $y=0$, $z=0$), 就是通過原點的三維空間方程式, 分別就是三軸 $xyz$ (或 $yzw,xzw,xyw$) 構成的三維空間。 類似三維空間的球面, 我們可以定義四維空間半徑為 $r$ 的球面方程式為 $(x-x_0)^2+(y-y_0)^2+(z-z_0)^2+(w-w_0)^2=r^2 $, 其中 $(x_0,y_0,z_0,w_0)$ 為球心。 那四維空間的圖形應該怎麼畫呢? 我們以 $n$-cube ($n$ 維正方體) 為例說明之。 (2) 維度類推 (dimensional analogy)圖 1 展示點、 線段、 正方形、 正方體的圖形, 數學家將這些圖形稱為 $n$-cube ($n$ 維正方體), 那 4-cube 的圖形應該是怎樣的呢?
圖2展示的就是透過「垂直」平移, 由點變成線段, 由線段變成正方形, 再由正方形變為正方體, 然後仿照前述過程將正方體垂直平移而得 4-cube 的圖形, 圖中的箭頭表示平移的方向。 在前述平移過程中, 由於我們生活在三維空間, 熟悉三維事物, 因此, 不論圖形平移的方向及大小如何, 仍能想像它是正方形、 正方體。 這樣透過低維度物件推想高維度的物件狀態的方法, 稱為維度類推。 依此, 我們也很容易推求更高維正方體的圖形展示法。 5-cube 的圖形就是將圖2右圖整體向某一方向平移後, 再連接對應的點成線段而得的圖形。
維度類推也可以幫助我們由前一維度正方體推求次一維度正方體的構成成分。 我們將四維空間物體構成成分稱為點 (points)、 線 (edges)、 面 (faces)、 胞 (cells), 四維空間多面體稱為多胞體 (polychron), 是由定數量前述構成成分組成的。 「胞」指的就是三維多面體 (polyhedron)。 4-cube, 就是四維正方體或正方胞體 (tesseract)。 由於垂直平移時, 全部構成成分都會加倍, 而「點」平移會掃出線段, 「線段」平移會掃出面, 「面」平移會掃出胞, 「胞」平移會掃出胞體, 因此要算出某構成成分之數量, 只要將前一層次構成成分數量的兩倍加上平移「掃出」的成分數量, 就是該構成成分的數量。 圖 3 展示 0-5 維正方體構成成份數量的推求表格。 透過維度類推推出 $n$-cube 圖形及構成成分數量, 參看動態影片 1 。
就生活在三維空間中的人類來說, 事實上我們無法看到或真正作出一條直線同時垂直於三維空間的 $x,y,z$ 三軸, 四維空間是我們根據一維推廣至二維, 再由二維推廣至三維的經驗, 類推由三維推至四維而得。將較低維度的幾何原理或方法運用到較高維度中, 是探索四維空間物件很重要的一個方法。 我們雖然無法真正看到四維空間物件, 但透過維度類推, 我們也可以對四維空間物件性質加以推測探討。 再看看圖 2 的圖形, 其實他們都是二維圖形, 我們能將平面物件想像成三維物件, 其實是將三維物件投影至二維平面, 這個「投影」就是我們下面要討論的主題。 (3) 物件的投影 (projection)人類雖然是生活在三維空間中, 但人類的視網膜卻是二維的, 因此, 我們看到的三維物件, 實際上是二維的, 我們看不見物件被前面部分遮蔽的背面, 但透過觀察者前後、 上下、 左右的位置移動, 我們可以想像理解該物件, 例如一個正方體有 8 頂點、 12 稜、 6 個面。 當我們用螢幕畫面展示三維物件時, 其實我們是將物件投影至螢幕平面上。 這個投影而得, 畫在平面上的物件, 透過透視畫圖 (perspective drawing)、 光線明暗 (shading) 的呈現、 物件的移動 (motion)、 物件的部分遮蔽 (occlusion)、 物件的格線或紋理結構 (texture)、 以及我們對空間物件的熟悉度 (prior knowledge), 我們能在腦中將該平面物件想像成一個空間物件。 也就是說, 我們是用三維物件的二維投影來展示該三維物件。 本質上來說, 三維空間物件在平面上的投影可分為兩類: 透視投影 (perspective projection) 與平行投影 (parallel projection)。 透視投影有一個不在投影平面 $E$ 上的點 $V$, 稱為透視中心 (投影中心、 光源), $E$ 稱為投影平面。 設 $P$ 為物件上的任一點, 射線 $\overrightarrow{VP}$ 與平面 $E$ 交於點 $P'$, 這個射線稱為投影線, $P'$ 稱為點 $P$ 的投影點, 所有 $P'$ 點就構成了物件的投影像。 平行投影其實就是將透視投影的透視中心看成無限遠點而得的投影, 此時的投影線就是平行線。 當這些平行線都與平面垂直時, 此投影稱為垂直投影 (orthographic projection), 若不垂直時, 稱為斜投影 (oblique projection)。 圖 4 展示的就是這三類投影。 圖 4 中物件介於投影中心與投影平面之間。 物件可在投影平面與投影中心之間, 投影平面也可以在投影中心及物件之間, 甚至與投影平面相交。
以一個多面體外部的任一點為投影中心, 將多面體的框架 (邊), 作投影得到的圖形, 稱為施萊格圖 (Schlegel diagram)。 圖 5 展示的是正方體的框架投影像 (沒有呈現投影射線), 其實「框架」 (線段的組合) 都在淡青色平面上是個平面圖形, 但我們可以將「框架」想像成立體, 若將面塗色就可得出正方體投影像。
同樣的, 我們想探討四維物件, 我們可以將四維物件投影至三維空間, 來觀察該物件, 甚至將該物件的三維投影, 再次投影至平面上, 得到平面投影物件後, 再作觀察研究。 數學算板 (參看 https://mathboard.tw ) 的四維空間環境, 呈現四維空間物件, 主要就是作出它在三維空間的施萊格圖。 數學算板的施萊格框架圖, 邊的繪製是以其中點的 $z$-order來決定先後的, 有時會以管狀的形式呈現, 方便觀察邊的前後。 將三維空間上的點 $P(x,y,z)$, 平行於 $z$ 軸垂直投影至 $XY$ 平面上, 其投影點是 $P'(x,y,0)$, 同樣的, 將四維空間上的點 $P(x,y,z,w)$ 平行於 $w$ 軸垂直投影至三維空間 $XYZ$ 上, 其投影點是 $P(x,y,z,0)$。透視投影較為複雜, 圖 6 展示三維空間 $XYZ$ 中, 以 $R(0,0,r)$ 為透視中心, 將 $P(x,y,z)$ 點投影至 $XY$ 平面上 $P' (x',y',z')$ 點的坐標關係圖,其中 $Q$ 為 $P$ 在 $XY$ 平面上的垂足。 由此圖可以看出 $\frac{r-z}r=\frac{OQ}{OP'}=\frac{y}{y'}=\frac{x}{x'}$, 因此 $x'=\frac{r}{r-z}x$, $y'=\frac r{r-z}y$。
同理, 四維空間 $XYZW$ 的點透視投影至三維空間時, 若透視中心為 $R(0,0,0,r)$, 將四維空間上的點 $P(x,y,z,w)$ 投影至 $XYZ$ 三維空間 ($w=0$), 此時, 我們會有 $x'=\frac{r}{r-w}x$, $y'=\frac r{r-w}y$, $z'=\frac{r}{r-w}z$ (Banks, 1994)。 是數學算板四維空間將點透視投影至三維空間時使用的公式, 若 $r=w$, 則 $P'$ 點就在無限遠處, 此時可修改投影中心 $R$ 的 $r$ 值, 使 $r\not=w$。 基本來說, 投影會將直線投影成直線。此外, 透視投影有兩個特性。 (a) 透視遠端壓縮 (perspective foreshortening) --- 透視遠端壓縮會令遠端物件的長度壓縮, 距離透視中心愈遠的物件, 投影之後圖像顯得愈小, 反之愈大。 事實上, 一線段若與投影面平行, 則線段影像的長短與透視中心至線段的距離成反比例。 (b) 與透視平面不平行的平行線組會交於一點 --- 任一組與透視平面不平行的平行線, 投影之後得到的直線都交於一點, 此點稱為消逝點 (vanishing point)。 此外, 我們也容易看出透視投影是多對一的對應。 圖 7 展示的是一個 3D 正方體框架的透視投影平面, 其中紅色及綠色平行線在平面上分別各交於一點, 藍色線也交於一點但圖 4 並未展示出來, 而框架的線段距離觀察者愈遠, 長度愈短。
對垂直投影而言, 平行線投影後仍是平行線, 等長的平行線段在垂直投影後仍等長。 圖 8 展示一個正方體框的垂直投影。 此時, 正方體框展示的平行線段長度都相同, 且對邊都平行。
圖 9 展示的是一個球心為原點的球, 以球的北極 $R(0,0,r)$ 為透視中心, $XY$ 平面 ($z=0$) 為投影平面, 取球上一點為「北極點」, 當作投影中心, 將球面上的點 透視投影至 平面上, 稱為極球平面投影 (Stereographic Projection) 是數學上應用很多的投影, 可將球面上的點投影至平面上, 且會將球面上的圓投影到平面上的圓或直線。 球面上的經線(meridian)投影至平面上過原點的直線, 球面上的緯線(latitude), 投影至以原點為圓心的圓上。 它也是一個保角變換 (conformal mapping)。 這個極球平面投影是球面除北極點外, 與 $XY$ 平面的一對一且映成的對應, 下半球面上的點對應於赤道圓內部, 上半球面上的點 (除北極點外) 對應至赤道圓外部, 赤道圓的點是不變點, 對應到自己。 若球半徑 $r=1$ 且將北極點對應至平面上的無限遠點, $XY$ 平面看成加入無限遠點的延伸複數平面 (extended complex plane), 這個球面就是黎曼球面 (Riemann Sphere), 是延伸複數平面的球面表示法。 此時極球平面投影就是一對一映成的變換, 其反變換就是極平面球變換, 「極」表示球的北極點。
圖 10 展示黎曼球面與延伸複數平面的對應, 北極為無限大點, 南極為 0, 兩條子午線為兩軸, 赤道為單位圓。 長方形與四個大圓弧對應。
數學算板可將三維球面多面體 (spherical polyhedron), 作極球平面投影, 圖 11、 圖 12 展示的是數學算板中球面正十二面體在平面上的投影, 球面點與平面點的顏色亦互相對應, 圖 11 的投影以球心為原點, 水平線為 $x$ 軸, 鉛直線為 $y$ 軸, 垂直畫面的直線為 $z$ 軸 (向外為正向)。 圖 11 投影面 ($z=0$) 在球下方, 圖 12 將投影面置於右方, 並作定比率的縮小。 也有人將平面 $z=-1$ 作為投影平面, 此時投影公式就略有不同。 數學算板程式有提供投影平面為 $z=0$ 及 $z=-1$ 的選項。 球面正十二面體極球平面投影, 參看動態影片 2 。
數學算板的四維多面體 (多胞體) 投影至三維時, 並不使用極球平面投影 (因為若四維多面體頂點都在球面上時, 邊上的非端點, 就不在該球面上), 而是一般的中心透視投影, 中心 $(0,0,0,r)$ 在 $w$ 軸上, $r$ 的值有時會隨物件的大小變動。 由於弧的投影計算較為複雜, 目前我們並不作四維「球面」多面體的投影。 但若四維多面體的頂點在四維球面上時, 我們會使用球北極 $(0,0,0,r)$ 為透視中心, 其中 $r$ 為球面半徑 (若有頂點投影至無限遠點時, 我們可改取適當的 $r$ 值)。 注意: 投影中心不同時, 所得的投影圖形就會不同。 極球平面投影在四維空間及在其中的三球面 (3-sphere) 的投影上有十分重要的功能, 圖 13 是球面上 5 葉正弦曲線 (右圖) 上的點纖維化後, 在三維空間投影的圖片 (左圖)。 這個霍普夫纖維化 (Hopf fibration) 投影在數學算板中的探索及實踐, 我們將另文討論。
(4) 物件的截面(plane cross section)研究物件形狀時, 除了降維投影之外, 有時我們也會觀察物件的截面。 在 3D 空間中, 截面就是平面與 3D 物件的交集。 截面會因平面與物件的位置與方向而有不同。 數學算板對所提供的三維多面體, 大部分都可以觀察其截面, 通常都是以固定平面, 固定物件的方向, 然後以平面的法線方向來移動平面或物件, 再觀察兩者的交集。 圖 14 展示的就是一個正方體的截面觀察的程式。 圖中包含兩個坐標系, 截面所在坐標系 (主坐標系) 及正方體所在坐標系, 可上下移動截面 (左方點為控制點), 也可以按 Shift 鍵, 上下移動正方體中心點, 以便上下移動正方體 (不按 Shift 時, 可水平移動物件), 或直接旋轉正方體, 觀察不同位置與方向時的截面, 右方則為利用「留痕跡」按鈕, 截面的累積圖。 從截面觀察物體的形狀, 就像「瞎子摸象」一樣, 因截面太多, 且截面物件為二維的物件, 從個別或少數截面要推論正方體的形狀十分不易, 只有堆疊所有的截面後, 才能看出正方體的某個形狀。數學算板正方體截面, 參看動態影片 3 。
圖 15 左方展示的是球的截面, 右方則為將若干截面累積而得的圖形, 可看出球的形態。
在四維空間中, 我們也同樣可以觀察4維物件的三維截「體」, 截體是指 4 維物件與 4 維空間超平面的交集。 我們後面會討論 (以原點為中心) 正方胞體與 4 維空間超平面 ($w=0$) 的截體 (3 維的多面體)。 (5) 物件的旋轉(rotation)一般來說, 平面上的旋轉變換是指以一點為中心, 平面上的所有的點繞此中心作圓周運動, 此時, 旋轉中心是變換的固定點, 「旋轉的平面」就是此平面。 3D 空間上的旋轉是指以一條直線為軸, 空間上的點繞此軸而做的旋轉, 此時這個軸就是旋轉的固定直線, 而「旋轉平面」就是與此軸垂直的所有平面, 這些平面上的點都以軸與此平面的交點為中心作旋轉。 若以固定點或線作維度類推, 四維空間的旋轉固定量應是一個平面 (點、 線推至平面), 但對一個平面來作旋轉十分不易想像。 若我們將旋轉視為前述「旋轉平面」的旋轉, 此時維度類推就十分容易解釋了。 若我們只考慮旋轉中心是原點且旋轉軸為坐標系的軸 (稱為主旋轉, 其他的旋轉都可以透過平移旋轉再平移的方式獲得), 二維空間旋轉平面恰好一個, $xy$ 平面就是旋轉平面, $xy$ 旋轉就是唯一的主旋轉 ($yx$ 是它的反向旋轉, 視為同一個), 原點是旋轉中心; 而三維空間旋轉平面是互相平行的所有平面, 這些平行平面的旋轉中心構成的直線就是旋轉軸 (這些平面過原點的法線), 若旋轉平面都是平行於 $xy$ 平面, 我們稱之為 $xy$ 旋轉, 因此, 三維空間的主旋轉就是 $xy$、 $xz$、 $yz$ 三種 ($yx$、 $zx$、 $zy$ 是它們的反向旋轉), 對應的旋轉軸是 $z$、 $y$、 $x$ 軸, 旋轉時它們是固定不動的。 類推到四維空間, 主旋轉就是 $xy$、 $xz$、 $yz$、 $xw$、 $yw$、 $zw$ 六種, 旋轉時, 他們都有固定不動的平面分別為 $zw$、 $yw$、 $xw$、 $yz$、 $xz$、 $xy$ 平面。 因此, 旋轉若以平面來描述, 空間中的主旋轉, 只改變描述旋轉平面的兩個軸的坐標分量, 但不改變其他軸的坐標分量。 例如 $xy$ 旋轉只改變了物件中點 $(x,y,z,w)$ 中的 $x$、 $y$ 分量, 而 $zw$ 旋轉只改變了點 $(x,y,z,w)$ 中的 $z$、 $w$ 分量。 附錄一列出二、 三、 四維空間中的主旋轉的計算矩陣, 任一點的行向量, 都可以透過這些矩陣計算出它們旋轉後的新位置。 由於 $xy$ 與 $zw$、 $xz$ 與 $yw$、 $yz$ 與 $xw$ 為互相獨立的矩陣, 可合併為 $xy\mid zw$、 $xz\mid yw$、 $xz\mid yw$ 旋轉 (兩旋轉的乘積), 表示為一個矩陣, 如附錄一所示。 若它們的旋轉角不相同, 稱為克利福特旋轉 (Clifford rotation) 或雙旋轉 (double rotation), 若他們的旋轉角相同, 稱為等角旋轉 (isoclinic rotation)。 其他二個或二個以上主旋轉矩陣的乘積, 其結果是較複雜的旋轉。 與二維、 三維一樣, 四維空間的旋轉也是保距變換 (isometry)。 (6) 物件的平移 (translation)與二維及三維空間一樣, 四維空間的平移, 就是一個四維向量 $[a,b,c,d]$, 將四維空間中的點 $(x,y,z,w)$ 作平移變換, 得到的點就是 $(x+a,y+b,z+c,w+d)$, 數學算板可呈現動態的平移過程。 平移也是保距變換。 (7) 物件的鏡射 (reflection)一般來說, 鏡射變換可以是「點」鏡射或「線」鏡射或「面」鏡射, 數學算板仿照四維空間的旋轉, 用「軸」來分類鏡射, 稱為主鏡射。 若以 $X,Y,Z,W$ 代表四維空間的四軸名稱, 數學算板的主鏡射有: 原點 (無軸), $X,Y,Z,W,XY,XZ,XW,YZ,YW,ZW,XYZ,XYW,XZW,YZW$ 數學算板定義物件中每一個點的鏡射向量 $[x,y,z,w]$, 依此向量平移該點。 主鏡射出現的軸名, 指鏡射向量中該軸的鏡射分量為零, 未出現的軸名, 鏡射向量中該軸的分量為該點於該軸分量的 - 2倍。 例如, $YZ$ 鏡射指物件對 $YZ$ 平面鏡射, 物件中的點若為 $(a,b,c,d)$, 則該點的鏡射向量為該點對 $YZ$ 平面投影向量的兩倍, 為 $[-2a,0,0,-2d]=2([0,b,c,0]-[a,b,c,d])$, 鏡射時, 物件中的各點分別依各點的鏡射向量作平移。 原點鏡射時, 物件上的點 $(a,b,c,d)$ 之鏡射向量為 $[-2a,-2b,-2c,-2d]$。 鏡射也是保距變換。 二、數學算板的四維空間系統數學算板是一個動態數學軟體 (參看 https://mathboard.tw) 。 數學算板的四維空間系統, 建立在一個可以在螢幕平面上自由平移, 且可對原點自由旋轉的標準 3D 坐標系統上。 這個四維系統的原點就是 3D 坐標系統的原點, 它的軸就是 3D 系統中的 $x,y,z$ 軸, $w$ 軸沒有展示, 它永遠垂直於 $x,y,z$ 三軸。 數學算板首先以 $(0,0,0,d)$ 為透視中心, 經由前述「透視」投影或「鉛直」投影, 將四維空間中的 4D 物件, 投影至 $XYZ$ 空間 ($w=0$), 得到 3D 空間物件, 然後再將此 3D 空間物件投影至螢幕平面。 在這個螢幕平面呈現的圖形, 雖是平面圖形, 但我們可以透過三維空間的想像力, 將其視為 3D 圖形, 我們討論的物件都呈現在這個螢幕平面上。 圖 16 展示的正方胞體構成成分程式畫面, 就是數學算板四維空間坐標系統的一例。 以滑鼠拖曳原點, 會將整個四維坐標系統作三維平移。 拖曳原點半徑 100 光點的範圍內的非原點位置, 可將四維坐標系統 (含建立在系統上的物件) 作三維旋轉, 這個旋轉是四維坐標系統的旋轉。
圖中「歸正」、 「同時轉」、 「軸單位點」、 「中心」是四維空間系統控制按鈕, 可控制軸, 令軸歸定位、 旋轉及停止、呈現或隱藏軸單位點或軸中心 (原點)。 使用者也可透過「頂點」按鈕取得頂點在四維空間中的坐標。 選取任意頂點, 進入選單「度量 $\to$ 點坐標」, 可以展示它對應的四維坐標數值。 在此系統中, 其他的按鈕為四維空間的「物件」控制按鈕。 可控制物件在坐標系統中的動作 (坐標系統不動)。 「4D $\to$ 3D」及「3D $\to$ 2D」選擇按鈕可以分別選擇透視或鉛直兩類投影, 觀察不同投影組合的結果圖形。 圖中圓上一點 $\theta$, 是圓上的動點, 它的位置指的是旋轉的角度 (目前是 0 度), 每一種旋轉, 都可透過此點來控制旋轉的角度, 以便觀察此時的物件投影的形狀。 「旋轉角度」框輸入角度後, 按「旋轉」按鈕可依指定旋轉角度作旋轉; 按「動畫」則可作旋轉動畫, 兩者都透過「運作對象」按鈕選項來選取全部頂點或部分頂點作旋轉。 「旋轉面 1」按鈕選項, 包含了四維空間的六種主旋轉 ($XY$、 $YZ$、 $XZ$、 $XW$、 $YW$、 $ZW$) 及三種雙旋轉 ($XY\mid ZW$、 $YZ\mid XW$、 $XZ\mid YW$) 的選項按鈕, 也可以自行輸入任意旋轉組合 (以$\mid$分隔), 可執行各種組合的物件旋轉動作。 選好旋轉類型後, 按鈕「旋轉」, 即可將四維空間中的四維物件作主旋轉, 再按鈕一次, 即可以停止。 「還原」按鈕, 可還原圖形至旋轉角度為 0 之狀況。 「平移向量」框可輸入四維平移向量, 之後選取可平移之點, 按鈕可移動所選之點。 若沒有選點, 則平移整個物件。 平移之後也可再作旋轉, 觀察平移後物件旋轉的狀態。 「重置」可以將「平移」重置回覆至平移前的狀態。 「距」後方可輸入投影中心與原點的距離 $d$ (投影中心是點, 內定值為 $d=2$), 若物件的頂點都在單位四維球面 (3-sphere, 三球面) 上, 內定投影中心為 $(0, 0, 0, d)$, $d$ 為球面直徑。 「目前位置」按鈕可以指定目前位置為起始位置, 「重置」可回復原始位置。 「鏡射」選擇按鈕提供主鏡射選項, 先選擇一種主鏡射, 然後按鈕對物件 (框架多胞體) 作鏡射。 由於我們的多面體大部分都是中心對稱圖形, 且中心為原點, 因此, 不容易看出鏡射現象, 先平移使原點非其對稱中心時, 比較容易觀察到鏡射現象。 也可以將頂點命名, 方便觀察其新位置, 圖 14 中的小正方體, 做鏡射時, 會自動出現頂點編號方便觀察新舊位置。 透過四維物件頂點的旋轉、 平移、 鏡射及可平移旋轉坐標軸的平移轉動, 我們可以觀察四維多胞體投影的不同面相。 三、數學算板的四維空間物件數學算板的四維空間物件, 多面體只是簡單的框架圖, 方便作動態探索。 數學算板原有內建的柏拉圖多面體 (五種凸正多面體)、 阿基米德多面體、 角柱、 角錐、 圓柱、 圓錐、 輪環多面體 (toroidal polyhedron)、 $\cdots$ 等多面體的頂點程式, 透過這些多面體頂點, 我們可以製作各種三維多面體及其展開圖 (林, 民 107a , 民 107b)。 圖 17 展示的是輪環多面體製作程式, 展示 4-4, 7-5, 15-10 的輪環多面體, 輸入 $p,q$ 值即可取得多面體, 並做多種變換。 數學算板中, $p-q$ 表示 $q$ 邊的正多邊形繞一條與其共平面且不相交的直線 (中心軸) 旋轉 $k\cdot \frac{2\pi}{p}$, 其中 $k=1,2,\ldots,p$, 再以線段連接對應的多邊形頂點而得的多面體, 其中 $k=1,2,\ldots,p$, $p-q$ 輪環多面體的面均為梯形或矩形。 若正多邊形為圓, 繞中心軸迴轉而得的曲面就是輪環面 (torus), 可視為 $p-q$ 輪環多面體的極限圖形。
數學算板也在四維系統中提供建立多胞體的頂點功能, 透過這些頂點, 我們可以建立可在三維空間觀察的多胞體 (四維多面體) 物件框架。 數學算板內建下列四維物件頂點程式: (a) 四維空間中的三維多面體頂點 --- $\{(x,y,z,0)\mid (x,y,z)$ 為三維多面體頂點$\}$。 (b) 四維凸正多面體 --- 四維空間中的凸正多胞體共有六種:四維正四面體 (hypertetrahedron, 5-cells)、 正方胞體 (hypercube, tesseract)、 四維正八面體 (hyperoctahedron, 16-cell)、 四維正十二面體 (hyperdodecahedron, 120-cell)、 四維正二十面體 (hypericosahedron, 600-cell)、 24 胞體 (octahedral complex, 24-cell), 由於 120-cell 過於複雜, 操作不便, 其他五種均有內建頂點程式, 可建立動態模型。 (c) 直角柱胞體 (Polyhedral Prism) 頂點 --- $\{(x,y,z,\pm r)\mid (x,y,z)$ 為三維多面體頂點, $r\not= 0$ 為常數$\}$, 是將三維直角柱垂直平移而得的胞體。 (d) 偶角柱胞體 (Duoprism) --- 頂點 $\{(x,y,z,w)\mid (x,y, 0, 0),(0, 0, z,w)$ 分別為 $XY$ 平面及 $ZW$ 平面上的 $m$, $n$ 正多邊形頂點$\}$。 圖 18 展示的是 6-7 偶角柱胞體, 中心部分為正 7 邊形角柱, 周圍為正 6 邊形角柱, 右圖為左圖作 $ZW$ 旋轉 90 度之圖形。 使用者也可以取得頂點, 將必要的面或邊框塗色, 便於觀察。 此外, 我們也建立了下列四維空間曲面 (e) 克利福特輪環面 (Clifford Tori)。 (f) 畢安奇-平克婁輪環面 (Bianchi-Pinkall Tori)。
克利福特輪環面及畢安奇-平克婁輪環面的四維參數方程式是: $x\!=\!\cos(\alpha)\cos(u+v),\ y\!=\!\cos(\alpha)\sin(u+v),\ z\!=\!\sin(\alpha)\cos(u-v),\ w\!=\!\sin(\alpha)\sin(u-v),$ 其中 $\alpha=a+b\sin(2nv),\ u\in[0,2\pi),\ \alpha\in[0,\frac \pi 2], v\in[0,\pi],$ $b=0$ 時圖形為克利福特輪環面, $b\not=0$ 時圖形為畢安奇-平克婁輪環面, $n$ 為整數, 代表輪環面的葉數。 圖 19 展示畢安奇-平克婁輪環面的探索畫面。 圖 19 中左圖展示的是 $b=0$ 時, 一般的輪環面, 中圖是克利福特輪環面的一個面相, 右圖是 5 葉正視的畢安奇-平克婁輪環面。 圖 20 是探索程式的另 3個面相。 左圖是 4 葉的畢安奇-平克婁輪環面, 中圖是 7 葉圖, 右圖是 3 葉且作 $XW$ 某一 角度旋轉的圖形。 在數學算板的此環境下, 透過滑鼠及按鈕可以充分探索四維空間中此曲面的各種形狀面相特質。 由於解析度的問題, $W$ 軸相關的旋轉在 90 度附近呈現的圖形會較雜亂。
四、正方胞體及其投影(1) 正方胞體的投影正方胞體 (tesseract) 是四維空間中的一種正多胞體 (regular polychoron), 是類似三維空間中的正方體的幾何物件。 類似三維正方體 (6 個面組成, 有 12 條稜、 8 個頂點), 它是由八個胞體 (全等的正方體) 組成的, 它有 24 個面 (全等的正方形), 32 個稜 (等長的線段), 16 個頂點。 每個面是 2 個胞體共用的, 每個稜是由三個面共用的, 每個頂點是四個稜共用的。 圖 21 左圖呈現的是以正方體 (胞體) 為主體, 觀察正方胞體而得的一個透視投影圖形。 程式先將內建的正方胞體的頂點, 沿 $w$ 軸投影 (4D 至 3D) 至標準的三維空間 $w=0$ (畫面中可旋轉的三維坐標系), 再將頂點投影 (3D 至 2D) 至螢幕平面。 八個胞體指的是圖中小正方體、 此正方體的上、 下、 左、 右、 前、 後六個正方體 (看起來像是像是梯形台), 及大正方體本身。 相對對於這種一內一外(最遠及最近)兩正方體的「透視投影」圖形 (左圖) 的呈現來說, 「垂直投影」呈現的是一個重疊的正方體, 其他六個正方體都因投影而壓縮到重疊的正方體六個面上。 正方胞體的每個面都全等, 都是正方形, 每條稜也都等長。
透過四維旋轉及三維投影圖形滑鼠的轉動, 我們可以觀察正方胞體的不同樣貌。 圖 22 是以面優先 (face-first) 的觀點來看, 正方胞體的投影圖, 左圖呈現的是透視投影圖形, 在此三維投影中, 最小面 (最遠的面) 與最大面 (最近的面) 在三維空間中是共平面的。 右圖呈現的是垂直投影的圖形。 圖形中看到的是三個並列的正方體, 藍框、綠框及紅框構成的三個正方體, 右圖中綠框與藍框正方體疊合。
以稜優先 (edge-first) 觀點來看, 圖 23 左圖是透視投影所成圖形, 右圖是垂直投影所成圖形, 後者是一個 3D 的六角柱。
以頂點優先 (vertex-first) 觀點來看, 圖 24 左圖是透視投影所成圖形, 圖 24 中圖是垂直投影所成圖形, 若將中圖中間點及向外作出的稜移除, 就是一個 3D 的菱形十二面體 (rhombic dodecahedron), 如圖 24 右圖。
(2) 正方胞體的構成成分數學算板除了內建五種正多面胞體頂點外, 也內建 4D 中的帶邊正方形、 帶正方形正方體、 帶正方體正方胞、 帶正四面體正 16 胞、 帶正八面體正 24 胞程式, 方便比較並探索這些胞體的構成成分, 作為「維度類推」的實例。 前面圖 14 展示的是帶正方體正方胞的圖形。 我們在正方胞上, 加上可獨立旋轉或平移的正方體 (最遠端的正方體)。 可做整體的旋轉, 或只作獨立正方體的旋轉。 做獨立正方體的旋轉, 可觀察正方胞的正方體構成成分並透過點鏡射、 平移或旋轉觀察對胞 (相當於正方形的「對邊」、正方體的「對面」), 正方胞體簡介及它的旋轉, 參看動態影片 4-1 , 動態影片 4-2 ; 圖 25 展示的是遠端正方體在標準位置時, 做 $ZW$ 平面旋轉 0, 90, 180, 270 度時的圖形。 圖中第 1, 3 圖及 2, 4 圖中框線與紅色線構成的正方體就是對胞 (遠近端的正方體及上下角錐台) 其他的對胞 (前後、 左右) 也可以做類似的展示, 它們都是正方體。 正方胞體的對胞, 參看動態影片 5-1 、 動態影片 5-2 。
五、透過正方體的展開及球面看四維空間的內外翻轉特質內外翻轉 (insideout) 是四維空間物件具有的特質。 由於人類視網膜是二維的, 在三維空間中的我們透過觀察位置的變化或物件的平移旋轉, 我們可以觀察到物件的上下左右前後面相, 但若是不剖開物件, 我們永遠無法觀察到物件的內部。生活在四維空間的人, 視網膜「應」是三維的, 透過W軸的相關旋轉, 他們可以看到物件的內部。 事實上 $XW$、 $YW$、 $ZW$ 旋轉分別是沿 $X$ 軸、 $Y$ 軸、 $Z$ 軸, 物件由內而外, 由遠而近 (或說由負到正) 的旋轉變動。 圖 26 展示的是四維空間中的3維正方體, 我們將正方體外部做成畫面, 內部做了兩種處置, 其一內部與外部為相同畫面, 其二將內部塗色。 圖 26 中, 中圖及右圖為正方體 $ZW$ 旋轉 90$^\circ$ 之圖形。 圖 27 是中圖的內部與外部是它們展開圖的畫面。 透過過動態展示, 我們可以觀察到內外翻轉的狀態。 參看動態影片 6 。
圖 28 展示的是四維空間中, 球心在原點的三維球面, 作 $xw$ 旋轉在接近 270 度時的投影圖形, 此時, 經緯線均投影至一個平面上。 三維球面旋轉時的投影, 參看動態影片 7 。 影片中球面的「外」面及經緯線以藍色呈現, 「內」面及經緯線以橘色呈現。 其內外翻轉的現象也十分清楚。
六、正方胞體的展開圖與三維空間中的正方體類似, 正方胞體在四維空間中, 也可以考慮它的展開圖。 圖 29 展示的就是正方胞體的展開圖之一。 它是在四維空間中展開後投影至三維空間的圖形, 是八個正方體組合而成十字架形的立體。 在數學算板中, 透過旋轉整個展開拼合的流程, 可以透過圖中線段上的點, 從左至右的移動來控制。 正方胞體的展開, 參看動態影片 8 。
七、正方胞體的截體正方胞體的截體就是將正方胞體沿 $W$ 軸平移, 當其經過 $XYZ$ 三維空間 ($w=0$) 時, 留下的影像。 數學算板提供了 4 種不同方位的正方胞體截體, 使用者可以只觀察截體, 也可以同時呈現該方位的正方胞體細框架。 我們以 $XW\mid YW\mid ZW$ 旋轉 (三個旋轉乘積, 旋轉角分別為 $a,b,c$) 的四個方位的正方胞體, 及投影中心 $(0,0,0,r)$ 來觀察截體。 (1) 正方體優先 ($a=0$, $b=0$, $c=0$, $r=2$)。 (2) 面優先 $\Big(a=0$, $b=0$, $c=\dfrac{\pi}{4}$, $r=2\sqrt 2\Big)$。 (3) 稜優先 $\Big(a=0$, $b=\dfrac{180}{\pi}\arctan\Big(\dfrac{\sqrt 2}2\Big)$, $c=\dfrac{\pi}{4}$, $r=2\sqrt 3\Big)$。 (4) 頂點優先 $\Big(a=\dfrac{180}{\pi}\arctan\Big(\dfrac{\sqrt 3}3\Big)$, $b=\dfrac{180}{\pi}\arctan\Big(\dfrac{\sqrt 2}2\Big)$, $c=\dfrac{\pi}{4}$, $r=4\Big)$。 其動態截體則是正方胞體與超平面 $w=r^*d$, $d\in[-0.5,0.5]$ 的交集。 在正方體優先的截體中, 我們看到的是由遠端正方體平移至近端的正方體。 在面優先的截體中, 我們看到的是扁平面拉長為長方體然後再壓為扁平面的變化。 在稜優先的截體中, 我們看到的是正三角柱截去3稜成六角柱再由正六角柱 $Z$ 變回大三角柱的過程。 在頂點優先的截體中, 我們看到的是正四面體截角圖, 由正四面體變為截角正四面體、 正八面體、 截角正八面體, 再轉為正四面體的過程。 正方胞體的截體動態展示, 參看動態影片 9 , 動態展示中, 正方胞體中心在軸上, 沿著 $w$ 軸移動, 進入我們的 $XYZ$ 三維空間 ($w=0$), 然後離開 $XYZ$ 三維空間後消失, 由無到有再消失的重複過程, 不同的進入方向, 可能造成整個物件突然出現 (或消失) 或縮小出現 (或消失) 的不同狀況。 圖 30 展示的是稜優先時的六個面向, 截「稜」圖案次序為上 3 下 2 右。
圖 31 展示的是頂點優先時的截「角」的八個面向, 截「角」的次序為上 4 下 3 右。 圖形中各面的顏色是由電腦在形狀類別改變時自動給予, 因此不同形狀類別的物件, 其對應顏色有時不太相配。
如前所述, 與三維空間物件的截面類似, 正方胞體的截體只是正方胞體的部分樣貌, 我們很難想像其整體的形狀, 不過這可以看出, 許多三維空間物件, 其實是四維空間物件的截體。 結語本文首先簡介四維空間相關的基本概念, 如維度類推、 透視投影、 平行投影、 旋轉、 平移、 鏡射、 截面、 截體、 展開圖等。 然後簡單說明數學算板的四維坐標系統、 內建的多面體及多胞體, 並就正方胞體的構成成分及其旋轉做一些介紹, 對於四維空間與 $w$ 軸相關的旋轉特性 「內外翻轉」也有一些描述, 對內建的多胞體, 除正方胞體外, 並未詳加說明, 請參看網路 Wikipedia 上的有關介紹, 希望對四維空間有興趣的讀者有一些幫助。 由於內容有些是動態的, 說明不易, 部分有提供影片, 由於影片製作並未有逐字稿, 或有些口誤未加修正, 敬請包涵。對於數學算板相關的影片, 有興趣的讀者可參看 https://youtube.com/@mathboardtw 播放清單中的四維空間探索, 本文中有些應該有的動態影片, 會陸續製作加入, 數學算板 1.05 測試版也將放在網頁 https://mathboard.tw 的下載區。 附錄一、 四維空間主旋轉(principle rotation)矩陣:設 $\theta$ 為旋轉角 \begin{align*} xy\ &\hbox{旋轉:} \left[ \begin{array}{cccc} \cos(\theta)&-\sin(\theta)&~~0~~&~~0~~\\ \sin(\theta)&\cos(\theta)&~0~&~0~\\ ~0~&~0~&1&0\\ ~0~&~0~&0&1 \end{array}\right], \qquad xz\ \hbox{旋轉:} \left[ \begin{array}{cccc} \cos(\theta)&~~0~~&-\sin(\theta)&~~0~~\\ ~0~&~1~&0&0\\ \sin(\theta)&0&\cos(\theta)&~0~\\ ~0~&~0~&0&1 \end{array}\right],\\[7pt] yz\ &\hbox{旋轉:} \left[ \begin{array}{cccc} ~~1~~&~0~&0&~~0~~\\ 0&\cos(\theta)&-\sin(\theta)&~0~\\ 0&\sin(\theta)&\cos(\theta)&~0~\\ ~0~&~0~&0&1 \end{array}\right], \qquad xw\ \hbox{旋轉:} \left[ \begin{array}{cccc} \cos(\theta)&~~0~~&~~0~~&-\sin(\theta)\\ ~0~&~1~&0&0\\ ~0~&~0~&1&0\\ \sin(\theta)&0&0&\cos(\theta) \end{array}\right],\\[7pt] yw\ &\hbox{旋轉:} \left[ \begin{array}{cccc} ~~1~~&~0~&~~0~~&0\\ 0&\cos(\theta)&0&-\sin(\theta)\\ ~0~&~0~&1&0\\ 0&\sin(\theta)&0&\cos(\theta) \end{array}\right], \qquad zw\ \hbox{旋轉:} \left[ \begin{array}{cccc} ~~1~~&~~0~~&0&0\\ ~0~&~1~&0&0\\ 0&0&\cos(\theta)&-\sin(\theta)\\ 0&0&\sin(\theta)&\cos(\theta) \end{array}\right]. \end{align*} 附錄二、四維空間雙旋轉 (double rotation) :四維空間中兩互相垂直平面分別以不相同角度旋轉時, 兩矩陣乘積表示的旋轉, 下例為主雙旋轉 \begin{align*} xy\mid zw\ \hbox{旋轉:} \ &\alpha\not=\beta,\ \left[ \begin{array}{cccc} \cos(\alpha)&-\sin(\alpha)&~~0~~&~~0~~\\ \sin(\alpha)&\cos(\alpha)&~0~&~0~\\ ~0~&~0~&\cos(\beta)&-\sin(\beta)\\ ~0~&~0~&\sin(\beta)&\cos(\beta) \end{array}\right], \\[7pt] yz\mid xw\ \hbox{旋轉:} \ &\alpha\not=\beta,\ \left[ \begin{array}{cccc} \cos(\beta)&0&0&-\sin(\beta)\\ 0&\cos(\alpha)&-\sin(\alpha)&~0~\\ ~0~&\sin(\alpha)&\cos(\alpha)&0\\ \sin(\beta)&~0~&0&\cos(\beta) \end{array}\right], \\[7pt] xz\mid yw\ \hbox{旋轉:} \ &\alpha\not=\beta,\ \left[ \begin{array}{cccc} \cos(\alpha)&0&-\sin(\alpha)&~~0~~\\ 0&\cos(\beta)&0&-\sin(\beta)\\ \sin(\alpha)&0&\cos(\alpha)&~0~\\ 0&\sin(\beta)&~0~&\cos(\beta) \end{array}\right]. \end{align*} 附錄三、四維空間等角旋轉 (isoclinic rotation) :互相垂直的兩平面, 分別以相同旋轉角度旋轉時, 兩矩陣乘積表示的旋轉稱為等角旋轉, 下例為主等角旋轉 \begin{align*} xy\mid zw\ \hbox{旋轉:} \ & %\alpha\not=\beta \left[ \begin{array}{cccc} \cos(\theta)&-\sin(\theta)&~~0~~&~~0~~\\ \sin(\theta)&\cos(\theta)&~0~&~0~\\ ~0~&~0~&\cos(\theta)&-\sin(\theta)\\ ~0~&~0~&\sin(\theta)&\cos(\theta) \end{array}\right], \\[7pt] yz\mid xw\ \hbox{旋轉:} \ & %\theta\not=\theta \left[ \begin{array}{cccc} \cos(\theta)&0&0&-\sin(\theta)\\ 0&\cos(\theta)&-\sin(\theta)&~0~\\ ~0~&\sin(\theta)&\cos(\theta)&0\\ \sin(\theta)&~0~&0&\cos(\theta) \end{array}\right], \\[7pt] xz\mid yw\ \hbox{旋轉:} \ & %\theta\not=\theta \left[ \begin{array}{cccc} \cos(\theta)&0&-\sin(\theta)&~~0~~\\ 0&\cos(\theta)&0&-\sin(\theta)\\ \sin(\theta)&0&\cos(\theta)&~0~\\ 0&\sin(\theta)&~0~&\cos(\theta) \end{array}\right]. \end{align*} 參考書目本文作者為台北市立教育大學數資系退休副教授 |