Nyx icon indicating copy to clipboard operation
Nyx copied to clipboard

Halo finder

Open nataraj2 opened this issue 7 months ago • 0 comments

In this PR

  1. parameters halo_component_threshold and halo_extrema_threshold are now being read in, and passed into Reeber.
  2. includes changes to Reeber required for the halo finder. ie. changes to Util/reeber/src/reeber.cpp. Ideally, Reeber should be a git submodule, which will be done in a later PR.
  3. An example of the halo finder for dark matter particle simulations is in Exec/HaloFinder. Note that the IC file list should be supplied through a text file specified in the inputs with the variable nyx.binary_particle_file.
  4. VTK files are written for visualization of the halo particles. Simple binary files are written as well. Source/IO/Nyx_output.cpp has the routines.
  5. Lightcone shells and halo output files are written into a directory Output. Output is turned off by default. Options are provided in the inputs to write the output - nyx.write_lightcones_and_halos_vtk and nyx.write_lightcones_and_halos_simplebinary
  6. Python scripts - Read_SimpleBinary_Halos.py and Read_SimpleBinaryLightcones.py are included in Exec/HaloFinder - this can read the simple binary file output for halos and lightcones.

Attached images show the lightcone shells (gray) and halo locations within the shell (red) at z=5.59 and z=0.99 for a 128x128x128 mesh size run, with halo_comp_threshold=3.0 and halo_extrema_threshold=8.0 (just for testing). The domain box is shown as well.

HaloFinder_Test_128x128x128_comp_3_extrema_8 HaloFinder_Test_128x128x128_comp_3_extrema_8_No2

nataraj2 avatar May 22 '25 20:05 nataraj2