이 계산기의 기능
이 도구는 \(f(x) = b_0 + \cfrac{a_1}{b_1 + \cfrac{a_2}{b_2 + \cfrac{a_3}{b_3 + \cdots}}}\) 형태의 일반화 연분수(generalized continued fraction)를 계산합니다. 가장 큰 특징은 첫 항 \(b_0\), n번째 분자 \(a_n\), n번째 분모 \(b_n\)을 변수 \(x\)와 항 번호 \(n\)에 의존하는 수식으로 직접 입력할 수 있다는 점입니다. 입력한 \(x\) 값을 대입한 뒤 \(n = 1, 2, 3, \ldots\) 순서로 각 항을 생성하고, 수렴값 \(f(x)\)와 함께 부분 근사값 \(f_n(x)\)을 표로 정리해 보여줍니다. 순수한 수치해석 도구이므로 특정 국가의 규정이나 단위와는 무관하게 어디서나 동일하게 적용됩니다.
사용 방법
세 개의 수식과 \(x\) 값을 입력하세요. 각 수식에는 기호 \(x\)와 \(n\), 연산자 + - * / ^(거듭제곱), 함수 sqrt, exp, ln, log, sin, cos, tan, 그리고 상수 pi와 e를 사용할 수 있습니다. 유효숫자 자릿수를 선택하면 결과 표시 방식을 조절할 수 있는데, 이는 수렴 허용오차와 표시 형식에만 영향을 줄 뿐 실제 계산 자체는 바뀌지 않습니다. 결과 창에는 \(f(x)\) 값과 수렴이 이루어진 항 번호 \(n\)이 표시되며, 표에서는 초기 근사값들이 점차 한 값으로 모여드는 과정을 확인할 수 있습니다.
공식 풀이
근사값은 전진 기본 점화식(forward fundamental recurrence)으로 계산됩니다. \(A_{-1} = 1\), \(A_0 = b_0\), \(B_{-1} = 0\), \(B_0 = 1\)에서 출발하여, 각 단계마다 $$A_n = b_n A_{n-1} + a_n A_{n-2}, \quad B_n = b_n B_{n-1} + a_n B_{n-2}$$로 갱신하고, n번째 근사값은 \(f_n = A_n / B_n\)으로 구합니다. 연속한 두 근사값이 요청한 정밀도까지 일치하거나, 항이 1000개에 도달하면 반복을 멈춥니다.
예제 풀이
기본값인 \(b_0 = 1\), \(a_n = x - 1\), \(b_n = 2\)를 그대로 두고 \(x = 5\)로 계산해 봅시다. 이것은 \(\sqrt{x}\)에 대한 고전적인 연분수입니다: $$\sqrt{x} = 1 + \cfrac{x-1}{2 + \cfrac{x-1}{2 + \cdots}}.$$ \(x = 5\)일 때 모든 분자는 4, 모든 분모는 2가 됩니다. 초기 근사값은 \(f_1 = 3\), \(f_2 = 2\), \(f_3 = 2.3333\ldots\), \(f_4 = 2.2\)이며, 모두 \(\sqrt{5} = 2.2360679774997896\)으로 수렴합니다. 고정점 \(t = 2 + \frac{4}{t}\)는 \(t = 1 + \sqrt{5}\)를 만족하므로 \(f = 1 + \frac{4}{1+\sqrt{5}} = \sqrt{5}\)가 됩니다.
자주 묻는 질문
\(a_n\)과 \(b_n\)이 항 번호 \(n\)에 의존해도 되나요? 됩니다. 예를 들어 함수 \(\frac{x}{e^x - 1}\)은 \(b_0 = 1 - \frac{x}{2}\), \(a_n = \frac{x^2}{4}\), \(b_n = 2n + 1\)로 표현되며, 여기서 \(b_n\)은 \(n\)이 커질수록 함께 증가합니다.
분모가 0이 되면 어떻게 되나요? 계산기는 아주 작은 입실론(epsilon)을 대입해 계산을 이어가며, 이는 수정 렌츠(Lentz) 알고리즘과 동일한 방식입니다. 끝까지 수렴하지 않으면 별도로 알려 드립니다.
왜 1000개 항에서 멈추나요? 안전을 위한 상한값입니다. 그때까지도 수렴하지 않으면 마지막 근사값을 경고와 함께 반환합니다.