vector._compute.lorentz package#
Compute functions for lorentz vectors, which is to say 4D.
Each function is a module with variants for each coordinate system (or combination of coordinate systems) as functions within the module.
Each module has a dispatch_map
(dict) that maps coordinate types to the
appropriate function and its return type(s), and a dispatch
(function) uses
this information to call the right function and return the right type.
The compute functions themselves are restricted to a minimum of Python features: no statements other than assignments and one return, no assumptions about data types. In particular, if statements and loops are not allowed. The tests/test_compute_features.py suite ensures that these rules are followed (though that set of allowed features can be expanded if it doesn’t prevent the addition of new backends).
Submodules#
- vector._compute.lorentz.add module
- vector._compute.lorentz.beta module
- vector._compute.lorentz.boost_beta3 module
- vector._compute.lorentz.boost_p4 module
- vector._compute.lorentz.boostX_beta module
- vector._compute.lorentz.boostX_gamma module
- vector._compute.lorentz.boostY_beta module
- vector._compute.lorentz.boostY_gamma module
- vector._compute.lorentz.boostZ_beta module
- vector._compute.lorentz.boostZ_gamma module
- vector._compute.lorentz.deltaRapidityPhi module
- vector._compute.lorentz.deltaRapidityPhi2 module
- vector._compute.lorentz.dot module
- vector._compute.lorentz.equal module
- vector._compute.lorentz.Et module
- vector._compute.lorentz.Et2 module
- vector._compute.lorentz.gamma module
- vector._compute.lorentz.is_lightlike module
- vector._compute.lorentz.is_spacelike module
- vector._compute.lorentz.is_timelike module
- vector._compute.lorentz.isclose module
- vector._compute.lorentz.Mt module
- vector._compute.lorentz.Mt2 module
- vector._compute.lorentz.not_equal module
- vector._compute.lorentz.rapidity module
- vector._compute.lorentz.scale module
- vector._compute.lorentz.subtract module
- vector._compute.lorentz.t module
- vector._compute.lorentz.t2 module
- vector._compute.lorentz.tau module
- vector._compute.lorentz.tau2 module
- vector._compute.lorentz.to_beta3 module
- vector._compute.lorentz.transform4D module
- vector._compute.lorentz.unit module