hi mingzhe,
thanks for your email and your interest in ttk.
> I really
> appreciate the toolkit you have developed and maintained!
thanks! that's really rewarding to read :)
> What will happen if the entire scalar field is
> split into two parts, so there are two separate connected components? Will
> one part be directly ignored when calculating the diagram?
the diagram will be computed on a per connected component basis (see the attached screenshot).
so the above discussion is valid for each connected component of your triangulation.
> However, how can I distinguish those [birth, death) pairs in the diagram
> between H0 and H_{d-1}?
the cell data field "PairType" will report 0 for H0 and d-1 for H_{d-1}
the global min / global max pair will be assigned to the -1 pair type (to indicate it is a special case)
> Thirdly, I am also confused about how can we export each [birth, death)
> pair into a text file (.csv, .txt etc.).
> I know that TTK outputs Cell Data
> and Point Data for the persistent diagram.
when you save the persistence diagram in .csv format from paraview, you need to specify (in an upcoming dialog window) what data you want to save (cell data or point data). the same specification needs to happen if you're interacting with ttk from python.
if you save the point data of the diagrams, then the x and y coordinates of the off-diagonal points (in default mode) will correspond to the birth and death.
I hope this is helpful.
thanks for letting us know if you ran into further issues.
and thanks for citing the ttk papers (see
https://topology-tool-kit.github.io/downloads.html) if you plan to use ttk in publications.
cheers,
--
Dr Julien Tierny
CNRS Researcher
Sorbonne Universite
http://lip6.fr/Julien.Tierny