verification op• Data kinds: none → table (an op determined by its arguments alone — it takes no image or data input)
• Call: import fullseye as fs; fs.ledger.conv_observed_order(phi=None, h=None, r=None, n_cells=None, dim=None) -> 'dict' (to call the implementation directly, import converge; converge.conv_observed_order(phi=None, h=None, r=None, n_cells=None, dim=None) -> 'dict'; from the registry, opsconverge.get("conv_observed_order"))
Apparent order of convergence p from three systematically refined solutions (Celik et al. 2008, eq. 3).
phi = (phi1, phi2, phi3) on grids 1 (finest) .. 3 (coarsest). The refinement is given by exactly one of h = (h1, h2, h3) representative cell sizes, r = (r21, r32) with r21 = h2/h1 and r32 = h3/h2, or n_cells = (N1, N2, N3) with dim (h from Celik eqs. (1)-(2)). With eps32 = phi3 - phi2 and eps21 = phi2 - phi1 (Step 3):
p = |ln|eps32/eps21| + q(p)| / ln(r21) (3a)
q(p) = ln((r21^p - s) / (r32^p - s)) (3b)
s = sign(eps32 / eps21) (3c)
solved by fixed-point iteration from the first term (q = 0) with iterate_fixed_point (plain, as the paper prescribes; |p_k+1 - p_k| <= 1e-13, at most 1000 steps). q = 0 when r is constant. s = -1 flags oscillatory convergence (reported, not refused — Celik keeps the absolute values so the extrapolation goes toward h = 0).
Refusal: eps21 or eps32 "very close" to zero (|eps| <= 1e-12 * max|phi|) — Celik: the procedure does not work there (oscillation or an exact solution; refine further) — and a fixed-point iteration for p that does not converge.
Defaults: the first column of Celik et al. 2008 Table 1 (p = 1.53).
• convergent_computation family guide
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• (none yet)
table as input)—
verification)*Provenance: converge.py — CONVERGE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.