core op• Data kinds: matrix → table
• Call: import fullseye as fs; fs.ledger.graph_rich_club_curve(adj, mode='total', n_null=20, swaps_per_edge=5, seed=0) (to call the implementation directly, import graphinv; graphinv.graph_rich_club_curve(adj, mode='total', n_null=20, swaps_per_edge=5, seed=0); from the registry, opsgraph.get("graph_rich_club_curve"))
Rich-club coefficient φ(k) for every k, against the degree-preserving null.
φ(k) is the directed density of the subgraph spanned by the nodes whose degree exceeds
k: `edges among them / (r (r − 1)), r` = their number (Colizza et al. 2006; the
same formula as :func:conngraph.graph_rich_club, here for all k at once). `mode`
is the degree used to rank nodes: `"total" (in + out), "in" or "out"` (Yadav
& Singh 2026 rank by in- and out-degree separately). A rising φ(k) alone means little —
high-degree nodes are dense in any graph — so φ is divided by its mean over `n_null`
rewirings that keep every node's in- and out-degree exactly (Maslov & Sneppen 2002;
every sample is checked, fail-closed). `ratio > 1` is the rich-club regime; Towlson
et al. 2013 call it significant where `ratio > 1 + sd`.
Returns a dict: `k (all integers 0 .. max degree − 1), count` (nodes with degree
> k), `phi, null_mean, null_sd, ratio` (nan where the null mean is 0),
`z, regime (bool: ratio > 1 + null sd of the ratio), n_null, mode`.
Identities: `phi[k] == conngraph.graph_rich_club(adj, k)` for every k with
`mode="total"; a complete graph has phi == 1 and ratio == 1` everywhere
(no swap can change it); a rewired sample of the graph itself has ratio ≈ 1.
Raises `ValueError: as :func:graph_degree_preserving_null` (non-square,
negative, ... ; `n_null < 2; swaps_per_edge < 1`; fewer than 2 edges);
`mode` not in / out / total.
• 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.
• poc_worm_core_persists — py -3.11 examples/poc_worm_core_persists.py
table as input)graph_edge_consensus · graph_core_persistence · tree_morphometry · tree_sholl · tree_run_length
core)*Provenance: graphinv.py — GRAPH 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.