SubhaloAlignment

class halotools.empirical_models.SubhaloAlignment(halocat=None, satellite_alignment_strength=1.0, prim_gal_axis='major', rotate_relative=True, **kwargs)[source]

Bases: object

alignment model for satellite galaxies in sub-halos aligning with their respective subhalos most of the functionality here is copied from SatelltieAlignment by Duncan Campbell.

Notes

When using this module, you must use SubhaloPhaseSpace as the phase space model and you must use the alignment_inherited_subhalo_props_dict as the inherited_subhalo_props_dict. This will ensure the proper subhalo value columns are included in the galaxy table

Parameters:
satellite_alignment_strengthfloat

[-1,1] bounded number indicating alignment strength

prim_gal_axisstring, optional

string indicating which galaxy principle axis is correlated with the halo alignment axis. The options are: major, intermediate, and minor.

rotate_relativebool, optional

bool indicating whether any subhalos with real_subhalo = False should be rotated to preserve the relative orientation they had to their true host halo with the current host halo. Default is True, which will rotate the false subhalos to keep the same relative orientation with respect to the new host halo. A value of False will keep their original values.

alignment_keyslist

A list of strings indicating the keywords for the x,y- and z components of the halo alignment vector. Deafult is [‘halo_axisA_x’, ‘halo_axisA_y’, ‘halo_axisA_z’].

Notes

If the kwargs or table contains a key “alignment_strength”, when populating a mock, this will be used instead of the satellite_alignment_stregth parameter passed during intialization. This is how varying the alignment strength as a function of galaxy/halo properties is handeled.

Unlike SatelliteAlignment, this alignment model needs a table to exist prior to being called. This is because the

Methods Summary

assign_satellite_orientation(**kwargs)

Assign a set of three orthoganl unit vectors indicating the orientation of the galaxies' major, intermediate, and minor axis

Methods Documentation

assign_satellite_orientation(**kwargs)[source]

Assign a set of three orthoganl unit vectors indicating the orientation of the galaxies’ major, intermediate, and minor axis

Parameters:
halo_axisA_x, halo_axisA_y, halo_axisA_zarray_like

x,y,z components of halo alignment axis

Returns:
major_aixs, intermediate_axis, minor_axisnumpy nd.arrays

arrays of galaxies’ axes