mrzv / dionysus

Library for computing persistent homology
http://mrzv.org/software/dionysus2
Other
146 stars 31 forks source link

Pickle persistence diagrams #27

Closed agoodweathercc closed 6 years ago

agoodweathercc commented 6 years ago

run the following code in python3 result in a error

def computePD(i):
    import dionysus as d
    import numpy as np
    np.random.seed(42)
    f1 = d.fill_rips(np.random.random((i+10, 2)), 2, 1)
    m1 = d.homology_persistence(f1)
    dgms1 = d.init_diagrams(m1, f1)
    return dgms1[1]
def get_dgms(n_jobs=1):
    from joblib import delayed, Parallel
    return Parallel(n_jobs=n_jobs)(delayed(computePD)(i) for i in range(10))
result = get_dgms(2)
TypeError: can't pickle dionysus._dionysus.Diagram objects

Hopefully it is not too much work to make persistence diagram pickleable.