-
Notifications
You must be signed in to change notification settings - Fork 13
/
Makefile_options
140 lines (113 loc) · 5.81 KB
/
Makefile_options
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# List of Makefile options
# see also routine "check_options" in main.c...
# Options that control the SA model
# Options that control output
OPT += -DOVERWRITE_OUTPUT # overwrite output files if they exist (otherwise will quit without overwriting)
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 += -DGALAXYTREE # This will enable output of full galaxy merger trees, implicitly sets NOUT to maximum value
#OPT += -DLIGHT_OUTPUT # produces minimal output
#OPT += -DMBPID # writes out the most bound particle ID of the halo last occupied by this galaxy
#OPT += -DHALOPROPERTIES # Output halo spin and other properties
#OPT += -DMETALS_SELF # Keeps track of the fraction of metals that originate in the galaxy (as opposed to being accreted)
#OPT += -DCONTINUOUS_TREES # Make galaxy ids run in continuous stream
#OPT += -DFIX_OUTPUT_UNITS # if set, the outputs will have their units fixed so that no hidden factors of "little-h" remain.
#OPT += -DTRACK_BURST # track amount of stars formed in bursts
# Options that control speed and memory usage
OPT += -DUPDATETYPETWO # This updates the positions of type 2 galaxies when the galaxies are written to file
#OPT += -DPRELOAD_TREES # this will load all the trees of a file in memory, and cache them (useful for MCMC)
#OPT += -DPARALLEL
#OPT += -DLOADIDS # Load dbids files
#OPT += -DGUO10
#OPT += -DGUO13
#OPT += -DHENRIQUES13
#OPT += -DMRII
# 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
endif
# Option to switch on MCMC parameter hunting
#OPT += -DMCMC
ifeq (MCMC,$(findstring MCMC,$(OPT)))
OBJS += ./code/mcmc.o
OBJS += ./code/mcmc_likelihood.o
OBJS += ./code/save_mcmc.o
INCL += ./code/mcmc_vars.h
INCL += ./code/mcmc_proto.h
endif
###########################
### SPECPHOT_PROPERTIES ###
###########################
OPT += -DCOMPUTE_SPECPHOT_PROPERTIES
ifeq (COMPUTE_SPECPHOT_PROPERTIES,$(findstring COMPUTE_SPECPHOT_PROPERTIES,$(OPT)))
OBJS += ./code/model_spectro_photometric.o
### 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
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
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 += -DICL # output magnitudes for ICL
#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
### 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
#Define NMAG
ifeq (FULL_SPECTRA,$(findstring FULL_SPECTRA,$(OPT)))
ifeq (M05,$(findstring M05,$(OPT)))
OPT += -DNMAG=1221
endif
ifeq (BC03,$(findstring BC03,$(OPT)))
OPT += -DNMAG=1238
endif
ifeq (CB07,$(findstring CB07,$(OPT)))
OPT += -DNMAG=1221
endif
else #IF NOT DEFINED FULL_SPECTRA
OPT += -DNMAG=5
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
#OPT += -DMETALRICHWIND
OBJS += ./code/model_yields.o
OBJS += ./code/yields_read_tables.o
OBJS += ./code/yields_elements.o
OBJS += ./code/yields_integrals.o
OBJS += ./code/yields_calc_SNe_rates.o
ifeq (INDIVIDUAL_ELEMENTS,$(findstring INDIVIDUAL_ELEMENTS,$(OPT)))
#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 += -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 Gaussian 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
# Debugging options
#OPT += -DMASS_CHECKS # Check for mass conservation at every stage of galaxy building