sphericity_from_inertia_tensors

halotools.mock_observables.sphericity_from_inertia_tensors(inertia_tensors)[source] [edit on github]

Calculate the sphericity \(\mathcal{S}_{\rm i}\) of each of the \(i=1,\dots,N_{\rm points}\) mass distributions defined by the input inertia tensors \(\mathcal{I}_{\rm i}\).

Sphericity \(0 < \mathcal{S} <= 1\) is defined in terms of the eigenvalues of the inertia tensor \(\mathcal{I}\), denoted by \(\lambda_{a}, \lambda_{b}, \lambda_{c}\), from largest to smallest:

\[\mathcal{S}\equiv\lambda_{c}/\lambda_{a}\]
Parameters:

inertia_tensors : ndarray

Numpy array of shape (npts, 3, 3) storing a collection of 3x3 symmetric positive-definite matrices

Returns:

sphericity : ndarray

Numpy array of shape (npts, ) storing the sphericity of each inertia tensor

Notes

The function inertia_tensor_per_object calculates the inertia tensors \(\mathcal{I}_{\rm i}\) for a collection of points inside a 3d mass distribution.