1 from dionysus import Simplex, Filtration, StaticPersistence, \
2 vertex_cmp, data_cmp, data_dim_cmp \
4 complex = [Simplex((0,), 0), # A
7 Simplex((0,1), 2.5), # AB
8 Simplex((1,2), 2.9), # BC
9 Simplex((0,2), 3.5), # CA
10 Simplex((0,1,2), 5)] # ABC
12 print "Complex:", complex
13 print "Vertex: ", sorted(complex, vertex_cmp)
14 print "Data: ", sorted(complex, data_cmp)
15 print "DataDim:", sorted(complex, data_dim_cmp)
17 f = Filtration(complex, data_cmp)
18 print "Complex in the filtration order:", ', '.join((str(s) for s in f))
20 p = StaticPersistence(f)
21 print "Persistence initialized"
22 p.pair_simplices(True)
23 print "Simplices paired"
25 smap = p.make_simplex_map(f)
27 print i.sign(), i.pair().sign()
28 print "%s (%d) - %s (%d)" % (smap[i], i.sign(), smap[i.pair()], i.pair().sign())
29 print "Cycle (%d):" % len(i.cycle), " + ".join((str(smap[ii]) for ii in i.cycle))
31 print "Number of unpaired simplices:", len([i for i in p if i.unpaired()])