複變函數繪圖工具
這是一款免費的線上複變函數繪圖工具,採用定義域著色技術,將複數平面上的每一個點 z 代入 f(z) 並轉化為顏色。透過色彩與明暗的變化,你能一眼看出函數的零點、極點以及對稱性。所有運算皆在瀏覽器內完成,完全無需安裝軟體或上傳資料。
如何使用本工具進行複數平面繪圖
無論是學習複變函數論還是研究特定函數的幾何性質,你都可以透過以下步驟完成繪圖:
- 在底部的輸入欄中輸入你想要繪製的複變函數,例如
z^3 - 1或sin(z)。 - 拖曳畫面可以移動視角,使用雙指捏合或滑鼠滾輪可以放大縮小,探索特定區域。
- 點擊輸入欄旁邊的圖層按鈕,可開啟模長等高線或相位等高線,協助更精確地分析數值變化。
輸入時若語法有誤,輸入欄會顯示提示,並維持顯示上一次正確的圖形,直到語法修正為止。
如何閱讀定義域著色圖形
在定義域著色的繪圖中,複數平面的每個像素都代表一個點 z,橫軸為實部、縱軸為虛部。畫面上的每個點透過兩個特徵來表示函數值 w = f(z):
- 色調(顏色):代表 f(z) 的相位(輻角)。紅色代表正實數,隨著角度逆時針轉動,依序變為黃、綠、青、藍、洋紅。
- 明暗(亮度):代表 f(z) 的模長(大小)。顏色最鮮豔的地方表示 |f(z)| 約等於 1。
當所有顏色交會於一點時:若該點為暗點,代表函數的零點(f(z) = 0);若該點為亮點,代表函數的極點(f(z) 趨近無限大)。繞著該點走一圈,觀察顏色變化的方向與重複次數,就能判斷該處重疊了多少個零點或極點。
支援的函數語法與運算子
本工具支援豐富的數學函數與常數,無需編寫 Python 或 MATLAB 程式即可完成複數平面繪圖:
- 變數與常數:變數為
z;虛數單位為i;常數支援pi與e,以及任意實數(如0.5或2)。 - 運算子與次方:支援
+、-、*、/,次方可用^或**表示。乘號可以省略,如2z或(z+1)(z-1)。 - 常用函數:指數與對數(
exp、log、ln、sqrt);三角函數與反三角函數(sin、cos、tan、asin、acos、atan);雙曲函數(sinh、cosh、tanh、asinh、acosh、atanh)。 - 複數運算:取絕對值
abs(z)、共軛複數conj(z)、實部re(z)、虛部im(z)、輻角arg(z)。
請注意,所有函數名稱後方皆須加上小括號,例如寫成 sin(z) 而非 sin z。
等高線功能與限制
這款線上複變函數繪圖工具提供了兩種輔助線,協助深入分析:
- 模長等高線:當 |f(z)| 經過 2 的次方(如 1/4、1/2、1、2、4)時繪製線條。等高線越密集,代表函數值的模長變化越劇烈。
- 相位等高線:在色環上每隔 30 度(共 12 等分)繪製一條線,所有相位線都會會合於零點與極點。
對數、開方與反三角函數使用的是主支,因此在分支割線上會看到明顯的顏色斷層。此外,當放大倍率極高時,受限於浮點數精度,畫面會停止繼續放大以避免產生像素方塊。
常見問題
如何在線上繪製複變函數圖形?
只需在繪圖區底部的 f(z) 輸入欄中輸入你的數學運算式,例如 z^3 - 1 或 sin(z)。工具會自動透過瀏覽器的顯示晶片即時運算並繪製出定義域著色圖形,無需安裝任何軟體。
什麼是定義域著色?
定義域著色是一種將複變函數視覺化的方法。它將複數平面上的每個點 z 映射到顏色上,其中色調代表 f(z) 的相位角,亮度代表 f(z) 的模長大小,讓零點與極點一目了然。
不用 Python 或 MATLAB 也能畫複變函數圖嗎?
可以。這款線上工具會在你的瀏覽器內將數學公式編譯為繪圖程式碼,利用你的顯示晶片(GPU)進行即時渲染。無論是電腦還是手機,開啟網頁即可使用。
如何在圖形上分辨零點與極點?
零點是 f(z) 為 0 的地方,在圖上顯示為所有顏色匯聚的暗點;極點是 f(z) 趨近無限大的地方,顯示為所有顏色匯聚的亮點。圍繞零點與極點旋轉時,顏色的變化方向正好相反。
繪圖工具支援哪些函數與小數寫法?
工具支援 sin、cos、tan、exp、log、sqrt、abs、re、im 等函數,以及常數 i、pi、e。輸入小數時請使用點號(如 0.5),函數名稱後必須帶有括號,例如 sin(z)。
模長等高線與相位等高線代表什麼?
開啟圖層選項後,模長等高線會在 |f(z)| 等於 2 的次方倍時畫出,顯示數值變化的劇烈程度;相位等高線則在色環每隔 30 度畫出一條線,並全部交會於零點與極點。
輸入的複變函數公式會被上傳到伺服器嗎?
不會。所有的數學計算與圖像繪製都是在你的瀏覽器內部利用 WebGL 2 本地完成,沒有任何資料會被上傳至伺服器。