graphicle.transform.split_momentum(momentum: MomentumArray, z: float, angle: float, axis: tuple[float, float] | SphericalAngle) MomentumArray[source]

Splits the momentum of the given particle into two momenta. Energy and 3-momentum is conserved. Hardness and collinearity of the split are determined by z and angle.

New in version 0.4.0.

Parameters:
momentum : MomentumArray

Four-momentum prior to splitting. Must contain only one element.

z : float

Energy fraction retained by the first child after the split. Must be in range 0.0 < z <= 0.5.

angle : float

Angular displacement of the first child after the split.

axis : SphericalAngle or tuple[float, float], optional

The theta and phi values of the axis vector about which to rotate the momentum. If None, will choose the axis normal to the plane swept out by the hardest and softest momentum constituents.

Returns:

Four-momenta of two particles produced by splitting.

Return type:

MomentumArray

See also

soft_hard_axis

Axis of plane swept by softest and hardest momenta.

rotation_matrix

Matrix to rotate 3-vectors about a given axis.


Last update: Jun 27, 2025