#suggested configuration file for cosmological dm and subhalo catalog #Configuration file for analysing all particles #runs 3DFOF algorithm, calculates many properties #Units currently set to take in as input, Mpc, 1e10 solar masses, km/s, output in same units #To set temporally unique halo ids, alter Snapshot_value=SNAP to appropriate value. Ie: for snapshot 12, change SNAP to 12 #Script calculates several aperture quantities, also several spherical overensity. Currently does NOT #write all the particles within the lowest spherical density. ################################ #input options #set up to use SWIFT HDF input, load dark matter only ################################ HDF_name_convention=6 #HDF SWIFT naming convention Input_includes_dm_particle=1 #include dark matter particles in hydro input Input_includes_gas_particle=0 #include gas particles in hydro input Input_includes_star_particle=0 #include star particles in hydro input Input_includes_bh_particle=0 #include bh particles in hydro input Input_includes_wind_particle=0 #include wind particles in hydro input (used by Illustris and moves particle type 0 to particle type 3 when decoupled from hydro forces). Here shown as example Input_includes_tracer_particle=0 #include tracer particles in hydro input (used by Illustris). Here shown as example Input_includes_extradm_particle=0 #include extra dm particles stored in particle type 2 and type 3, useful for zooms #cosmological run Cosmological_input=1 ################################ #unit options, should always be provided ################################ #units conversion from input input to desired internal unit Length_input_unit_conversion_to_output_unit=1.0 #default code unit, Velocity_input_unit_conversion_to_output_unit=1.0 #default velocity unit, Mass_input_unit_conversion_to_output_unit=1.0 #default mass unit, #assumes input is in 1e10 msun, Mpc and km/s and output units are the same #converting hydro quantities Stellar_age_input_is_cosmological_scalefactor=1 Metallicity_input_unit_conversion_to_output_unit=1.0 Stellar_age_input_unit_conversion_to_output_unit=1.0 Star_formation_rate_input_unit_conversion_to_output_unit=1.0 #set the units of the output by providing conversion to a defined unit #conversion of output length units to kpc Length_unit_to_kpc=1000.0 #conversion of output velocity units to km/s Velocity_to_kms=1.0 #conversion of output mass units to solar masses Mass_to_solarmass=1.0e10 Metallicity_to_solarmetallicity=1.0 Star_formation_rate_to_solarmassperyear=1.0 Stellar_age_to_yr=1.0 #ensures that output is physical and not comoving distances per little h Comoving_units=0 #sets the total buffer size in bytes used to store temporary particle information #of mpi read threads before they are broadcast to the appropriate waiting non-read threads #if not set, default value is equivalent to 1e6 particles per mpi process, quite large #but significantly minimises the number of send/receives #in this example the buffer size is roughly that for a send/receive of 10000 particles #for 100 mpi processes MPI_particle_total_buf_size=100000000 ################################ #search related options ################################ #how to search a simulation Particle_search_type=2 #search all particles, see allvars for other types #for baryon search Baryon_searchflag=0 #if 1 search for baryons separately using phase-space search when identifying substructures, 2 allows special treatment in field FOF linking and phase-space substructure search, 0 treat the same as dark matter particles #for search for substruture Search_for_substructure=1 #if 0, end search once field objects are found #also useful for zoom simulations or simulations of individual objects, setting this flag means no field structure search is run Singlehalo_search=0 #if file is single halo in which one wishes to search for substructure #additional option for field haloes Keep_FOF=0 #if field 6DFOF search is done, allows to keep structures found in 3DFOF (can be interpreted as the inter halo stellar mass when only stellar search is used).\n #minimum size for structures Minimum_size=20 #min 20 particles Minimum_halo_size=35 #if field halos have different minimum sizes, otherwise set to -1. #for field fof halo search FoF_Field_search_type=5 #5 3DFOF search for field halos, 4 for 6DFOF clean up of field halos, 3 for 6DFOF with velocity scale distinct for each halo Halo_3D_linking_length=0.20 #3DFOF linking length in interparticle spacing #for mean field estimates and local velocity density distribution funciton estimator related quantiites, rarely need to change this Cell_fraction = 0.01 #fraction of field fof halo used to determine mean velocity distribution function. Typical values are ~0.005-0.02 Grid_type=1 #normal entropy based grid, shouldn't have to change Nsearch_velocity=32 #number of velocity neighbours used to calculate local velocity distribution function. Typial values are ~32 Nsearch_physical=256 #numerof physical neighbours from which the nearest velocity neighbour set is based. Typical values are 128-512 Local_velocity_density_approximate_calculation=2 #approximative and mpi local calculation of density, less accurate much faster. #for substructure search, rarely ever need to change this FoF_search_type=1 #default phase-space FOF search. Don't really need to change Iterative_searchflag=1 #iterative substructure search, for substructure find initial candidate substructures with smaller linking lengths then expand search region Outlier_threshold=2.5 #outlier threshold for a particle to be considered residing in substructure, that is how dynamically distinct a particle is. Typical values are >2 Substructure_physical_linking_length=0.10 #physical linking length. IF reading periodic volumes in gadget/hdf/ramses, in units of the effective inter-particle spacing. Otherwise in user defined code units. Here set to 0.10 as iterative flag one, values of 0.1-0.3 are typical. Velocity_ratio=2.0 #ratio of speeds used in phase-space FOF Velocity_opening_angle=0.10 #angle between velocities. 18 degrees here, typical values are ~10-30 Velocity_linking_length=0.20 #where scaled by structure dispersion Significance_level=1.0 #how significant a substructure is relative to Poisson noise. Values >= 1 are fine. #for iterative substructure search, rarely ever need to change this Iterative_threshold_factor=1.0 #change in threshold value when using iterative search. Here no increase in threshold if iterative or not Iterative_linking_length_factor=2.0 #increase in final linking final iterative substructure search will be sqrt(2.25)*this factor Iterative_Vratio_factor=1.0 #change in Vratio when using iterative search. no change in vratio Iterative_ThetaOp_factor=1.0 #change in velocity opening angle. no change in velocity opening angle #for checking for halo merger remnants, which are defined as large, well separated phase-space density maxima Halo_core_search=2 # searches for separate 6dfof cores in field haloes, and then more than just flags halo as merging, assigns particles to each merging "halo". 2 is full separation, 1 is flagging, 0 is off #if searching for cores, linking lengths. likely does not need to change much Use_adaptive_core_search=0 #calculate dispersions in configuration & vel space to determine linking lengths Use_phase_tensor_core_growth=2 #use full stepped phase-space tensor assignment Halo_core_ellx_fac=0.7 #how linking lengths are changed when searching for local 6DFOF cores, Halo_core_ellv_fac=2.0 #how velocity lengths based on dispersions are changed when searching for local 6DFOF cores Halo_core_ncellfac=0.005 #fraction of total halo particle number setting min size of a local 6DFOF core Halo_core_num_loops=8 #number of loops to iteratively search for cores Halo_core_loop_ellx_fac=0.75 #how much to change the configuration space linking per iteration Halo_core_loop_ellv_fac=1.0 #how much to change the velocity space linking per iteration Halo_core_loop_elln_fac=1.2 #how much to change the min number of particles per iteration Halo_core_phase_significance=2.0 #how significant a core must be in terms of dispersions (sigma) significance #merge substructures if the overlap in phase-space by some fraction of their dispersion #here distance has to be less than 0.25 sigma Structure_phase_merge_dist=0.25 #also merge structures with background if overlap heavily in phase-space based on dispersions. Apply_phase_merge_to_host=1 ################################ #Unbinding options (VELOCIraptor is able to accurately identify tidal debris so particles need not be bound to a structure) ################################ #unbinding related items Unbind_flag=1 #run unbinding #objects must have particles that meet the allowed kinetic to potential ratio AND also have some total fraction that are completely bound. Unbinding_type=0 #alpha factor used to determine whether particle is "bound" alaph*T+W<0. For standard subhalo catalogues use >0.9 but if interested in tidal debris 0.2-0.5 Allowed_kinetic_potential_ratio=0.95 Min_bound_mass_frac=0.65 #minimum bound mass fraction #run unbinding of field structures, aka halos. This is useful for sams and 6DFOF halos but may not be useful if interested in 3DFOF mass functions. Bound_halos=0 #don't keep background potential when unbinding Keep_background_potential=1 #use all particles to determine velocity frame for unbinding Frac_pot_ref=1.0 Min_npot_ref=20 #reference frame only meaningful if calculating velocity frame using subset of particles in object. Can use radially sorted fraction of particles about minimum potential or centre of mass Kinetic_reference_frame_type=0 ################################ #Cosmological parameters #this is typically overwritten by information in the gadget/hdf header if those input file types are read ################################ h_val=1.0 Omega_m=0.3 Omega_Lambda=0.7 Critical_density=1.0 Virial_density=200 #so-called virial overdensity value Omega_b=0. #no baryons ################################ #Calculation of properties related options ################################ Inclusive_halo_masses=3 #calculate inclusive masses for halos using full Spherical overdensity apertures once all substructures have been found (if substructures are searched for). #when calculating properties, for field objects calculate inclusive masses Iterate_cm_flag=0 #do not interatively find the centre-of-mass, giving bulk centre of mass and centre of mass velocity. Sort_by_binding_energy=1 #sort by binding energy Reference_frame_for_properties=2 #use the position of the particle with the minimum potential as the point about which properties should be calculated. #calculate more (sub)halo properties (like angular momentum in spherical overdensity apertures, both inclusive and exclusive) Extensive_halo_properties_output=1 #aperture related (list must be in increasing order and terminates with , ie: 1,2,3, ) #calculate aperture masses Calculate_aperture_quantities=1 Number_of_apertures=6 Aperture_values_in_kpc=3,5,10,30,50,100, Number_of_projected_apertures=3 Projected_aperture_values_in_kpc=10,50,100, #spherical overdensity related quantities Virial_density=500 #user defined virial overdensity. Note that 200 rho_c, 200 rho_m and BN98 are already calculated. #number of spherical overdensity thresholds Number_of_overdensities=5 Overdensity_values_in_critical_density=25,100,500,1000,2500, #calculate radial profiles Calculate_radial_profiles=1 Number_of_radial_profile_bin_edges=20 #default radial normalisation log rad bins, in proper kpc Radial_profile_norm=0 Radial_profile_bin_edges=-2.,-1.87379263,-1.74758526,-1.62137789,-1.49517052,-1.36896316,-1.24275579,-1.11654842,-0.99034105,-0.86413368,-0.73792631,-0.61171894,-0.48551157,-0.3593042,-0.23309684,-0.10688947,0.0193179,0.14552527,0.27173264,0.39794001, ################################ #output related ################################ Write_group_array_file=0 #write a group array file Separate_output_files=0 #separate output into field and substructure files similar to subfind Binary_output=2 #binary output 1, ascii 0, and HDF 2 #do not output particles residing in the spherical overdensity apertures of halos, only the particles exclusively belonging to halos Spherical_overdensity_halo_particle_list_output=0 #halo ids are adjusted by this value * 1000000000000 (or 1000000 if code compiled with the LONGINTS option turned off) #to ensure that halo ids are temporally unique. So if you had 100 snapshots, for snap 100 set this to 100 and 100*1000000000000 will #be added to the halo id as set for this snapshot, so halo 1 becomes halo 100*1000000000000+1 and halo 1 of snap 0 would just have ID=1 #ALTER THIS as part of a script to get temporally unique ids Snapshot_value=SNAP ################################ #other options ################################ Verbose=0 #how talkative do you want the code to be, 0 not much, 1 a lot, 2 chatterbox