# List of Makefile options # see also routine "check_options" in main.c... # Options that control output OPT += -DOVERWRITE_OUTPUT # overwrite output files if they exist (otherwise will quit without overwriting) OPT += -DNOUT=28 # This sets the number of galaxy output times. IGNORED IN GALAXYTREE MODE. VALUE CORRESPONDS TO NO. OF ROWS READ FROM desired_outputsnaps FILE #OPT += -DNOUT=1 # This sets the number of galaxy output times. IGNORED IN GALAXYTREE MODE. VALUE CORRESPONDS TO NO. OF ROWS READ FROM desired_outputsnaps FILE OPT += -DPARALLEL #OPT += -DGALAXYTREE # This will enable output of full galaxy merger trees, implicitly sets NOUT to maximum value #OPT += -DLOADIDS # Load dbids files OPT += -DUPDATETYPETWO # This updates the positions of type 2 galaxies when the galaxies are written to file (requires aux files to be read) OPT += -DTRACK_MASSGROWTH_CHANNELS #OPT += -DTRACK_SFH_MASSGROWTH_CHANNELS # To run with different dark matter simulation #OPT += -DMRII #OPT += -DCATERPILLAR #OPT += -DFAST_TESTING_MODE #OPT += -DCHECK_SFH_AND_RINGS #OPT += -DCHECK_NO_NEGATIVE_VALUES OPT += -DTRACK_SPLASHBACKS # predefined some models (to be run with the corresponding input_***.par file) #OPT += -DGUO10 #OPT += -DGUO13 #OPT += -DHENRIQUES13 #OPT += -DHENRIQUES15 # Debugging options #OPT+= -DDEBUG #OPT+= -DDEBUG_PRINT #OPT+= -DDEBUG_PRINT_TO_CONSOLE #OPT+= -DDEBUG_READ_AND_CHECK #OPT += -DMASS_CHECKS # Check for mass conservation at every stage of galaxy building # Options that control the SA model OPT += -DDISRUPTION # Instantaneously and completely disrupt type 2s #OPT += -DHT09_DISRUPTION # Henriques & Thomas 2009 tidal disruption of stars in satellite galaxies ifeq (HT09_DISRUPTION,$(findstring HT09_DISRUPTION,$(OPT))) OBJS += ./code/model_HT09_disrupt.o endif OPT += -DMERGE01 # allows type 1s to merge with type 0s OPT += -DINFALL_UPDATE #search also outside rvir to compute infall mass OPT += -DH2_AND_RINGS ifeq (H2_AND_RINGS,$(findstring H2_AND_RINGS,$(OPT))) OBJS += ./code/model_radial_flow.o OPT += -DOUTPUT_RINGS OPT += -DRINGS_IN_BULGES endif # record star formation histories - used for post-process mags and detailed chemical enrichment OPT += -DSTAR_FORMATION_HISTORY ifeq (STAR_FORMATION_HISTORY,$(findstring STAR_FORMATION_HISTORY,$(OPT))) OBJS += ./code/star_formation_history.o OPT += -DOUTPUT_SFH endif ########################### ### SPECPHOT_PROPERTIES ### ########################### OPT += -DCOMPUTE_SPECPHOT_PROPERTIES ifeq (COMPUTE_SPECPHOT_PROPERTIES,$(findstring COMPUTE_SPECPHOT_PROPERTIES,$(OPT))) OBJS += ./code/model_spectro_photometric.o OPT += -DOUTPUT_REST_MAGS # output rest-frame magnitudes #OPT += -DCOMPUTE_OBS_MAGS # compute observer-frame magnitudes #OPT += -DOUTPUT_OBS_MAGS # adds observer-frame magnitudes to the standard outptus (either tree or snapshot formats) #OPT += -DOUTPUT_MOMAF_INPUTS # writes out extra files which are std. input files for MoMaF (works both with and without galaxytree option) #OPT += -DKITZBICHLER # does MOMAF outputs with forward and backwards k-corrections #OPT += -DICL # output magnitudes for ICL ### Options that control the Spectral synthesis OPT += -DM05 #use Maraston 2005 stellar populations need to change input.par #OPT += -DBC03 #use Bruzual & Charlot 2003 stellar populations need to change input.par #OPT += -DCB07 #use Charlot & Bruzual 2007 stellar populations need to change input.par OPT += -DPHOTTABLES_PRECOMPUTED #OPT += -DSPEC_PHOTABLES_ON_THE_FLY ifeq (SPEC_PHOTABLES_ON_THE_FLY,$(findstring SPEC_PHOTABLES_ON_THE_FLY,$(OPT))) #OPT += -DFULL_SPECTRA OPT += -DAB #AB MAGNITUDES #OPT += -DVEGA #VEGA MAGNITUDES OBJS += ./code/model_spectro_photometric_onthefly_initialize.o OBJS += ./code/model_spectro_photometric_onthefly_misc.o endif ### POST PROCESS MAGS ifeq (STAR_FORMATION_HISTORY,$(findstring STAR_FORMATION_HISTORY,$(OPT))) OPT += -DPOST_PROCESS_MAGS ifeq (POST_PROCESS_MAGS,$(findstring POST_PROCESS_MAGS,$(OPT))) OBJS += ./code/post_process_spec_mags.o endif endif # STAR_FORMATION_HISTORY #Define NMAG ifeq (FULL_SPECTRA,$(findstring FULL_SPECTRA,$(OPT))) ifeq (M05,$(findstring M05,$(OPT))) OPT += -DNMAG=1221 endif ifeq (BC03,$(findstring BC03,$(O/net/bootes/scratch-ssd/SAM/test4/MR/PT))) OPT += -DNMAG=1238 endif ifeq (CB07,$(findstring CB07,$(OPT))) OPT += -DNMAG=1221 endif else #IF NOT DEFINED FULL_SPECTRA OPT += -DNMAG=40 endif #FULL_SPECTRA endif ### COMPUTE_SPECPHOT_PROPERTIES # Chemical enrichment of individual element yields OPT += -DDETAILED_METALS_AND_MASS_RETURN ifeq (DETAILED_METALS_AND_MASS_RETURN,$(findstring DETAILED_METALS_AND_MASS_RETURN,$(OPT))) OPT += -DFEEDBACK_COUPLED_WITH_MASS_RETURN OPT += -DINDIVIDUAL_ELEMENTS ifeq (INDIVIDUAL_ELEMENTS,$(findstring INDIVIDUAL_ELEMENTS,$(OPT))) OPT += -DOUTPUT_ELEMENTS #OPT += -DMAINELEMENTS #If on, then only H, He, O, Mg and Fe are tracked. If off, all elements are tracked (H,He,C,N,O,Ne,Mg,Si,S,Ca,Fe) endif #OPT += -DBULGE_TO_COLD OPT += -DMETALRICHWIND #OPT += -DGASDENSITYFWIND OBJS += ./code/model_yields.o OBJS += ./code/yields_read_tables.o OBJS += ./code/yields_integrals.o OBJS += ./code/yields_calc_SNe_rates.o #OPT += -DSNIATOHOT #OPT += -DNORMALIZE #(ONLY WORKS WITH MAINELEMENTS OFF) If on, elements and total metals are normlaised to total component masses. OPT += -DPORTINARI #Use Portinari et al. (1998) SN-II yield tables. #OPT += -DCHIEFFI #Use Chieffi & Limongi (2007) SN-II yield tables. OPT += -DDTD #If on, a delay time distribution (DTD) is used for SNIa enrichment. If off, the Matteucci & Greggio (1986) formalism is used. ifeq (DTD,$(findstring DTD,$(OPT))) #OPT += -DBIMODALDTD #Use the Mannucci et al. (2006) delay time distribution. ~Half SNe-Ia die within ~100 Myrs. Rest distributed out to ~11 Gyrs. #OPT += -DGAUSSIANDTD #Use a Gau/net/bootes/scratch-ssd/SAM/test4/MR/ssian delay time distribution, centered on 2 Gyrs. OPT += -DPOWERLAWDTD #Use a declining power-law delay time distribution of slope -1.12. #OPT += -DRUITERDTD #OPT += -DINSTANTANEOUS_RECYCLE #Recycle all metals in one time step to resemble instantaneous recycling approximation endif endif