X-Git-Url: https://git.sthu.org/?p=libstick.git;a=blobdiff_plain;f=include%2Flibstick-0.1%2Fpersistence.h;fp=include%2Flibstick-0.1%2Fpersistence.h;h=b9fc080ee589c951f9a16a0e354dcc774888028e;hp=d7cc25f23878266da513ea123399d7b2522d1092;hb=909909ce5de57f1454686cf6251d0bd9652a96d9;hpb=7336073618c7d862759add5cbbe45465e496b029 diff --git a/include/libstick-0.1/persistence.h b/include/libstick-0.1/persistence.h index d7cc25f..b9fc080 100644 --- a/include/libstick-0.1/persistence.h +++ b/include/libstick-0.1/persistence.h @@ -200,7 +200,7 @@ class persistence { break; } - os << "(value: " << order.get_simplex(c).value << ")" << std::endl; + os << " \t\tvalue: " << order.get_simplex(c).value << std::endl; os << " boundary: " << bm.get_column(c) << std::endl; typename boolean_colmatrix::column_type col = rbm.get_column(c); @@ -280,13 +280,20 @@ class persistence { for (int d=-1; d <= MAXDIM; ++d) { os << "Dimension " << d << std::endl; const diagram &dia = get_persistence_diagram(d); + for (unsigned i=0; i < dia.births.size(); ++i) { + const IT birth = dia.births[i].birth; + const IT death = dia.births[i].death; + os << " "; - if (dia.births[i].death > 0) - os << dia.births[i].birth << "\033[1;31m -> " << dia.births[i].death; - else - os << "\033[1;32m" << dia.births[i].birth; - os << "\033[0;m" << std::endl; + if (death > 0) { + const scomplex& c = get_order().get_complex(); + const VT pers = c.simplices[death].value - c.simplices[birth].value; + os << birth << "\033[1;31m -> " << death << "\033[0;m" << " \tpers: " << pers; + } else { + os << "\033[1;32m" << birth << "\033[0;m" << " \t\t[essential]"; + } + os << std::endl; } } }