iterate_fixed_point — CONVERGE iterate op

• Datenarten: keine → table (ein Operator, der allein durch seine Argumente bestimmt ist — er nimmt kein Bild und keine Daten entgegen)

• Aufruf: 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' (die Implementierung direkt: 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'; aus dem Register: opsconverge.get("iterate_fixed_point"))

Verwendung

Löst x = g(x) durch Fixpunktiteration (einfach / Aitken / Anderson) und verweigert das Ergebnis, wenn sie nicht konvergiert.

> Die ausführliche Beschreibung unten ist der Originaltext — Zusammenfassung und Überschriften sind übersetzt.

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.

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie convergent_computation

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• converge_tour — py -3.11 examples/converge_tour.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

—

Gleiche Kategorie (iterate)

—


*Provenance: converge.py — CONVERGE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

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