circle_bundles.PersistenceResult

class circle_bundles.PersistenceResult(edges, triangles, tets, vertices, edge_weights, sw1, twisted_euler)[source]

Bases: object

Output of edge-driven persistence computations for characteristic classes.

This is the object returned by compute_bundle_persistence(). It packages:

  • The induced simplices (vertices/edges/triangles/tets) used in the computation.

  • The edge weights defining the filtration order.

  • Edge-driven persistence reports for:
    1. the first Stiefel–Whitney class w1 (over \(\mathbb{Z}_2\))

    2. the (twisted) Euler class representative (over \(\mathbb{Z}_\omega\))

Parameters:
edges, triangles, tets

Canonical simplex lists used for persistence.

vertices

0-simplices as singleton tuples [(v,), ...] derived from the simplices.

Type:

List[Tuple[int, …]]

edge_weights

Edge weights used to order removals (larger = removed earlier).

Type:

Dict[Tuple[int, int], float]

sw1

Dict-like report containing "cobirth", "codeath", and "removal_order".

Type:

circle_bundles.analysis.class_persistence.EdgeDrivenReport

twisted_euler

Dict-like report containing "cobirth", "codeath", and "removal_order".

Type:

circle_bundles.analysis.class_persistence.EdgeDrivenReport

Notes

sw1 and twisted_euler are typed as EdgeDrivenReport for IDE/help, but are plain dictionaries at runtime.

__init__(edges, triangles, tets, vertices, edge_weights, sw1, twisted_euler)
Parameters:
Return type:

None

Methods

__init__(edges, triangles, tets, vertices, ...)

Attributes

edges

triangles

tets

vertices

edge_weights

sw1

twisted_euler