This directory contains initial conditions generated for the COLIBRE suite of simulations. The cosmology, resolution and phases are the same as used in the original EAGLE suite. The only difference is the file format, adapted for SWIFT. All COLIBRE boxes have (independent of the resolution): - the same low entropy floor (10 K at 0.1 cm-3) - the same BH seed mass (1e5 Msol) --- VELOCIraptor can be run on the output. The code is compiled using cmake -DVR_USE_GAS=ON -DVR_USE_STAR=ON -DV_USE_BH=ON and run using stf -C ../vrconfig_3dfof_subhalos_SO_hydro.cfg -i colibre_0035 -o halos_0035 -I 2 --- SOAP can be run once the VELOCIraptor catalogues have been generated. A script for generating the membership files can be found at ${SOAP_dir}/scripts/COLIBRE/group_membership.sh. To then produce the SOAP catalogues use the script at ${SOAP_dir}/scripts/COLIBRE/halo_properties.sh. These scripts rely on the COLIBRE parameter file in ${SOAP_dir}/parameter_files, which defines the properties to calculate and the halo definitions to use. ---- A note on CHIMES and SPLITCHIMES cooling: If you are using the CHIMES or SPLITCHIMES cooling modes, the example parameter files that are included here are set up to use the latest Cloudy cooling tables. These include several changes compared to the original Ploeckinger & Schaye (2020) cooling model, for example we now include turbulence in the Jeans column density, we saturate the ISRF and CR rate at specified column densities, and the CR rate scales linearly with column density. To use the original Cloudy tables with CHIMES or SPLITCHIMES, as well as specifying the paths to the original tables you will also need to change some of the parameters under CHIMESCooling as follows: turbulent_velocity_dispersion_km_p_s: 5.0 colibre_use_turbulent_jeans_length: 0 colibre_saturate_radiation_field: 0 colibre_saturate_cr_rate: 0 colibre_cr_plaw_index: 1.4 rad_field_norm_factor: 0.1 ---- Building Swift with CHIMES: The CHIMES package is implemented in Swift as a git submodule. If you want to build Swift with the CHIMES cooling mode, you will need to run the following git commands from the main Swift directory before you run the configure script: git submodule init git submodule update This will download the required CHIMES source files from the CHIMES public repository. ---- Recommended configure options: single node runs (table cooling): ./configure --with-subgrid=COLIBRE --with-number-of-SNII-rays=8 --with-number-of-SNIa-rays=8 --with-hydro=sphenix --with-kernel=quartic-spline --with-tbbmalloc --disable-hand-vec --enable-ipo --with-stars-ghost-ntask=14 --with-stars-self-ntask=14 single node runs (CHIMES cooling): ./configure --with-subgrid=COLIBRE-CHIMES --with-number-of-SNII-rays=8 --with-number-of-SNIa-rays=8 --with-hydro=sphenix --with-kernel=quartic-spline --with-tbbmalloc --disable-hand-vec --enable-ipo --with-stars-ghost-ntask=14 --with-stars-self-ntask=14 --with-sundials --enable-compiler-warnings parallel runs (table cooling): ./configure --with-subgrid=COLIBRE --with-number-of-SNII-rays=8 --with-number-of-SNIa-rays=8 --with-hydro=sphenix --with-kernel=quartic-spline --with-tbbmalloc --disable-hand-vec --enable-ipo --with-parmetis --with-stars-ghost-ntask=14 --with-stars-self-ntask=14 parallel runs (CHIMES cooling): ./configure --with-subgrid=COLIBRE-CHIMES --with-number-of-SNII-rays=8 --with-number-of-SNIa-rays=8 --with-hydro=sphenix --with-kernel=quartic-spline --with-tbbmalloc --disable-hand-vec --enable-ipo --with-parmetis --with-stars-ghost-ntask=14 --with-stars-self-ntask=14 --with-sundials --enable-compiler-warnings The `--with-stars-X-ntask=14` options above should match the number of threads used by SWIFT when running for optimal performance; the example assumes a run using 14 threads (per rank), so running SWIFT with `--threads=14`. The reason of adding `--enable-compiler-warnings' next to `--with-sundials' is to ensure that sundials code-related warnings do not result in swift crashing during compilation