A comprehensive suite for identifying galaxies and halos from RAMSES cosmological simulation outputs. The pipeline processes raw simulation data through domain decomposition, halo finding, and galaxy identification.
RAMSES Output → NewDD → opFoF → NewGalFinder → Galaxy Catalogs
(Slab) (Halo) (Galaxy)
| Directory | Description |
|---|---|
| NewDD | RAMSES domain decomposition into Z-directional slabs for parallel processing |
| opFoF | MPI-parallel Friends-of-Friends (FoF) halo finder |
| NewGalFinder | Parallel galaxy/subhalo finder using density peaks and water-shedding |
| GalCenter | Galaxy center identification utilities |
# Default configuration (Intel OneAPI mpiicx/mpiifx compilers, optimized build)
./configure
# Debug build
./configure --debug
# Custom compilers and FFTW path
./configure --cc=mpicc --fc=mpifort --fftw=/path/to/fftw
# See all options
./configure --helpmake all # Build everything
# Or build individually:
make galcenter # Build GalCenter only
make galfinder # Build NewGalFinder only
make newdd # Build NewDD onlympirun -np 8 ./NewDD/newdd.exe <snapshot> <nsplit>cd opFoF
make this
mpirun -np 8 ./opfof.exe <snapshot> <nfiles>mpirun -np 64 ./NewGalFinder/gfind.exe <snapshot>The project uses a configure script to generate Makefiles for all subdirectories from Makefile.in templates.
| File | Description |
|---|---|
configure |
Build configuration script |
Makefile.in |
Top-level Makefile template |
GalCenter/Makefile.in |
GalCenter Makefile template |
NewGalFinder/Makefile.in |
NewGalFinder Makefile template |
NewDD/Makefile.in |
NewDD Makefile template |
| Option | Default | Description |
|---|---|---|
--cc=CC |
mpiicx |
C compiler for GalCenter/NewDD |
--fc=FC |
mpiifx |
Fortran compiler for GalCenter/NewDD |
--galfinder-cc=CC |
mpiicx |
C compiler for NewGalFinder |
--galfinder-fc=FC |
mpiifx |
Fortran compiler for NewGalFinder |
--fftw=PATH |
/home/kjhan/local |
FFTW installation path |
--opt=FLAGS |
-O3 |
Optimization flags |
--debug |
- | Use -g debug flags |
--openmp=FLAGS |
-qopenmp |
OpenMP flags |
--no-openmp |
- | Disable OpenMP |
Per-component options (e.g., --galcenter-nmeg=N, --galfinder-nchem=N, --newdd-ndust=N) are also available. Run ./configure --help for the full list.
ramses.h- RAMSES data structure definitionsparams.h- Algorithm parameterslibmyram.a- Custom memory management library
Each subdirectory contains detailed documentation:
- NewDD/README.md - Domain decomposition details
- opFoF/README.md - FoF algorithm and usage
- NewGalFinder/README.md - Galaxy finder algorithm
- MPI (OpenMPI, MPICH, or Intel MPI)
- Intel or GCC compilers with OpenMP support
- FFTW3 library (for NewGalFinder)
| Quantity | Unit |
|---|---|
| Position | comoving Mpc/h |
| Velocity | km/s |
| Mass | Msun/h |
For scientific research purposes.