diff --git a/example/test_problem/Hydro/ClusterMerger/README.md b/example/test_problem/Hydro/ClusterMerger/README.md index 421288f87..6b2f6d9ef 100644 --- a/example/test_problem/Hydro/ClusterMerger/README.md +++ b/example/test_problem/Hydro/ClusterMerger/README.md @@ -14,6 +14,86 @@ - [[Miscellaneous Options | Installation: Simulation-Options#miscellaneous-options]] +# Default setup +1. Units: + 1. External (for `Input__TestProb` only) + | [L] | [M] | + |--- |--- | + | kpc | km/s | + + 2. Internal (for all other input files and internal usage) + | [L] | [M] | [T] | [V] = [L]/[T] | [D] = [M]/[L]^3 | + |--- |--- |--- |--- |--- | + | kpc | 1.0e14 Msun | 1.0e1 Gyr | ~ 9.8e1 km/s | ~ 6.8e-27 g/cm^3 | + +2. Default resolution ~ 15 kpc ([[MAX_LEVEL | Runtime-Parameters:-Refinement#MAX_LEVEL]] = 3) + + +# Note +1. Mimic the merging cluster simulation setup of Flash provided by John ZuHone + [John ZuHone, 2011, ApJ, 728, 54](https://dx.doi.org/10.1088/0004-637X/728/1/54) + [(arXiv:1004.3820)](https://arxiv.org/abs/1004.3820), but the initial conditions + are somewhat different. + +2. Run the script `download_ic.sh` to download the initial condition files for this test. + These files are generated by John ZuHone. + +3. Alternatively, you can construct the ICs yourself using the `cluster_generator` package. + + Install cluster_generator from GitHub and run the included `gamer_cluster_ics.py` script + 1. Clone the git repository to somewhere else probably + ```bash + git clone https://github.com/jzuhone/cluster_generator + ``` + 2. Move to the directory + ```bash + cd cluster_generator + ``` + 3. [Optional] Update SciPy to version >= 1.13.0 + 4. Install package + ```bash + python -m pip install . + ``` + 5. Go back to the `gamer_cluster_ics.py` script and run with `python gamer_cluster_ics.py` + +> [!WARNING] +> This package is under development and currently has poor documentation, contact [jzuhone@gmail.com](mailto:jzuhone@gmail.com) for details + +4. No need to set [[PAR_NPAR | Particles#PAR_NPAR ]] in `Input__Parameter` since it will be reset automatically. + +5. Some handy yt analysis scripts and a notebook are put in `yt_script` + + For example, to generate the slice plots, one can + + 1. Move to directory + ```bash + cd yt_script + ``` + 2. Edit `idx_start` and `idx_end` in `plot_slice-z.py`. + 3. Execute the script + ```bash + python plot_slice-z.py + ``` + or + ```bash + mpirun -np NUMBER_OF_CPU_CORES_YOU_HAVE python plot_slice-z.py + ``` +# Compilation flags +- Must enable + - [[MODEL=HYDRO | Installation: Simulation-Options#MODEL]] + - [[GRAVITY | Installation: Simulation-Options#GRAVITY]] + - [[PARTICLE | Installation: Simulation-Options#PARTICLE]] + - [[SUPPORT_HDF5 | Installation: Simulation-Options#SUPPORT_HDF5]] + - [[NPAR_ATT_USER=0 | Installation: Simulation-Options#NPAR_ATT_USER]] + - [[NCOMPT_PASSIVE_USER | Installation: Simulation-Options#NCOMP_PASSIVE_USER]]>= `Merger_cool_NumHalos` + `Merger_coll_UseMetals` + (these are parameters in Input__TestProb) +- Must disable + - [[COMOVING | Installation: Simulation-Options#COMOVING]] +- Available options + - [[MHD | Installation: Simulation-Options#MHD]] + - [[Miscellaneous Options | Installation: Simulation-Options#miscellaneous-options]] + + # Default setup 1. Units: 1. External (for `Input__TestProb` only)