|
1 | 1 | ## Halo-Finding and Catalogs {#sec:halo_finding}
|
| 2 | + |
| 3 | +In cosmological simulations, dark matter is nearly always represented as a collection of collisionless particles. **CITE SOMETHING ABOUT VLASOV GRID SOLUTIONS** |
| 4 | +This is well-suited to approximating it as a collisionless fluid; however, the identification of structures within that collection of particles can take on several forms, addressing different use cases to different degrees of accuracy. **CITE HALO FINDING COMPARISON PAPER** |
| 5 | +Being able to identify halos, as well as their associated baryonic content, is necessary for rapid analysis of cosmological simulations. |
| 6 | +Furthermore, convergence studies and cross-simulation comparisons requires a consistent method for identifying dark matter halos, as well as the ability to track their growth over time. |
| 7 | + |
| 8 | +In past versions of `yt`, several specific halo finders were bundled and made available to work on any class of data `yt` was able to read. |
| 9 | +These included the HOP halo finder, the classic Friends-of-Friends (FOF) halo finder [@doi:10.1086/191003], a scalable and Parallel HOP [@doi: 10.1086/305535], and a wrapping of the ORIGAMI code [@doi:10.1142/9789814623995_0378] for filament identification. |
| 10 | +To do so, `yt` would utilize direct in-memory connectors with these implementations; whereas typically data connectors are written for each individual dataset format for individual halo finding methods, this enabled a single connector to be written from `yt` to the halo finder. |
| 11 | +In addition to these bundled halo finders, a direct in-memory interface with Rockstar [@doi:10.1088/0004-637X/762/2/109] was developed that sidestepped Rockstar's built in load-balancing to minimize data duplication and transfer. |
| 12 | + |
| 13 | +`yt` provides a unique set of functionality for accessing halo catalogs, as it provides the ability to query their values both *as* catalogs and as the original, underlying datasets. |
| 14 | +This means that the same selection and analysis operations that can be conducted on a "primary" dataset can also be conducted on the halo catalog; furthermore, the halo catalog can be used as input to data selection operations. |
| 15 | +This enables, for instance, querying original dark matter particle values in a halo (as defined by any characteristic radius of that halo) simultaneously with querying baryonic cells or particles included within. |
| 16 | + |
| 17 | +As discussed in [@doi:10.5281/zenodo.8349044], this can be used as input into other tools to provide sophisticated, graph-based queries of datasets and halo merger trees over cosmological time, such as with the `ytree` package. |
| 18 | + |
| 19 | +`yt` also includes an internal halo finding tool that is not widely exposed, built on its implementation of a union-find data structure for identifying topologically connected sets. |
| 20 | +This implementation, a "particle contour tree," uses this union-find data structure to connect (via percolation) particles into simple Friends-of-Friends collections. |
| 21 | +These can then be used as input into more sophisticated phase-space finders, such as Rockstar, and as done in [@doi:10.48550/arXiv.1407.2600]. |
| 22 | + |
0 commit comments