vector 1.5.2__tar.gz → 1.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. {vector-1.5.2 → vector-1.6.1}/.github/CONTRIBUTING.md +2 -2
  2. {vector-1.5.2 → vector-1.6.1}/.github/workflows/cd.yml +1 -1
  3. {vector-1.5.2 → vector-1.6.1}/.github/workflows/ci.yml +10 -13
  4. {vector-1.5.2 → vector-1.6.1}/.pre-commit-config.yaml +5 -5
  5. vector-1.6.1/PKG-INFO +253 -0
  6. vector-1.6.1/README.md +181 -0
  7. {vector-1.5.2 → vector-1.6.1}/docs/_images/LogoSrc.svg +30 -30
  8. vector-1.6.1/docs/_images/coordinate-systems.png +0 -0
  9. vector-1.6.1/docs/_images/coordinate-systems.svg +323 -0
  10. vector-1.6.1/docs/_images/vector-logo.png +0 -0
  11. {vector-1.5.2 → vector-1.6.1}/docs/conf.py +6 -3
  12. vector-1.6.1/docs/index.md +150 -0
  13. vector-1.6.1/docs/src/awkward.ipynb +1046 -0
  14. vector-1.6.1/docs/src/common.md +20 -0
  15. vector-1.6.1/docs/src/make_awkward.md +48 -0
  16. vector-1.6.1/docs/src/make_numpy.md +47 -0
  17. vector-1.6.1/docs/src/make_object.md +47 -0
  18. vector-1.6.1/docs/src/make_sympy.md +57 -0
  19. vector-1.6.1/docs/src/momentum2d.md +12 -0
  20. vector-1.6.1/docs/src/momentum3d.md +12 -0
  21. vector-1.6.1/docs/src/momentum4d.md +12 -0
  22. vector-1.6.1/docs/src/numba.ipynb +221 -0
  23. vector-1.6.1/docs/src/numpy.ipynb +811 -0
  24. vector-1.6.1/docs/src/object.ipynb +995 -0
  25. vector-1.6.1/docs/src/sympy.ipynb +440 -0
  26. vector-1.6.1/docs/src/talks.md +9 -0
  27. vector-1.6.1/docs/src/vector2d.md +12 -0
  28. vector-1.6.1/docs/src/vector3d.md +12 -0
  29. vector-1.6.1/docs/src/vector4d.md +12 -0
  30. {vector-1.5.2 → vector-1.6.1}/noxfile.py +9 -1
  31. {vector-1.5.2 → vector-1.6.1}/pyproject.toml +4 -2
  32. {vector-1.5.2 → vector-1.6.1}/src/vector/__init__.py +3 -2
  33. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/Et.py +1 -1
  34. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/Et2.py +1 -1
  35. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/Mt.py +1 -1
  36. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/Mt2.py +1 -1
  37. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/add.py +3 -2
  38. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/beta.py +1 -1
  39. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostX_beta.py +1 -1
  40. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostX_gamma.py +1 -1
  41. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostY_beta.py +1 -1
  42. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostY_gamma.py +1 -1
  43. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostZ_beta.py +1 -1
  44. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boostZ_gamma.py +1 -1
  45. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boost_beta3.py +3 -2
  46. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/boost_p4.py +3 -2
  47. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/deltaRapidityPhi.py +3 -2
  48. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/deltaRapidityPhi2.py +3 -2
  49. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/dot.py +3 -2
  50. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/equal.py +3 -2
  51. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/gamma.py +1 -1
  52. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/is_lightlike.py +1 -1
  53. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/is_spacelike.py +1 -1
  54. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/is_timelike.py +1 -1
  55. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/isclose.py +3 -2
  56. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/not_equal.py +3 -2
  57. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/rapidity.py +1 -1
  58. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/scale.py +1 -1
  59. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/subtract.py +3 -2
  60. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/t.py +19 -1
  61. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/t2.py +1 -1
  62. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/tau.py +19 -1
  63. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/tau2.py +1 -1
  64. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/to_beta3.py +1 -1
  65. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/transform4D.py +1 -1
  66. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/unit.py +1 -1
  67. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/add.py +5 -2
  68. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/deltaphi.py +5 -2
  69. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/dot.py +5 -2
  70. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/equal.py +3 -2
  71. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/is_antiparallel.py +3 -2
  72. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/is_parallel.py +3 -2
  73. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/is_perpendicular.py +3 -2
  74. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/isclose.py +3 -2
  75. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/not_equal.py +3 -2
  76. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/phi.py +7 -1
  77. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/rho.py +7 -1
  78. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/rho2.py +4 -1
  79. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/rotateZ.py +1 -1
  80. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/scale.py +1 -1
  81. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/subtract.py +5 -2
  82. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/transform2D.py +1 -1
  83. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/unit.py +7 -1
  84. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/x.py +7 -1
  85. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/y.py +7 -1
  86. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/add.py +3 -2
  87. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/costheta.py +3 -1
  88. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/cottheta.py +3 -1
  89. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/cross.py +3 -2
  90. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/deltaR.py +3 -2
  91. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/deltaR2.py +3 -2
  92. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/deltaangle.py +3 -2
  93. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/deltaeta.py +3 -2
  94. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/dot.py +3 -2
  95. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/equal.py +3 -2
  96. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/eta.py +9 -1
  97. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/is_antiparallel.py +3 -2
  98. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/is_parallel.py +3 -2
  99. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/is_perpendicular.py +3 -2
  100. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/isclose.py +3 -2
  101. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/mag.py +3 -1
  102. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/mag2.py +3 -1
  103. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/not_equal.py +3 -2
  104. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/rotateX.py +3 -1
  105. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/rotateY.py +3 -1
  106. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/rotate_axis.py +3 -2
  107. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/rotate_euler.py +1 -1
  108. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/rotate_quaternion.py +1 -1
  109. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/scale.py +3 -1
  110. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/subtract.py +3 -2
  111. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/theta.py +9 -1
  112. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/transform3D.py +1 -1
  113. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/unit.py +3 -1
  114. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/z.py +9 -1
  115. {vector-1.5.2 → vector-1.6.1}/src/vector/_methods.py +9 -4
  116. {vector-1.5.2 → vector-1.6.1}/src/vector/_version.py +2 -2
  117. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/awkward.py +164 -27
  118. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/numpy.py +152 -16
  119. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/object.py +38 -31
  120. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/sympy.py +13 -38
  121. vector-1.6.1/tests/backends/test_awkward.py +1172 -0
  122. vector-1.6.1/tests/backends/test_dask_awkward.py +39 -0
  123. {vector-1.5.2 → vector-1.6.1}/tests/test_compute_features.py +18 -18
  124. vector-1.6.1/tests/test_notebooks.py +42 -0
  125. vector-1.5.2/PKG-INFO +0 -1020
  126. vector-1.5.2/README.md +0 -949
  127. vector-1.5.2/docs/_images/vector-logo.png +0 -0
  128. vector-1.5.2/docs/api/backends/vector.backends._numba.rst +0 -8
  129. vector-1.5.2/docs/api/backends/vector.backends._numba_object.rst +0 -8
  130. vector-1.5.2/docs/api/backends/vector.backends.awkward.rst +0 -8
  131. vector-1.5.2/docs/api/backends/vector.backends.awkward_constructors.rst +0 -8
  132. vector-1.5.2/docs/api/backends/vector.backends.numba_numpy.rst +0 -8
  133. vector-1.5.2/docs/api/backends/vector.backends.numpy.rst +0 -8
  134. vector-1.5.2/docs/api/backends/vector.backends.object.rst +0 -8
  135. vector-1.5.2/docs/api/backends/vector.backends.rst +0 -22
  136. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.Et.rst +0 -8
  137. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.Et2.rst +0 -8
  138. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.Mt.rst +0 -8
  139. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.Mt2.rst +0 -8
  140. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.add.rst +0 -8
  141. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.beta.rst +0 -8
  142. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostX_beta.rst +0 -8
  143. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostX_gamma.rst +0 -8
  144. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostY_beta.rst +0 -8
  145. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostY_gamma.rst +0 -8
  146. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostZ_beta.rst +0 -8
  147. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boostZ_gamma.rst +0 -8
  148. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boost_beta3.rst +0 -8
  149. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.boost_p4.rst +0 -8
  150. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.deltaRapidityPhi.rst +0 -8
  151. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.deltaRapidityPhi2.rst +0 -8
  152. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.dot.rst +0 -8
  153. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.equal.rst +0 -8
  154. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.gamma.rst +0 -8
  155. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.is_lightlike.rst +0 -8
  156. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.is_spacelike.rst +0 -8
  157. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.is_timelike.rst +0 -8
  158. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.isclose.rst +0 -8
  159. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.not_equal.rst +0 -8
  160. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.rapidity.rst +0 -8
  161. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.rst +0 -49
  162. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.scale.rst +0 -8
  163. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.subtract.rst +0 -8
  164. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.t.rst +0 -8
  165. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.t2.rst +0 -8
  166. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.tau.rst +0 -8
  167. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.tau2.rst +0 -8
  168. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.to_beta3.rst +0 -8
  169. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.transform4D.rst +0 -8
  170. vector-1.5.2/docs/api/compute/lorentz/vector._compute.lorentz.unit.rst +0 -8
  171. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.add.rst +0 -8
  172. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.deltaphi.rst +0 -8
  173. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.dot.rst +0 -8
  174. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.equal.rst +0 -8
  175. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.is_antiparallel.rst +0 -8
  176. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.is_parallel.rst +0 -8
  177. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.is_perpendicular.rst +0 -8
  178. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.isclose.rst +0 -8
  179. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.not_equal.rst +0 -8
  180. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.phi.rst +0 -8
  181. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.rho.rst +0 -8
  182. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.rho2.rst +0 -8
  183. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.rotateZ.rst +0 -8
  184. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.rst +0 -34
  185. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.scale.rst +0 -8
  186. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.subtract.rst +0 -8
  187. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.transform2D.rst +0 -8
  188. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.unit.rst +0 -8
  189. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.x.rst +0 -8
  190. vector-1.5.2/docs/api/compute/planar/vector._compute.planar.y.rst +0 -8
  191. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.add.rst +0 -8
  192. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.costheta.rst +0 -8
  193. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.cottheta.rst +0 -8
  194. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.cross.rst +0 -8
  195. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.deltaR.rst +0 -8
  196. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.deltaR2.rst +0 -8
  197. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.deltaangle.rst +0 -8
  198. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.deltaeta.rst +0 -8
  199. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.dot.rst +0 -8
  200. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.equal.rst +0 -8
  201. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.eta.rst +0 -8
  202. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.is_antiparallel.rst +0 -8
  203. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.is_parallel.rst +0 -8
  204. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.is_perpendicular.rst +0 -8
  205. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.isclose.rst +0 -8
  206. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.mag.rst +0 -8
  207. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.mag2.rst +0 -8
  208. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.not_equal.rst +0 -8
  209. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rotateX.rst +0 -8
  210. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rotateY.rst +0 -8
  211. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rotate_axis.rst +0 -8
  212. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rotate_euler.rst +0 -8
  213. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rotate_quaternion.rst +0 -8
  214. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.rst +0 -44
  215. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.scale.rst +0 -8
  216. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.subtract.rst +0 -8
  217. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.theta.rst +0 -8
  218. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.transform3D.rst +0 -8
  219. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.unit.rst +0 -8
  220. vector-1.5.2/docs/api/compute/spatial/vector._compute.spatial.z.rst +0 -8
  221. vector-1.5.2/docs/api/compute/vector._compute.rst +0 -18
  222. vector-1.5.2/docs/api/inheritance.svg +0 -3413
  223. vector-1.5.2/docs/api/modules.rst +0 -7
  224. vector-1.5.2/docs/api/vector._methods.rst +0 -8
  225. vector-1.5.2/docs/api/vector._typeutils.rst +0 -8
  226. vector-1.5.2/docs/api/vector.rst +0 -21
  227. vector-1.5.2/docs/changelog.md +0 -475
  228. vector-1.5.2/docs/index.rst +0 -139
  229. vector-1.5.2/docs/usage/intro.ipynb +0 -4084
  230. vector-1.5.2/docs/usage/structure.md +0 -11
  231. vector-1.5.2/tests/backends/test_awkward.py +0 -930
  232. vector-1.5.2/tests/backends/test_dask_awkward.py +0 -25
  233. vector-1.5.2/tests/test_notebooks.py +0 -22
  234. {vector-1.5.2 → vector-1.6.1}/.all-contributorsrc +0 -0
  235. {vector-1.5.2 → vector-1.6.1}/.git_archival.txt +0 -0
  236. {vector-1.5.2 → vector-1.6.1}/.gitattributes +0 -0
  237. {vector-1.5.2 → vector-1.6.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  238. {vector-1.5.2 → vector-1.6.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  239. {vector-1.5.2 → vector-1.6.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  240. {vector-1.5.2 → vector-1.6.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  241. {vector-1.5.2 → vector-1.6.1}/.github/codecov.yml +0 -0
  242. {vector-1.5.2 → vector-1.6.1}/.github/dependabot.yml +0 -0
  243. {vector-1.5.2 → vector-1.6.1}/.github/matchers/pylint.json +0 -0
  244. {vector-1.5.2 → vector-1.6.1}/.github/workflows/notebooks.yml +0 -0
  245. {vector-1.5.2 → vector-1.6.1}/.gitignore +0 -0
  246. {vector-1.5.2 → vector-1.6.1}/.readthedocs.yml +0 -0
  247. {vector-1.5.2 → vector-1.6.1}/CITATION.cff +0 -0
  248. {vector-1.5.2 → vector-1.6.1}/LICENSE +0 -0
  249. {vector-1.5.2 → vector-1.6.1}/docs/Makefile +0 -0
  250. {vector-1.5.2 → vector-1.6.1}/docs/make.bat +0 -0
  251. {vector-1.5.2 → vector-1.6.1}/environment.yml +0 -0
  252. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/__init__.py +0 -0
  253. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/lorentz/__init__.py +0 -0
  254. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/planar/__init__.py +0 -0
  255. {vector-1.5.2 → vector-1.6.1}/src/vector/_compute/spatial/__init__.py +0 -0
  256. {vector-1.5.2 → vector-1.6.1}/src/vector/_lib.py +0 -0
  257. {vector-1.5.2 → vector-1.6.1}/src/vector/_typeutils.py +2 -2
  258. {vector-1.5.2 → vector-1.6.1}/src/vector/_version.pyi +0 -0
  259. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/__init__.py +0 -0
  260. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/_numba.py +0 -0
  261. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/_numba_object.py +0 -0
  262. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/awkward_constructors.py +0 -0
  263. {vector-1.5.2 → vector-1.6.1}/src/vector/backends/numba_numpy.py +0 -0
  264. {vector-1.5.2 → vector-1.6.1}/src/vector/py.typed +0 -0
  265. {vector-1.5.2 → vector-1.6.1}/tests/__init__.py +0 -0
  266. {vector-1.5.2 → vector-1.6.1}/tests/backends/__init__.py +0 -0
  267. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_awkward_numba.py +0 -0
  268. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_numba_numpy.py +0 -0
  269. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_numba_object.py +0 -0
  270. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_numpy.py +0 -0
  271. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_object.py +0 -0
  272. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_operators.py +0 -0
  273. {vector-1.5.2 → vector-1.6.1}/tests/backends/test_sympy.py +0 -0
  274. {vector-1.5.2 → vector-1.6.1}/tests/compute/__init__.py +0 -0
  275. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/__init__.py +0 -0
  276. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_Et.py +0 -0
  277. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_Et2.py +0 -0
  278. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_Mt.py +0 -0
  279. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_Mt2.py +0 -0
  280. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_beta.py +0 -0
  281. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostX_beta.py +0 -0
  282. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostX_gamma.py +0 -0
  283. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostY_beta.py +0 -0
  284. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostY_gamma.py +0 -0
  285. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostZ_beta.py +0 -0
  286. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boostZ_gamma.py +0 -0
  287. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boost_beta3.py +0 -0
  288. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_boost_p4.py +0 -0
  289. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_deltaRapidityPhi.py +0 -0
  290. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_deltaRapidityPhi2.py +0 -0
  291. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_gamma.py +0 -0
  292. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_is_lightlike.py +0 -0
  293. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_is_spacelike.py +0 -0
  294. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_is_timelike.py +0 -0
  295. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_rapidity.py +0 -0
  296. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_t.py +0 -0
  297. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_t2.py +0 -0
  298. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_tau.py +0 -0
  299. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_tau2.py +0 -0
  300. {vector-1.5.2 → vector-1.6.1}/tests/compute/lorentz/test_to_beta3.py +0 -0
  301. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/__init__.py +0 -0
  302. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_deltaphi.py +0 -0
  303. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_phi.py +0 -0
  304. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_rho.py +0 -0
  305. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_rho2.py +0 -0
  306. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_rotateZ.py +0 -0
  307. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_x.py +0 -0
  308. {vector-1.5.2 → vector-1.6.1}/tests/compute/planar/test_y.py +0 -0
  309. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/__init__.py +0 -0
  310. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_costheta.py +0 -0
  311. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_cottheta.py +0 -0
  312. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_cross.py +0 -0
  313. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_deltaR.py +0 -0
  314. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_deltaR2.py +0 -0
  315. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_deltaangle.py +0 -0
  316. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_deltaeta.py +0 -0
  317. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_eta.py +0 -0
  318. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_mag.py +0 -0
  319. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_mag2.py +0 -0
  320. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_rotateX.py +0 -0
  321. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_rotateY.py +0 -0
  322. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_rotate_axis.py +0 -0
  323. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_rotate_euler.py +0 -0
  324. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_rotate_quaternion.py +0 -0
  325. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_theta.py +0 -0
  326. {vector-1.5.2 → vector-1.6.1}/tests/compute/spatial/test_z.py +0 -0
  327. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/__init__.py +0 -0
  328. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_Et.py +0 -0
  329. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_Et2.py +0 -0
  330. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_Mt.py +0 -0
  331. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_Mt2.py +0 -0
  332. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_beta.py +0 -0
  333. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostX_beta.py +0 -0
  334. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostX_gamma.py +0 -0
  335. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostY_beta.py +0 -0
  336. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostY_gamma.py +0 -0
  337. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostZ_beta.py +0 -0
  338. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boostZ_gamma.py +0 -0
  339. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boost_beta3.py +0 -0
  340. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_boost_p4.py +0 -0
  341. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_deltaRapidityPhi.py +0 -0
  342. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_deltaRapidityPhi2.py +0 -0
  343. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_gamma.py +0 -0
  344. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_is_lightlike.py +0 -0
  345. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_is_spacelike.py +0 -0
  346. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_is_timelike.py +0 -0
  347. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_rapidity.py +0 -0
  348. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_t.py +0 -0
  349. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_t2.py +0 -0
  350. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_tau.py +0 -0
  351. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_tau2.py +0 -0
  352. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/lorentz/test_to_beta3.py +0 -0
  353. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/__init__.py +0 -0
  354. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_deltaphi.py +0 -0
  355. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_phi.py +0 -0
  356. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_rho.py +0 -0
  357. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_rho2.py +0 -0
  358. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_rotateZ.py +0 -0
  359. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_x.py +0 -0
  360. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/planar/test_y.py +0 -0
  361. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/__init__.py +0 -0
  362. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_costheta.py +0 -0
  363. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_cottheta.py +0 -0
  364. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_cross.py +0 -0
  365. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_deltaR.py +0 -0
  366. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_deltaR2.py +0 -0
  367. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_deltaangle.py +0 -0
  368. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_deltaeta.py +0 -0
  369. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_eta.py +0 -0
  370. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_mag.py +0 -0
  371. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_mag2.py +0 -0
  372. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_rotateX.py +0 -0
  373. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_rotateY.py +0 -0
  374. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_rotate_axis.py +0 -0
  375. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_rotate_euler.py +0 -0
  376. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_rotate_quaternion.py +0 -0
  377. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_theta.py +0 -0
  378. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/spatial/test_z.py +0 -0
  379. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_add.py +0 -0
  380. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_conversions.py +0 -0
  381. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_dot.py +0 -0
  382. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_equal.py +0 -0
  383. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_is_antiparallel.py +0 -0
  384. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_is_parallel.py +0 -0
  385. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_is_perpendicular.py +0 -0
  386. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_not_equal.py +0 -0
  387. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_scale.py +0 -0
  388. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_subtract.py +0 -0
  389. {vector-1.5.2 → vector-1.6.1}/tests/compute/sympy/test_unit.py +0 -0
  390. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_add.py +0 -0
  391. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_conversions.py +0 -0
  392. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_dot.py +0 -0
  393. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_equal.py +0 -0
  394. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_is_antiparallel.py +0 -0
  395. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_is_parallel.py +0 -0
  396. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_is_perpendicular.py +0 -0
  397. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_isclose.py +0 -0
  398. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_not_equal.py +0 -0
  399. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_scale.py +0 -0
  400. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_subtract.py +0 -0
  401. {vector-1.5.2 → vector-1.6.1}/tests/compute/test_unit.py +0 -0
  402. {vector-1.5.2 → vector-1.6.1}/tests/samples/issue-161-v2.pkl +0 -0
  403. {vector-1.5.2 → vector-1.6.1}/tests/test_issues.py +0 -0
  404. {vector-1.5.2 → vector-1.6.1}/tests/test_methods.py +0 -0
@@ -51,13 +51,13 @@ The developer installation of `vector` comes with several options -
51
51
  These options can be used with `pip` with the editable (`-e`) mode of installation in the following way -
52
52
 
53
53
  ```bash
54
- pip install -e .[dev,test]
54
+ pip install -e ".[dev, test]"
55
55
  ```
56
56
 
57
57
  For example, if you want to install the `docs` dependencies along with the dependencies included above, use -
58
58
 
59
59
  ```bash
60
- pip install -e .[dev,test,docs]
60
+ pip install -e ".[dev, test, docs]"
61
61
  ```
62
62
 
63
63
  Furthermore, `vector` can also be installed using `conda`. This installation also requires using a virtual environment -
@@ -37,7 +37,7 @@ jobs:
37
37
  run: ls -l dist/
38
38
 
39
39
  - name: Generate artifact attestation for sdist and wheel
40
- uses: actions/attest-build-provenance@1c608d11d69870c2092266b3f9a6f3abbf17002c # v1.4.3
40
+ uses: actions/attest-build-provenance@7668571508540a607bdfd90a87a560489fe372eb # v2.1.0
41
41
  with:
42
42
  subject-path: "dist/vector-*"
43
43
 
@@ -28,7 +28,7 @@ jobs:
28
28
  - uses: actions/setup-python@v5
29
29
  with:
30
30
  python-version: 3.x
31
- - uses: astral-sh/setup-uv@v3
31
+ - uses: astral-sh/setup-uv@v5
32
32
  - name: PyLint
33
33
  run: uvx nox -s pylint -- --output-format=github
34
34
 
@@ -53,10 +53,10 @@ jobs:
53
53
  python-version: ${{ matrix.python-version }}
54
54
  allow-prereleases: true
55
55
 
56
- - uses: astral-sh/setup-uv@v3
56
+ - uses: astral-sh/setup-uv@v5
57
57
 
58
58
  - name: Test lite package
59
- run: uvx nox -s lite-${{ matrix.python-version.key || matrix.python-version }} --verbose
59
+ run: uvx nox -s lite-${{ matrix.python-version }} --verbose
60
60
 
61
61
  check-full:
62
62
  needs: [check-lite]
@@ -80,20 +80,20 @@ jobs:
80
80
  python-version: ${{ matrix.python-version }}
81
81
  allow-prereleases: true
82
82
 
83
- - uses: astral-sh/setup-uv@v3
83
+ - uses: astral-sh/setup-uv@v5
84
84
 
85
85
  - name: Install nox
86
86
  run: uv tool install nox
87
87
 
88
88
  - name: Run doctests on Python 3.11
89
89
  if: matrix.python-version == 3.11
90
- run: nox -s doctests-${{ matrix.python-version.key || matrix.python-version }} --verbose
90
+ run: nox -s doctests-${{ matrix.python-version }} --verbose
91
91
 
92
92
  - name: Test package and generate coverage report
93
- run: nox -s coverage-${{ matrix.python-version.key || matrix.python-version }} --verbose
93
+ run: nox -s coverage-${{ matrix.python-version }} --verbose
94
94
 
95
95
  - name: Upload coverage report
96
- uses: codecov/codecov-action@v4.6.0
96
+ uses: codecov/codecov-action@v5.1.2
97
97
  with:
98
98
  token: ${{ secrets.CODECOV_TOKEN }}
99
99
 
@@ -107,13 +107,10 @@ jobs:
107
107
  with:
108
108
  python-version: 3.8.13
109
109
 
110
- - uses: astral-sh/setup-uv@v3
110
+ - uses: astral-sh/setup-uv@v5
111
111
 
112
- - name: Check compute features
113
- run: uv pip install --system .[test,test-extras]
114
-
115
- - name: Test package
116
- run: python -m pytest -ra -m dis --ignore tests/test_notebooks.py
112
+ - name: Test compute features
113
+ run: uvx nox -s disassemble --verbose
117
114
 
118
115
  pass:
119
116
  needs: [pre-commit, check-lite, check-full, discheck]
@@ -4,7 +4,7 @@ ci:
4
4
 
5
5
  repos:
6
6
  - repo: https://github.com/pre-commit/pre-commit-hooks
7
- rev: v4.6.0
7
+ rev: v5.0.0
8
8
  hooks:
9
9
  - id: check-added-large-files
10
10
  - id: check-case-conflict
@@ -19,14 +19,14 @@ repos:
19
19
  - id: trailing-whitespace
20
20
 
21
21
  - repo: https://github.com/astral-sh/ruff-pre-commit
22
- rev: "v0.6.8"
22
+ rev: "v0.9.2"
23
23
  hooks:
24
24
  - id: ruff
25
25
  args: ["--fix", "--show-fixes"]
26
26
  - id: ruff-format
27
27
 
28
28
  - repo: https://github.com/pre-commit/mirrors-mypy
29
- rev: v1.11.2
29
+ rev: v1.14.1
30
30
  hooks:
31
31
  - id: mypy
32
32
  files: src
@@ -43,14 +43,14 @@ repos:
43
43
  exclude: ^docs/usage/intro.ipynb$
44
44
 
45
45
  - repo: https://github.com/rbubley/mirrors-prettier
46
- rev: "v3.3.3"
46
+ rev: "v3.4.2"
47
47
  hooks:
48
48
  - id: prettier
49
49
  types_or: [yaml, markdown, html, css, scss, javascript, json]
50
50
  exclude: assets/js/webapp\.js
51
51
 
52
52
  - repo: https://github.com/adamchainz/blacken-docs
53
- rev: 1.18.0
53
+ rev: 1.19.1
54
54
  hooks:
55
55
  - id: blacken-docs
56
56
  args: ["-E"]
vector-1.6.1/PKG-INFO ADDED
@@ -0,0 +1,253 @@
1
+ Metadata-Version: 2.4
2
+ Name: vector
3
+ Version: 1.6.1
4
+ Summary: Vector classes and utilities
5
+ Project-URL: Bug Tracker, https://github.com/scikit-hep/vector/issues
6
+ Project-URL: Changelog, https://vector.readthedocs.io/en/latest/changelog.html
7
+ Project-URL: Discussions, https://github.com/scikit-hep/vector/discussions
8
+ Project-URL: Documentation, https://vector.readthedocs.io/
9
+ Project-URL: Homepage, https://github.com/scikit-hep/vector
10
+ Author-email: "Jim Pivarski, Henry Schreiner, Eduardo Rodrigues" <eduardo.rodrigues@cern.ch>
11
+ Maintainer-email: The Scikit-HEP admins <scikit-hep-admins@googlegroups.com>
12
+ License-File: LICENSE
13
+ Keywords: vector
14
+ Classifier: Development Status :: 5 - Production/Stable
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: Intended Audience :: Science/Research
17
+ Classifier: License :: OSI Approved :: BSD License
18
+ Classifier: Operating System :: OS Independent
19
+ Classifier: Programming Language :: Python
20
+ Classifier: Programming Language :: Python :: 3 :: Only
21
+ Classifier: Programming Language :: Python :: 3.8
22
+ Classifier: Programming Language :: Python :: 3.9
23
+ Classifier: Programming Language :: Python :: 3.10
24
+ Classifier: Programming Language :: Python :: 3.11
25
+ Classifier: Programming Language :: Python :: 3.12
26
+ Classifier: Programming Language :: Python :: 3.13
27
+ Classifier: Topic :: Scientific/Engineering
28
+ Classifier: Topic :: Scientific/Engineering :: Information Analysis
29
+ Classifier: Topic :: Scientific/Engineering :: Mathematics
30
+ Classifier: Topic :: Scientific/Engineering :: Physics
31
+ Classifier: Typing :: Typed
32
+ Requires-Python: >=3.8
33
+ Requires-Dist: numpy>=1.13.3
34
+ Requires-Dist: packaging>=19
35
+ Provides-Extra: awkward
36
+ Requires-Dist: awkward>=2; extra == 'awkward'
37
+ Provides-Extra: dev
38
+ Requires-Dist: awkward>=2; extra == 'dev'
39
+ Requires-Dist: dask-awkward; extra == 'dev'
40
+ Requires-Dist: nox; extra == 'dev'
41
+ Requires-Dist: numba>=0.57; (python_version < '3.13') and extra == 'dev'
42
+ Requires-Dist: papermill>=2.4; extra == 'dev'
43
+ Requires-Dist: pytest-cov>=3; extra == 'dev'
44
+ Requires-Dist: pytest-doctestplus; extra == 'dev'
45
+ Requires-Dist: pytest>=6; extra == 'dev'
46
+ Requires-Dist: sympy; extra == 'dev'
47
+ Provides-Extra: docs
48
+ Requires-Dist: awkward>=2; extra == 'docs'
49
+ Requires-Dist: ipykernel; extra == 'docs'
50
+ Requires-Dist: myst-parser>0.13; extra == 'docs'
51
+ Requires-Dist: nbsphinx; extra == 'docs'
52
+ Requires-Dist: sphinx-book-theme>=0.0.42; extra == 'docs'
53
+ Requires-Dist: sphinx-copybutton; extra == 'docs'
54
+ Requires-Dist: sphinx-math-dollar; extra == 'docs'
55
+ Requires-Dist: sphinx>=4; extra == 'docs'
56
+ Requires-Dist: sympy; extra == 'docs'
57
+ Provides-Extra: numba
58
+ Requires-Dist: numba>=0.57; (python_version < '3.13') and extra == 'numba'
59
+ Provides-Extra: sympy
60
+ Requires-Dist: sympy; extra == 'sympy'
61
+ Provides-Extra: test
62
+ Requires-Dist: nox; extra == 'test'
63
+ Requires-Dist: papermill>=2.4; extra == 'test'
64
+ Requires-Dist: pytest-cov>=3; extra == 'test'
65
+ Requires-Dist: pytest-doctestplus; extra == 'test'
66
+ Requires-Dist: pytest>=6; extra == 'test'
67
+ Provides-Extra: test-extras
68
+ Requires-Dist: dask-awkward; extra == 'test-extras'
69
+ Requires-Dist: spark-parser; extra == 'test-extras'
70
+ Requires-Dist: uncompyle6; (python_version == '3.8') and extra == 'test-extras'
71
+ Description-Content-Type: text/markdown
72
+
73
+ <img alt="Vector logo" width="50%" src="https://raw.githubusercontent.com/scikit-hep/vector/main/docs/_images/LogoSrc.svg"/>
74
+
75
+ # Vector: arrays of 2D, 3D, and Lorentz vectors
76
+
77
+ [![Actions Status][actions-badge]][actions-link]
78
+ [![Documentation Status][rtd-badge]][rtd-link]
79
+ [![pre-commit.ci status][pre-commit-badge]][pre-commit-link]
80
+ [![codecov percentage][codecov-badge]][codecov-link]
81
+ [![GitHub Discussion][github-discussions-badge]][github-discussions-link]
82
+ [![Gitter][gitter-badge]][gitter-link]
83
+
84
+ [![PyPI platforms][pypi-platforms]][pypi-link]
85
+ [![PyPI version][pypi-version]][pypi-link]
86
+ [![Conda latest release][conda-version]][conda-link]
87
+ [![DOI][zenodo-badge]][zenodo-link]
88
+ [![LICENSE][license-badge]][license-link]
89
+ [![Scikit-HEP][sk-badge]][sk-link]
90
+
91
+ ## Installation
92
+
93
+ You can install Vector with [pip](https://pypi.org/project/vector/) and [conda](https://anaconda.org/conda-forge/vector).
94
+
95
+ ```bash
96
+ pip install vector
97
+ ```
98
+
99
+ ## Introduction
100
+
101
+ Vector is a Python library for 2D and 3D spatial vectors, as well as 4D space-time vectors. It is especially intended for performing geometric calculations on _arrays of vectors_, rather than one vector at a time in a Python for loop.
102
+
103
+ Vector is part of the [Scikit-HEP project](https://scikit-hep.org/), High Energy Physics (HEP) tools in Python.
104
+
105
+ ### Coordinate systems
106
+
107
+ Vectors may be expressed in any of these coordinate systems:
108
+
109
+ - the azimuthal plane may be Cartesian `x` `y` or polar `rho` ($\rho$) `phi` ($\phi$)
110
+ - the longitudinal axis may be Cartesian `z`, polar `theta` ($\theta$), or pseudorapidity `eta` ($\eta$)
111
+ - the temporal component for space-time vectors may be Cartesian `t` or proper time `tau` ($\tau$)
112
+
113
+ in any combination. (That is, 4D vectors have 2×3×2 = 12 distinct coordinate systems.)
114
+
115
+ <img alt="Diagram of coordinate systems" width="100%" src="https://raw.githubusercontent.com/scikit-hep/vector/main/docs/_images/coordinate-systems.svg"/>
116
+
117
+ ### Backends
118
+
119
+ Vectors may be included in any of these data types:
120
+
121
+ - [vector.obj](https://vector.readthedocs.io/en/latest/src/make_object.html) objects (pure Python)
122
+ - [NumPy structured arrays](https://numpy.org/doc/stable/user/basics.rec.html) of vectors
123
+ - [Awkward Arrays](https://awkward-array.org/) of vectors (possibly within variable-length lists or nested record structures)
124
+ - [SymPy expressions](https://www.sympy.org/en/index.html) for symbolic (non-numeric) manipulations
125
+ - In [Numba-compiled functions](https://numba.pydata.org/), with [vector.obj](https://vector.readthedocs.io/en/latest/src/make_object.html) objects or Awkward Arrays
126
+
127
+ Each of these "backends" provides the same suite of properties and methods, through a common "compute" library.
128
+
129
+ ### Geometric versus momentum
130
+
131
+ Finally, vectors come in two flavors:
132
+
133
+ - geometric: only one name for each property or method
134
+ - momentum: same property or method can be accessed with several synonyms, such as `pt` ($p_T$, transverse momentum) for the azimuthal magnitude `rho` ($\rho$) and `energy` and `mass` for the Cartesian time `t` and proper time `tau` ($\tau$).
135
+
136
+ ### Familiar conventions
137
+
138
+ Names and coordinate conventions were chosen to align with [ROOT](https://root.cern/)'s [TLorentzVector](https://root.cern.ch/doc/master/classTLorentzVector.html) and [Math::LorentzVector](https://root.cern.ch/doc/master/classROOT_1_1Math_1_1LorentzVector.html), as well as [scikit-hep/math](https://github.com/scikit-hep/scikit-hep/tree/master/skhep/math), [uproot-methods TLorentzVector](https://github.com/scikit-hep/uproot3-methods/blob/master/uproot3_methods/classes/TLorentzVector.py), [henryiii/hepvector](https://github.com/henryiii/hepvector), and [coffea.nanoevents.methods.vector](https://coffea-hep.readthedocs.io/en/latest/modules/coffea.nanoevents.methods.vector.html).
139
+
140
+ ## Getting help
141
+
142
+ - Source code on GitHub: [scikit-hep/vector](https://github.com/scikit-hep/vector)
143
+ - Report bugs and request features on the [GitHub Issues page](https://github.com/scikit-hep/vector/issues)
144
+ - Ask questions on the [GitHub Discussions page](https://github.com/scikit-hep/vector/discussions)
145
+ - Real-time chat on Gitter: [Scikit-HEP/Vector](https://gitter.im/Scikit-HEP/vector)
146
+
147
+ ## Contributing to Vector
148
+
149
+ If you want to contribute to Vector, [pull requests](https://github.com/scikit-hep/vector/pulls) are welcome!
150
+
151
+ Please install the latest version of the `main` branch from source or a fork:
152
+
153
+ ```bash
154
+ git clone https://github.com/scikit-hep/vector.git
155
+ cd vector
156
+ pip install -e .
157
+ ```
158
+
159
+ Refer to [CONTRIBUTING.md](https://github.com/scikit-hep/vector/blob/main/.github/CONTRIBUTING.md) for more.
160
+
161
+ ## Documentation
162
+
163
+ ### Tutorials
164
+
165
+ - [Vector objects](https://vector.readthedocs.io/en/latest/src/object.html)
166
+ - [NumPy arrays of vectors](https://vector.readthedocs.io/en/latest/src/numpy.html)
167
+ - [Awkward Arrays of vectors](https://vector.readthedocs.io/en/latest/src/awkward.html)
168
+ - [Compiling functions on vectors with Numba](https://vector.readthedocs.io/en/latest/src/numba.html)
169
+ - [Vector expressions with SymPy](https://vector.readthedocs.io/en/latest/src/sympy.html)
170
+
171
+ ### Vector constructors
172
+
173
+ - [Making vector objects](https://vector.readthedocs.io/en/latest/src/make_object.html)
174
+ - [Making NumPy arrays of vectors](https://vector.readthedocs.io/en/latest/src/make_numpy.html)
175
+ - [Making Awkward Arrays of vectors](https://vector.readthedocs.io/en/latest/src/make_awkward.html)
176
+ - [Making SymPy vector expressions](https://vector.readthedocs.io/en/latest/src/make_sympy.html)
177
+
178
+ ### Vector functions
179
+
180
+ - [Interface for all vectors](https://vector.readthedocs.io/en/latest/src/common.html)
181
+ - [Interface for 2D vectors](https://vector.readthedocs.io/en/latest/src/vector2d.html)
182
+ - [Interface for 3D vectors](https://vector.readthedocs.io/en/latest/src/vector3d.html)
183
+ - [Interface for 4D vectors](https://vector.readthedocs.io/en/latest/src/vector4d.html)
184
+ - [Interface for 2D momentum](https://vector.readthedocs.io/en/latest/src/momentum2d.html)
185
+ - [Interface for 3D momentum](https://vector.readthedocs.io/en/latest/src/momentum3d.html)
186
+ - [Interface for 4D momentum](https://vector.readthedocs.io/en/latest/src/momentum4d.html)
187
+
188
+ ### More ways to learn
189
+
190
+ - [Presentations about Vector](https://vector.readthedocs.io/en/latest/src/talks.html)
191
+
192
+ ## Contributors
193
+
194
+ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
195
+
196
+ <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
197
+ <!-- prettier-ignore-start -->
198
+ <!-- markdownlint-disable -->
199
+ <table>
200
+ <tr>
201
+ <td align="center"><a href="https://github.com/jpivarski"><img src="https://avatars.githubusercontent.com/u/1852447?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jim Pivarski</b></sub></a><br /><a href="#maintenance-jpivarski" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=jpivarski" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=jpivarski" title="Documentation">📖</a></td>
202
+ <td align="center"><a href="https://github.com/henryiii"><img src="https://avatars.githubusercontent.com/u/4616906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Henry Schreiner</b></sub></a><br /><a href="#maintenance-henryiii" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=henryiii" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=henryiii" title="Documentation">📖</a></td>
203
+ <td align="center"><a href="https://github.com/eduardo-rodrigues"><img src="https://avatars.githubusercontent.com/u/5013581?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Eduardo Rodrigues</b></sub></a><br /><a href="#maintenance-eduardo-rodrigues" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=eduardo-rodrigues" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=eduardo-rodrigues" title="Documentation">📖</a></td>
204
+ <td align="center"><a href="http://lovelybuggies.com.cn/"><img src="https://avatars.githubusercontent.com/u/29083689?v=4?s=100" width="100px;" alt=""/><br /><sub><b>N!no</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=LovelyBuggies" title="Documentation">📖</a></td>
205
+ <td align="center"><a href="https://github.com/pfackeldey"><img src="https://avatars.githubusercontent.com/u/18463582?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Peter Fackeldey</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=pfackeldey" title="Documentation">📖</a></td>
206
+ <td align="center"><a href="https://github.com/kreczko"><img src="https://avatars.githubusercontent.com/u/1213276?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Luke Kreczko</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=kreczko" title="Code">💻</a></td>
207
+ <td align="center"><a href="https://github.com/nsmith-"><img src="https://avatars.githubusercontent.com/u/6587412?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nicholas Smith</b></sub></a><br /><a href="#ideas-nsmith-" title="Ideas, Planning, & Feedback">🤔</a></td>
208
+ </tr>
209
+ <tr>
210
+ <td align="center"><a href="https://github.com/mayou36"><img src="https://avatars.githubusercontent.com/u/17454848?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonas Eschle</b></sub></a><br /><a href="#ideas-mayou36" title="Ideas, Planning, & Feedback">🤔</a></td>
211
+ </tr>
212
+ </table>
213
+
214
+ <!-- markdownlint-restore -->
215
+ <!-- prettier-ignore-end -->
216
+
217
+ <!-- ALL-CONTRIBUTORS-LIST:END -->
218
+
219
+ This project follows the
220
+ [all-contributors](https://github.com/all-contributors/all-contributors)
221
+ specification. Contributions of any kind welcome! See
222
+ [CONTRIBUTING.md](./.github/CONTRIBUTING.md) for information on setting up a
223
+ development environment.
224
+
225
+ ## Acknowledgements
226
+
227
+ This library was primarily developed by Saransh Chopra, Henry Schreiner, Jim Pivarski, Eduardo Rodrigues, and Jonas Eschle.
228
+
229
+ Support for this work was provided by the National Science Foundation cooperative agreement [OAC-1836650](https://www.nsf.gov/awardsearch/showAward?AWD_ID=1836650) and [PHY-2323298](https://www.nsf.gov/awardsearch/showAward?AWD_ID=2323298) (IRIS-HEP) and [OAC-1450377](https://www.nsf.gov/awardsearch/showAward?AWD_ID=1450377) (DIANA/HEP). Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
230
+
231
+ [actions-badge]: https://github.com/scikit-hep/vector/actions/workflows/ci.yml/badge.svg
232
+ [actions-link]: https://github.com/scikit-hep/vector/actions
233
+ [codecov-badge]: https://codecov.io/gh/scikit-hep/vector/branch/main/graph/badge.svg?token=YBv60ueORQ
234
+ [codecov-link]: https://codecov.io/gh/scikit-hep/vector
235
+ [conda-version]: https://img.shields.io/conda/vn/conda-forge/vector.svg
236
+ [conda-link]: https://github.com/conda-forge/vector-feedstock
237
+ [github-discussions-badge]: https://img.shields.io/static/v1?label=Discussions&message=Ask&color=blue&logo=github
238
+ [github-discussions-link]: https://github.com/scikit-hep/vector/discussions
239
+ [gitter-badge]: https://badges.gitter.im/Scikit-HEP/vector.svg
240
+ [gitter-link]: https://gitter.im/Scikit-HEP/vector?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
241
+ [license-badge]: https://img.shields.io/badge/License-BSD_3--Clause-blue.svg
242
+ [license-link]: https://opensource.org/licenses/BSD-3-Clause
243
+ [pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/main.svg
244
+ [pre-commit-link]: https://results.pre-commit.ci/repo/github/scikit-hep/vector
245
+ [pypi-link]: https://pypi.org/project/vector/
246
+ [pypi-platforms]: https://img.shields.io/pypi/pyversions/vector
247
+ [pypi-version]: https://badge.fury.io/py/vector.svg
248
+ [rtd-badge]: https://readthedocs.org/projects/vector/badge/?version=latest
249
+ [rtd-link]: https://vector.readthedocs.io/en/latest/?badge=latest
250
+ [sk-badge]: https://scikit-hep.org/assets/images/Scikit--HEP-Project-blue.svg
251
+ [sk-link]: https://scikit-hep.org/
252
+ [zenodo-badge]: https://zenodo.org/badge/DOI/10.5281/zenodo.7054478.svg
253
+ [zenodo-link]: https://doi.org/10.5281/zenodo.7054478
vector-1.6.1/README.md ADDED
@@ -0,0 +1,181 @@
1
+ <img alt="Vector logo" width="50%" src="https://raw.githubusercontent.com/scikit-hep/vector/main/docs/_images/LogoSrc.svg"/>
2
+
3
+ # Vector: arrays of 2D, 3D, and Lorentz vectors
4
+
5
+ [![Actions Status][actions-badge]][actions-link]
6
+ [![Documentation Status][rtd-badge]][rtd-link]
7
+ [![pre-commit.ci status][pre-commit-badge]][pre-commit-link]
8
+ [![codecov percentage][codecov-badge]][codecov-link]
9
+ [![GitHub Discussion][github-discussions-badge]][github-discussions-link]
10
+ [![Gitter][gitter-badge]][gitter-link]
11
+
12
+ [![PyPI platforms][pypi-platforms]][pypi-link]
13
+ [![PyPI version][pypi-version]][pypi-link]
14
+ [![Conda latest release][conda-version]][conda-link]
15
+ [![DOI][zenodo-badge]][zenodo-link]
16
+ [![LICENSE][license-badge]][license-link]
17
+ [![Scikit-HEP][sk-badge]][sk-link]
18
+
19
+ ## Installation
20
+
21
+ You can install Vector with [pip](https://pypi.org/project/vector/) and [conda](https://anaconda.org/conda-forge/vector).
22
+
23
+ ```bash
24
+ pip install vector
25
+ ```
26
+
27
+ ## Introduction
28
+
29
+ Vector is a Python library for 2D and 3D spatial vectors, as well as 4D space-time vectors. It is especially intended for performing geometric calculations on _arrays of vectors_, rather than one vector at a time in a Python for loop.
30
+
31
+ Vector is part of the [Scikit-HEP project](https://scikit-hep.org/), High Energy Physics (HEP) tools in Python.
32
+
33
+ ### Coordinate systems
34
+
35
+ Vectors may be expressed in any of these coordinate systems:
36
+
37
+ - the azimuthal plane may be Cartesian `x` `y` or polar `rho` ($\rho$) `phi` ($\phi$)
38
+ - the longitudinal axis may be Cartesian `z`, polar `theta` ($\theta$), or pseudorapidity `eta` ($\eta$)
39
+ - the temporal component for space-time vectors may be Cartesian `t` or proper time `tau` ($\tau$)
40
+
41
+ in any combination. (That is, 4D vectors have 2×3×2 = 12 distinct coordinate systems.)
42
+
43
+ <img alt="Diagram of coordinate systems" width="100%" src="https://raw.githubusercontent.com/scikit-hep/vector/main/docs/_images/coordinate-systems.svg"/>
44
+
45
+ ### Backends
46
+
47
+ Vectors may be included in any of these data types:
48
+
49
+ - [vector.obj](https://vector.readthedocs.io/en/latest/src/make_object.html) objects (pure Python)
50
+ - [NumPy structured arrays](https://numpy.org/doc/stable/user/basics.rec.html) of vectors
51
+ - [Awkward Arrays](https://awkward-array.org/) of vectors (possibly within variable-length lists or nested record structures)
52
+ - [SymPy expressions](https://www.sympy.org/en/index.html) for symbolic (non-numeric) manipulations
53
+ - In [Numba-compiled functions](https://numba.pydata.org/), with [vector.obj](https://vector.readthedocs.io/en/latest/src/make_object.html) objects or Awkward Arrays
54
+
55
+ Each of these "backends" provides the same suite of properties and methods, through a common "compute" library.
56
+
57
+ ### Geometric versus momentum
58
+
59
+ Finally, vectors come in two flavors:
60
+
61
+ - geometric: only one name for each property or method
62
+ - momentum: same property or method can be accessed with several synonyms, such as `pt` ($p_T$, transverse momentum) for the azimuthal magnitude `rho` ($\rho$) and `energy` and `mass` for the Cartesian time `t` and proper time `tau` ($\tau$).
63
+
64
+ ### Familiar conventions
65
+
66
+ Names and coordinate conventions were chosen to align with [ROOT](https://root.cern/)'s [TLorentzVector](https://root.cern.ch/doc/master/classTLorentzVector.html) and [Math::LorentzVector](https://root.cern.ch/doc/master/classROOT_1_1Math_1_1LorentzVector.html), as well as [scikit-hep/math](https://github.com/scikit-hep/scikit-hep/tree/master/skhep/math), [uproot-methods TLorentzVector](https://github.com/scikit-hep/uproot3-methods/blob/master/uproot3_methods/classes/TLorentzVector.py), [henryiii/hepvector](https://github.com/henryiii/hepvector), and [coffea.nanoevents.methods.vector](https://coffea-hep.readthedocs.io/en/latest/modules/coffea.nanoevents.methods.vector.html).
67
+
68
+ ## Getting help
69
+
70
+ - Source code on GitHub: [scikit-hep/vector](https://github.com/scikit-hep/vector)
71
+ - Report bugs and request features on the [GitHub Issues page](https://github.com/scikit-hep/vector/issues)
72
+ - Ask questions on the [GitHub Discussions page](https://github.com/scikit-hep/vector/discussions)
73
+ - Real-time chat on Gitter: [Scikit-HEP/Vector](https://gitter.im/Scikit-HEP/vector)
74
+
75
+ ## Contributing to Vector
76
+
77
+ If you want to contribute to Vector, [pull requests](https://github.com/scikit-hep/vector/pulls) are welcome!
78
+
79
+ Please install the latest version of the `main` branch from source or a fork:
80
+
81
+ ```bash
82
+ git clone https://github.com/scikit-hep/vector.git
83
+ cd vector
84
+ pip install -e .
85
+ ```
86
+
87
+ Refer to [CONTRIBUTING.md](https://github.com/scikit-hep/vector/blob/main/.github/CONTRIBUTING.md) for more.
88
+
89
+ ## Documentation
90
+
91
+ ### Tutorials
92
+
93
+ - [Vector objects](https://vector.readthedocs.io/en/latest/src/object.html)
94
+ - [NumPy arrays of vectors](https://vector.readthedocs.io/en/latest/src/numpy.html)
95
+ - [Awkward Arrays of vectors](https://vector.readthedocs.io/en/latest/src/awkward.html)
96
+ - [Compiling functions on vectors with Numba](https://vector.readthedocs.io/en/latest/src/numba.html)
97
+ - [Vector expressions with SymPy](https://vector.readthedocs.io/en/latest/src/sympy.html)
98
+
99
+ ### Vector constructors
100
+
101
+ - [Making vector objects](https://vector.readthedocs.io/en/latest/src/make_object.html)
102
+ - [Making NumPy arrays of vectors](https://vector.readthedocs.io/en/latest/src/make_numpy.html)
103
+ - [Making Awkward Arrays of vectors](https://vector.readthedocs.io/en/latest/src/make_awkward.html)
104
+ - [Making SymPy vector expressions](https://vector.readthedocs.io/en/latest/src/make_sympy.html)
105
+
106
+ ### Vector functions
107
+
108
+ - [Interface for all vectors](https://vector.readthedocs.io/en/latest/src/common.html)
109
+ - [Interface for 2D vectors](https://vector.readthedocs.io/en/latest/src/vector2d.html)
110
+ - [Interface for 3D vectors](https://vector.readthedocs.io/en/latest/src/vector3d.html)
111
+ - [Interface for 4D vectors](https://vector.readthedocs.io/en/latest/src/vector4d.html)
112
+ - [Interface for 2D momentum](https://vector.readthedocs.io/en/latest/src/momentum2d.html)
113
+ - [Interface for 3D momentum](https://vector.readthedocs.io/en/latest/src/momentum3d.html)
114
+ - [Interface for 4D momentum](https://vector.readthedocs.io/en/latest/src/momentum4d.html)
115
+
116
+ ### More ways to learn
117
+
118
+ - [Presentations about Vector](https://vector.readthedocs.io/en/latest/src/talks.html)
119
+
120
+ ## Contributors
121
+
122
+ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
123
+
124
+ <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
125
+ <!-- prettier-ignore-start -->
126
+ <!-- markdownlint-disable -->
127
+ <table>
128
+ <tr>
129
+ <td align="center"><a href="https://github.com/jpivarski"><img src="https://avatars.githubusercontent.com/u/1852447?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jim Pivarski</b></sub></a><br /><a href="#maintenance-jpivarski" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=jpivarski" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=jpivarski" title="Documentation">📖</a></td>
130
+ <td align="center"><a href="https://github.com/henryiii"><img src="https://avatars.githubusercontent.com/u/4616906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Henry Schreiner</b></sub></a><br /><a href="#maintenance-henryiii" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=henryiii" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=henryiii" title="Documentation">📖</a></td>
131
+ <td align="center"><a href="https://github.com/eduardo-rodrigues"><img src="https://avatars.githubusercontent.com/u/5013581?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Eduardo Rodrigues</b></sub></a><br /><a href="#maintenance-eduardo-rodrigues" title="Maintenance">🚧</a> <a href="https://github.com/scikit-hep/vector/commits?author=eduardo-rodrigues" title="Code">💻</a> <a href="https://github.com/scikit-hep/vector/commits?author=eduardo-rodrigues" title="Documentation">📖</a></td>
132
+ <td align="center"><a href="http://lovelybuggies.com.cn/"><img src="https://avatars.githubusercontent.com/u/29083689?v=4?s=100" width="100px;" alt=""/><br /><sub><b>N!no</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=LovelyBuggies" title="Documentation">📖</a></td>
133
+ <td align="center"><a href="https://github.com/pfackeldey"><img src="https://avatars.githubusercontent.com/u/18463582?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Peter Fackeldey</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=pfackeldey" title="Documentation">📖</a></td>
134
+ <td align="center"><a href="https://github.com/kreczko"><img src="https://avatars.githubusercontent.com/u/1213276?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Luke Kreczko</b></sub></a><br /><a href="https://github.com/scikit-hep/vector/commits?author=kreczko" title="Code">💻</a></td>
135
+ <td align="center"><a href="https://github.com/nsmith-"><img src="https://avatars.githubusercontent.com/u/6587412?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nicholas Smith</b></sub></a><br /><a href="#ideas-nsmith-" title="Ideas, Planning, & Feedback">🤔</a></td>
136
+ </tr>
137
+ <tr>
138
+ <td align="center"><a href="https://github.com/mayou36"><img src="https://avatars.githubusercontent.com/u/17454848?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonas Eschle</b></sub></a><br /><a href="#ideas-mayou36" title="Ideas, Planning, & Feedback">🤔</a></td>
139
+ </tr>
140
+ </table>
141
+
142
+ <!-- markdownlint-restore -->
143
+ <!-- prettier-ignore-end -->
144
+
145
+ <!-- ALL-CONTRIBUTORS-LIST:END -->
146
+
147
+ This project follows the
148
+ [all-contributors](https://github.com/all-contributors/all-contributors)
149
+ specification. Contributions of any kind welcome! See
150
+ [CONTRIBUTING.md](./.github/CONTRIBUTING.md) for information on setting up a
151
+ development environment.
152
+
153
+ ## Acknowledgements
154
+
155
+ This library was primarily developed by Saransh Chopra, Henry Schreiner, Jim Pivarski, Eduardo Rodrigues, and Jonas Eschle.
156
+
157
+ Support for this work was provided by the National Science Foundation cooperative agreement [OAC-1836650](https://www.nsf.gov/awardsearch/showAward?AWD_ID=1836650) and [PHY-2323298](https://www.nsf.gov/awardsearch/showAward?AWD_ID=2323298) (IRIS-HEP) and [OAC-1450377](https://www.nsf.gov/awardsearch/showAward?AWD_ID=1450377) (DIANA/HEP). Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
158
+
159
+ [actions-badge]: https://github.com/scikit-hep/vector/actions/workflows/ci.yml/badge.svg
160
+ [actions-link]: https://github.com/scikit-hep/vector/actions
161
+ [codecov-badge]: https://codecov.io/gh/scikit-hep/vector/branch/main/graph/badge.svg?token=YBv60ueORQ
162
+ [codecov-link]: https://codecov.io/gh/scikit-hep/vector
163
+ [conda-version]: https://img.shields.io/conda/vn/conda-forge/vector.svg
164
+ [conda-link]: https://github.com/conda-forge/vector-feedstock
165
+ [github-discussions-badge]: https://img.shields.io/static/v1?label=Discussions&message=Ask&color=blue&logo=github
166
+ [github-discussions-link]: https://github.com/scikit-hep/vector/discussions
167
+ [gitter-badge]: https://badges.gitter.im/Scikit-HEP/vector.svg
168
+ [gitter-link]: https://gitter.im/Scikit-HEP/vector?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
169
+ [license-badge]: https://img.shields.io/badge/License-BSD_3--Clause-blue.svg
170
+ [license-link]: https://opensource.org/licenses/BSD-3-Clause
171
+ [pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/main.svg
172
+ [pre-commit-link]: https://results.pre-commit.ci/repo/github/scikit-hep/vector
173
+ [pypi-link]: https://pypi.org/project/vector/
174
+ [pypi-platforms]: https://img.shields.io/pypi/pyversions/vector
175
+ [pypi-version]: https://badge.fury.io/py/vector.svg
176
+ [rtd-badge]: https://readthedocs.org/projects/vector/badge/?version=latest
177
+ [rtd-link]: https://vector.readthedocs.io/en/latest/?badge=latest
178
+ [sk-badge]: https://scikit-hep.org/assets/images/Scikit--HEP-Project-blue.svg
179
+ [sk-link]: https://scikit-hep.org/
180
+ [zenodo-badge]: https://zenodo.org/badge/DOI/10.5281/zenodo.7054478.svg
181
+ [zenodo-link]: https://doi.org/10.5281/zenodo.7054478