這個計算器能做什麼
本工具用來計算廣義(解析型)連分數,形式為 \(f = \cfrac{a_0}{b_0 + \cfrac{a_1}{b_1 + \cfrac{a_2}{b_2 + \cdots}}}\),並依你指定的項數,逐一列出各階收斂值 \(f_0\)、\(f_1\)、\(f_2\)……。其中分子 \(a_n\) 與分母 \(b_n\) 都以項次索引 \(n\) 的代數表達式輸入,因此你能重現許多經典展開式:π、\(1/(e-1)\)、根號二的自然對數、根號二,以及其他無數例子。這是一個純數學工具,不涉及任何單位或特定國家的規則。
使用方式
將起始分子 \(a_0\) 與起始分母 \(b_0\) 以數值輸入。第 \(n\) 項分子 \(a_n\) 與第 \(n\) 項分母 \(b_n\) 則以變數 \(n\) 的表達式輸入,例如「\(n^2\)」、「\(n+1\)」、「\(-n^2\)」、「\(3(2n+1)\)」或「\(2\)」。系統支援緊鄰 \(n\) 的隱含乘法,也支援 + − * / ^、括號、一元負號,以及 sqrt、exp、ln、sin、cos 等函數。接著選擇要計算的項數(1 到 1000)與要顯示的位數。畫面上的大數字即為最後一階收斂值;下方表格則呈現數值如何逐步穩定下來。
公式說明
計算第 \(n\) 階收斂值 \(f_n\) 時,計算器會從保留的最內層往外推算。先令尾項 \(t = 0\),接著對 \(k = n, n-1, \ldots, 1\) 依序更新 $$t = \frac{a_k}{b_k + t}$$ 最後得到 $$f_n = \frac{a_0}{b_0 + t}.$$ 這種由內而外的計算方式在數值上相當穩定;當某個分母恰好為零時,會代入一個極小的 epsilon 作為防護(這是改良式 Lentz 演算法的安全機制)。
實例演練:π 的展開式
取 \(a_0 = 4\)、\(b_0 = 1\)、\(a_n = n^2\)、\(b_n = 2n+1\),並設定 6 項,就能得到著名的 π 連分數。以 \(n = 6\) 由內而外計算:\(t\) 從 0 開始;\(k=6\) 得 \(36/13 = 2.769231\);\(k=5\) 得 \(25/13.769231 = 1.815651\);\(k=4\) 得 \(1.479323\);\(k=3\) 得 \(1.061407\);\(k=2\) 得 \(0.659912\);\(k=1\) 得 \(0.273156\)。最後 \(f_6 = 4/(1 + 0.273156) = 3.141962\),已相當接近 \(\pi = 3.141593\)。增加項數即可進一步收斂。
常見問題
為什麼數值無法與常數完全吻合?每個收斂值都只是截斷後的近似值。項數越多越精確,不過受限於雙精度浮點數,有效位數大約只到 15 位。
如果我的連分數發散怎麼辦?有些表達式會出現振盪或發散。收斂值表格能讓你觀察其變化趨勢,據此判斷極限是否存在。
還有哪些例子可以試?\(1/(e-1)\):\(a_0=1\)、\(b_0=1\)、\(a_n=n+1\)、\(b_n=n+1\)。根號二:\(a_0=2\)、\(b_0=1\)、\(a_n=1\)、\(b_n=2\)。根號二的自然對數:\(a_0=1\)、\(b_0=3\)、\(a_n=-n^2\)、\(b_n=3(2n+1)\)。