Defining Custom Properties¶
Default Properties¶
Out of the box, sage-analysis supports the analysis of a number of different properties.
Property | Plot Toggle Name | Description | Property Type |
---|---|---|---|
Stellar mass function | SMF | Number of galaxies with a given stellar mass. | Binned (on stellar mass). |
Baryonic mass function | BMF | Number of galaxies with a given stellar plus cold gas mass. | Binned (on stellar mass). |
Gas mass function | GMF | Number of galaxies with a given cold gas mass. | Binned (on stellar mass). |
Baryonic Tully-Fisher | BTF | Maximum velocity of a galaxy as a function of baryonic (stellar plus cold gas) mass. | Scatter. |
Specific star formation rate | sSFR | Specific star formation rate as a function of stellar mass. | Scatter. |
Gas fraction | gas_frac | Fraction of baryons (stellar plus cold gas) in the form of cold gas as a function of stellar mass. | Scatter. |
Mass metallicity | metallicity | Metallicity as a function of stellar mass. | Scatter. |
Black hole bulge | bh_bulge | Mass of galaxy black hole as a function of galaxy bulge mass. | Scatter. |
Quiescent galaxy population | quiescent | Fraction of galaxies that are quiescent as a function of stellar mass. | Binned (on stellar mass). |
Bulge fraction | bulge_fraction | Fraction of stellar mass in the form of bulge/disk as a function of stellar mass. | Scatter. |
Baryon fraction | baryon_fraction | Baryon fraction in each reservoir (cold, hot, stellar, ejected, intracluster, and black hole) as a function of FoF halo virial mass. | Binned (on FoF halo virial mass). |
Reservoir mass | reservoirs | Amount of mass in each reservoir (cold, hot, stellar, ejected, intracluster, and black hole) as a function of FoF halo virial mass. | Scatter. |
Spatial distribution | spatial | Spatial distribution of galaxies across the simulation box. | Scatter. |
There are also a handful of toggles available to analyse properties over a number of redshifts.
Property | Plot Toggle Name | Description | Binning Type |
---|---|---|---|
Stellar mass function | SMF_history | Number of galaxies with a given stellar mass over multiple redshifts for each model. | Binned (on stellar mass). |
Star formation rate density | SFRD_history | Total star formation rate density across entire simulation box as a function of redshift. | Single. |
Stellar mass density | SMD_history | Total stellar mass density across entire simulation box as a function of redshift. | Single. |
Property Types¶
sage-analysis supports three different property types.
binned¶
These properties are binned against another variable. For example, the stellar mass function counts the number of galaxy in stellar mass bins, the baryon fraction measures the fraction of baryons in each reservoir in friends-of-friend halo virial mass.
A property of this types requires the following fields:
<string denoting the name of the bins>: {
"type": "binned",
"bin_low": <float denoting the lower bound of the bins>,
"bin_high": <float denoting the upper bound of the bins>,
"bin_width": <float denoting the width of each bin>,
"property_names": [<list of strings denoting the name of properties to be initialized>],
}
For example, the stellar mass bins needed for default operation are initialized using:
"stellar_mass_bins": {
"type": "binned",
"bin_low": 8.0,
"bin_high": 12.0,
"bin_width": 0.1,
"property_names": [
"SMF", "red_SMF", "blue_SMF", "BMF", "GMF",
"centrals_MF", "satellites_MF", "quiescent_galaxy_counts",
"quiescent_centrals_counts", "quiescent_satellites_counts",
"fraction_bulge_sum", "fraction_bulge_var",
"fraction_disk_sum", "fraction_disk_var", "SMF_history",
],
}
The bins are accessed using model.properties["<bin_name>"]
(e.g., model.properties["stellar_mass_bins"]
) and
the properties themselves as model.properties["<propety_name>"]
(e.g., model.properties["SMF"]
or
model.properties["quiescent_galaxy_counts"]
. Each property is initialized as a list of 0s.
scatter¶
To get a better picutre of some properties, it is useful to display them as a scatter plot. For example, the
metallicity
property shows the stellar mass vs metallicity for a number of randomly selected galaxies.
A property of this types requires the following fields:
<string denoting a unique name>: {
"type": "scatter",
"property_names": [<list of strings denoting the name of properties to be initialized>],
}
For example, the default scatter properties are initialized using:
"scatter_properties": {
"type": "scatter",
"property_names": [
"BTF_mass", "BTF_vel", "sSFR_mass", "sSFR_sSFR",
"gas_frac_mass", "gas_frac", "metallicity_mass",
"metallicity", "bh_mass", "bulge_mass", "reservoir_mvir",
"reservoir_stars", "reservoir_cold", "reservoir_hot",
"reservoir_ejected", "reservoir_ICS", "x_pos",
"y_pos", "z_pos"
],
}
The properties are accessed as model.properties["<propety_name>"]
(e.g., model.properties["BTF_mass"]
or
model.properties["BTF_vel"]
. Each property is initialized as an empty list.
single¶
Finally, we may wish to summarize a property using a single number over an entire snapshot. For example, the stellar mass density is the sum of stellar mass divided by the volume for a single snapshot. This is useful for tracking properties over a number of snapshots as they can then be depicted as a line on a stellar mass density vs redshift plot.
A property of this types requires the following fields:
<string denoting a unique name>: {
"type": "single",
"property_names": [<list of strings denoting the name of properties to be initialized>],
}
For example, the default single properties are initialized using:
"scatter_properties": {
"type": "single",
"property_names": ["SMD_history", "SFRD_history"],
}
The properties are accessed as model.properties["<propety_name>"]
(e.g., model.properties["SMD_history"]
or
model.properties["SFRD_history"]
. Each property is initialized with a value of 0.0
.