iterate_fixed_point — CONVERGE iterate op

• 데이터 종류: 없음 → table(인자만으로 정해지는 연산자 —— 이미지나 데이터 입력을 받지 않습니다)

• 호출: import fullseye as fs; fs.ledger.iterate_fixed_point(g='cos', x0=None, method='anderson', tol=1e-10, rtol=0.0, max_iter=500, m=5, on_fail='raise', keep_iterates=False) -> 'dict'(구현을 직접 호출하려면 import converge; converge.iterate_fixed_point(g='cos', x0=None, method='anderson', tol=1e-10, rtol=0.0, max_iter=500, m=5, on_fail='raise', keep_iterates=False) -> 'dict', 원장에서 가져오려면 opsconverge.get("iterate_fixed_point"))

사용법

x = g(x)를 고정점 반복(일반 반복 / Aitken / Anderson)으로 풀고, 수렴하지 않으면 값을 내지 않고 거부한다.

> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.

g is a callable mapping an iterate (scalar or array) to one of the same shape, or the name of a built-in example ("cos": x = cos x, x0 = 1, fixed point 0.7390851332...). The residual is f_k = g(x_k) - x_k and the run has converged when ||f_k|| <= tol + rtol * ||x_k|| (2-norm). The value returned is g(x_k).

method:

• "plain" x_{k+1} = g(x_k) — the bounce-by-bounce Neumann sum for a linear map.

• "aitken" Aitken's delta-squared on x, g(x), g(g(x)) per step (Steffensen form), component-wise; a component whose second difference vanishes takes g(g(x)).

• "anderson" Anderson acceleration (Walker & Ni 2011, Algorithm AA) with memory m, written as their eq. (3.1): gamma = argmin ||f_k - dF_k gamma||_2 with dF_k = (f_{k-m_k+1} - f_{k-m_k}, ..., f_k - f_{k-1}), then x_{k+1} = g(x_k) - dG_k gamma (dG holds the same differences of g). The least-squares problem is solved by a QR factorisation; while cond(R) > ANDERSON_COND_MAX (1e8) the left-most (oldest) column is dropped (section 4 of Walker & Ni, after Yang et al.). On a linear map with no columns dropped this reproduces GMRES (their Theorem 2.2): the gates check it.

Returned (a table dict): x (g(x_k)), converged, n_iter, n_evals (calls of g), residual_history (||f_k|| per iterate), lipschitz_estimate (largest secant ratio of g over the stored iterates), error_estimate = L/(1-L) * ||f_k|| — the a-posteriori contraction bound on |g(x_k) - x*|, None when the estimated L is not below 1 — columns_dropped (Anderson conditioning) and method.

Refusal: divergence (non-finite residual or growth by DIVERGENCE_FACTOR = 1e8), a period-2 oscillation, stagnation or running out of max_iter raises NotConvergedError (a MetricContractError) with the record attached. With on_fail="record" the record is returned instead, with x = None and the last iterate under last_iterate — never under x.

자세한 사용 가이드

• convergent_computation 패밀리 가이드

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

• converge_tour — py -3.11 examples/converge_tour.py

타입이 이어지는 다음 연산자(table 를 입력으로 받는 것)

—

같은 카테고리(iterate)

—


*Provenance: converge.py — CONVERGE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.