vector 1.4.1__tar.gz → 1.4.2__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.
- {vector-1.4.1 → vector-1.4.2}/.github/workflows/cd.yml +1 -1
- {vector-1.4.1 → vector-1.4.2}/.github/workflows/ci.yml +5 -14
- {vector-1.4.1 → vector-1.4.2}/.pre-commit-config.yaml +5 -5
- {vector-1.4.1 → vector-1.4.2}/PKG-INFO +28 -16
- {vector-1.4.1 → vector-1.4.2}/README.md +26 -14
- {vector-1.4.1 → vector-1.4.2}/docs/changelog.md +17 -0
- {vector-1.4.1 → vector-1.4.2}/docs/index.rst +6 -6
- {vector-1.4.1 → vector-1.4.2}/docs/usage/intro.ipynb +299 -195
- {vector-1.4.1 → vector-1.4.2}/noxfile.py +6 -1
- {vector-1.4.1 → vector-1.4.2}/pyproject.toml +4 -1
- {vector-1.4.1 → vector-1.4.2}/src/vector/__init__.py +2 -2
- {vector-1.4.1 → vector-1.4.2}/src/vector/_lib.py +5 -5
- {vector-1.4.1 → vector-1.4.2}/src/vector/_version.py +2 -2
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/object.py +3 -3
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/sympy.py +4 -4
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_Et.py +12 -18
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_Et2.py +2 -2
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_beta.py +11 -19
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_unit.py +19 -15
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_unit.py +24 -24
- {vector-1.4.1 → vector-1.4.2}/tests/test_compute_features.py +1 -1
- {vector-1.4.1 → vector-1.4.2}/tests/test_notebooks.py +1 -1
- {vector-1.4.1 → vector-1.4.2}/.all-contributorsrc +0 -0
- {vector-1.4.1 → vector-1.4.2}/.git_archival.txt +0 -0
- {vector-1.4.1 → vector-1.4.2}/.gitattributes +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/CONTRIBUTING.md +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/codecov.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/dependabot.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/matchers/pylint.json +0 -0
- {vector-1.4.1 → vector-1.4.2}/.github/workflows/notebooks.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/.gitignore +0 -0
- {vector-1.4.1 → vector-1.4.2}/.readthedocs.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/CITATION.cff +0 -0
- {vector-1.4.1 → vector-1.4.2}/LICENSE +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/Makefile +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/_images/LogoSrc.svg +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/_images/vector-logo.png +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends._numba.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends._numba_object.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.awkward.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.awkward_constructors.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.numba_numpy.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.numpy.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.object.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/backends/vector.backends.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.Et.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.Et2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.Mt.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.Mt2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.add.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.beta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostX_beta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostX_gamma.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostY_beta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostY_gamma.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostZ_beta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boostZ_gamma.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boost_beta3.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.boost_p4.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.deltaRapidityPhi.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.deltaRapidityPhi2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.dot.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.gamma.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.is_lightlike.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.is_spacelike.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.is_timelike.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.isclose.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.not_equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.rapidity.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.scale.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.subtract.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.t.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.t2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.tau.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.tau2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.to_beta3.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.transform4D.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/lorentz/vector._compute.lorentz.unit.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.add.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.deltaphi.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.dot.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.is_antiparallel.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.is_parallel.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.is_perpendicular.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.isclose.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.not_equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.phi.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.rho.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.rho2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.rotateZ.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.scale.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.subtract.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.transform2D.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.unit.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.x.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/planar/vector._compute.planar.y.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.add.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.costheta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.cottheta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.cross.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.deltaR.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.deltaR2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.deltaangle.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.deltaeta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.dot.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.eta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.is_antiparallel.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.is_parallel.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.is_perpendicular.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.isclose.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.mag.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.mag2.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.not_equal.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rotateX.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rotateY.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rotate_axis.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rotate_euler.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rotate_quaternion.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.scale.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.subtract.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.theta.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.transform3D.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.unit.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/spatial/vector._compute.spatial.z.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/compute/vector._compute.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/inheritance.svg +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/modules.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/vector._methods.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/vector._typeutils.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/api/vector.rst +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/conf.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/make.bat +0 -0
- {vector-1.4.1 → vector-1.4.2}/docs/usage/structure.md +0 -0
- {vector-1.4.1 → vector-1.4.2}/environment.yml +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/Et.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/Et2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/Mt.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/Mt2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/add.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostX_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostX_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostY_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostY_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostZ_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boostZ_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boost_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/boost_p4.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/deltaRapidityPhi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/deltaRapidityPhi2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/dot.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/is_lightlike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/is_spacelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/is_timelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/isclose.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/not_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/rapidity.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/scale.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/subtract.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/t.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/t2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/tau.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/tau2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/to_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/transform4D.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/lorentz/unit.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/add.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/deltaphi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/dot.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/is_antiparallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/is_parallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/is_perpendicular.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/isclose.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/not_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/phi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/rho.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/rho2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/rotateZ.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/scale.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/subtract.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/transform2D.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/unit.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/x.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/planar/y.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/add.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/costheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/cottheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/cross.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/deltaR.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/deltaR2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/deltaangle.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/deltaeta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/dot.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/eta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/is_antiparallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/is_parallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/is_perpendicular.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/isclose.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/mag.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/mag2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/not_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/rotateX.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/rotateY.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/rotate_axis.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/rotate_euler.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/rotate_quaternion.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/scale.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/subtract.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/theta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/transform3D.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/unit.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_compute/spatial/z.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_methods.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/_typeutils.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/_numba.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/_numba_object.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/awkward.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/awkward_constructors.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/numba_numpy.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/backends/numpy.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/py.typed +0 -0
- {vector-1.4.1 → vector-1.4.2}/src/vector/version.pyi +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_awkward.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_awkward_numba.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_dask_awkward.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_numba_numpy.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_numba_object.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_numpy.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_object.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_operators.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/backends/test_sympy.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_Et.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_Et2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_Mt.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_Mt2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostX_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostX_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostY_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostY_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostZ_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boostZ_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boost_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_boost_p4.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_deltaRapidityPhi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_deltaRapidityPhi2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_is_lightlike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_is_spacelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_is_timelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_rapidity.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_t.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_t2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_tau.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_tau2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/lorentz/test_to_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_deltaphi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_phi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_rho.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_rho2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_rotateZ.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_x.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/planar/test_y.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_costheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_cottheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_cross.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_deltaR.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_deltaR2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_deltaangle.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_deltaeta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_eta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_mag.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_mag2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_rotateX.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_rotateY.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_rotate_axis.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_rotate_euler.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_rotate_quaternion.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_theta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/spatial/test_z.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_Mt.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_Mt2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostX_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostX_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostY_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostY_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostZ_beta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boostZ_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boost_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_boost_p4.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_deltaRapidityPhi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_deltaRapidityPhi2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_gamma.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_is_lightlike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_is_spacelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_is_timelike.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_rapidity.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_t.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_t2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_tau.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_tau2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/lorentz/test_to_beta3.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_deltaphi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_phi.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_rho.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_rho2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_rotateZ.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_x.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/planar/test_y.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/__init__.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_costheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_cottheta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_cross.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_deltaR.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_deltaR2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_deltaangle.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_deltaeta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_eta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_mag.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_mag2.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_rotateX.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_rotateY.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_rotate_axis.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_rotate_euler.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_rotate_quaternion.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_theta.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/spatial/test_z.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_add.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_conversions.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_dot.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_is_antiparallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_is_parallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_is_perpendicular.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_not_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_scale.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/sympy/test_subtract.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_add.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_conversions.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_dot.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_is_antiparallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_is_parallel.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_is_perpendicular.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_isclose.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_not_equal.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_scale.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/compute/test_subtract.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/samples/issue-161-v2.pkl +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/samples/issue-161.pkl +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/test_issues.py +0 -0
- {vector-1.4.1 → vector-1.4.2}/tests/test_methods.py +0 -0
|
@@ -25,7 +25,7 @@ jobs:
|
|
|
25
25
|
run: pipx run twine check dist/*
|
|
26
26
|
|
|
27
27
|
- name: Generate artifact attestation for sdist and wheel
|
|
28
|
-
uses: actions/attest-build-provenance@
|
|
28
|
+
uses: actions/attest-build-provenance@6149ea5740be74af77f260b9db67e633f6b0a9a1 # v1.4.2
|
|
29
29
|
with:
|
|
30
30
|
subject-path: "dist/vector-*"
|
|
31
31
|
|
|
@@ -23,7 +23,6 @@ jobs:
|
|
|
23
23
|
- uses: actions/setup-python@v5
|
|
24
24
|
with:
|
|
25
25
|
python-version: 3.x
|
|
26
|
-
- uses: pre-commit/action@v3.0.1
|
|
27
26
|
- name: PyLint
|
|
28
27
|
run: |
|
|
29
28
|
echo "::add-matcher::$GITHUB_WORKSPACE/.github/matchers/pylint.json"
|
|
@@ -91,10 +90,10 @@ jobs:
|
|
|
91
90
|
- name: Install package
|
|
92
91
|
run: python -m pip install -e .[dev]
|
|
93
92
|
|
|
94
|
-
- name: Install awkward v1
|
|
95
|
-
run: python -m pip install -U "awkward<2"
|
|
93
|
+
- name: Install awkward v1 and numpy v1
|
|
94
|
+
run: python -m pip install -U "awkward<2" "numpy<2"
|
|
96
95
|
|
|
97
|
-
- name: Run doctests on Python 3.11 with awkward v1.x
|
|
96
|
+
- name: Run doctests on Python 3.11 with awkward v1.x and numpy v1.x
|
|
98
97
|
if: matrix.python-version == '3.11'
|
|
99
98
|
run: python -m pytest -ra --doctest-plus src/vector/
|
|
100
99
|
|
|
@@ -128,7 +127,7 @@ jobs:
|
|
|
128
127
|
run: python -m pip install -e .[dev]
|
|
129
128
|
|
|
130
129
|
- name: Install awkward v2
|
|
131
|
-
run: python -m pip install -U
|
|
130
|
+
run: python -m pip install -U awkward "numpy<2.1"
|
|
132
131
|
|
|
133
132
|
- name: Run doctests on Python 3.11 with awkward v2.x
|
|
134
133
|
if: matrix.python-version == 3.11
|
|
@@ -137,16 +136,8 @@ jobs:
|
|
|
137
136
|
- name: Test package with awkward v2.x
|
|
138
137
|
run: python -m pytest -ra --cov=vector --ignore tests/test_notebooks.py .
|
|
139
138
|
|
|
140
|
-
- name: Install numpy v2
|
|
141
|
-
if: matrix.python-version != 3.8
|
|
142
|
-
run: python -m pip install "numpy>=2.0.0b1"
|
|
143
|
-
|
|
144
|
-
- name: Test package with numpy v2.x
|
|
145
|
-
if: matrix.python-version != 3.8
|
|
146
|
-
run: python -m pytest -ra --cov=vector --ignore tests/test_notebooks.py .
|
|
147
|
-
|
|
148
139
|
- name: Upload coverage report
|
|
149
|
-
uses: codecov/codecov-action@v4.
|
|
140
|
+
uses: codecov/codecov-action@v4.5.0
|
|
150
141
|
with:
|
|
151
142
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
152
143
|
|
|
@@ -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.
|
|
22
|
+
rev: "v0.6.1"
|
|
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.
|
|
29
|
+
rev: v1.11.1
|
|
30
30
|
hooks:
|
|
31
31
|
- id: mypy
|
|
32
32
|
files: src
|
|
@@ -37,7 +37,7 @@ repos:
|
|
|
37
37
|
- sympy
|
|
38
38
|
|
|
39
39
|
- repo: https://github.com/codespell-project/codespell
|
|
40
|
-
rev: v2.
|
|
40
|
+
rev: v2.3.0
|
|
41
41
|
hooks:
|
|
42
42
|
- id: codespell
|
|
43
43
|
exclude: ^docs/usage/intro.ipynb$
|
|
@@ -50,7 +50,7 @@ repos:
|
|
|
50
50
|
exclude: assets/js/webapp\.js
|
|
51
51
|
|
|
52
52
|
- repo: https://github.com/adamchainz/blacken-docs
|
|
53
|
-
rev: 1.
|
|
53
|
+
rev: 1.18.0
|
|
54
54
|
hooks:
|
|
55
55
|
- id: blacken-docs
|
|
56
56
|
args: ["-E"]
|
|
@@ -66,7 +66,7 @@ repos:
|
|
|
66
66
|
- id: rst-inline-touching-normal
|
|
67
67
|
|
|
68
68
|
- repo: https://github.com/nbQA-dev/nbQA
|
|
69
|
-
rev: 1.8.
|
|
69
|
+
rev: 1.8.7
|
|
70
70
|
hooks:
|
|
71
71
|
- id: nbqa-pyupgrade
|
|
72
72
|
args: ["--py37-plus"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: vector
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.2
|
|
4
4
|
Summary: Vector classes and utilities
|
|
5
5
|
Project-URL: Bug Tracker, https://github.com/scikit-hep/vector/issues
|
|
6
6
|
Project-URL: Changelog, https://vector.readthedocs.io/en/latest/changelog.html
|
|
@@ -29,7 +29,7 @@ Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
|
29
29
|
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
30
30
|
Classifier: Typing :: Typed
|
|
31
31
|
Requires-Python: >=3.8
|
|
32
|
-
Requires-Dist: numpy
|
|
32
|
+
Requires-Dist: numpy<2.1,>=1.13.3
|
|
33
33
|
Requires-Dist: packaging>=19
|
|
34
34
|
Provides-Extra: awkward
|
|
35
35
|
Requires-Dist: awkward>=1.2; extra == 'awkward'
|
|
@@ -78,7 +78,6 @@ Description-Content-Type: text/markdown
|
|
|
78
78
|
[![codecov percentage][codecov-badge]][codecov-link]
|
|
79
79
|
[![GitHub Discussion][github-discussions-badge]][github-discussions-link]
|
|
80
80
|
[![Gitter][gitter-badge]][gitter-link]
|
|
81
|
-
[![Code style: black][black-badge]][black-link]
|
|
82
81
|
|
|
83
82
|
[![PyPI platforms][pypi-platforms]][pypi-link]
|
|
84
83
|
[![PyPI version][pypi-version]][pypi-link]
|
|
@@ -99,7 +98,7 @@ Main features of Vector:
|
|
|
99
98
|
- [SymPy](https://www.sympy.org/en/index.html) vectors
|
|
100
99
|
- NumPy arrays of vectors (as a [structured array](https://numpy.org/doc/stable/user/basics.rec.html) subclass)
|
|
101
100
|
- [Awkward Arrays](https://awkward-array.org/) of vectors
|
|
102
|
-
- potential for more: CuPy, TensorFlow, Torch
|
|
101
|
+
- potential for more: CuPy, TensorFlow, Torch...
|
|
103
102
|
- Awkward backend also implemented in [Numba](https://numba.pydata.org/) for JIT-compiled calculations on vectors.
|
|
104
103
|
- [JAX](https://awkward-array.org/doc/main/user-guide/how-to-specialize-differentiate-jax.html) and [Dask](https://dask-awkward.readthedocs.io/en/stable/) support through Awkward Arrays.
|
|
105
104
|
- Distinction between geometrical vectors, which have a minimum of attribute and method names, and vectors representing momentum, which have synonyms like `pt` = `rho`, `energy` = `t`, `mass` = `tau`.
|
|
@@ -838,12 +837,15 @@ At the moment, it is possible to sub-class vector awkward mixins to extend the v
|
|
|
838
837
|
For instance, the `MomentumAwkward` classes can be extended in the following way:
|
|
839
838
|
|
|
840
839
|
```py
|
|
841
|
-
|
|
840
|
+
behavior = vector.backends.awkward.behavior
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
@ak.mixin_class(behavior)
|
|
842
844
|
class TwoVector(vector.backends.awkward.MomentumAwkward2D):
|
|
843
845
|
pass
|
|
844
846
|
|
|
845
847
|
|
|
846
|
-
@ak.mixin_class(
|
|
848
|
+
@ak.mixin_class(behavior)
|
|
847
849
|
class ThreeVector(vector.backends.awkward.MomentumAwkward3D):
|
|
848
850
|
pass
|
|
849
851
|
|
|
@@ -864,7 +866,7 @@ vec = ak.zip(
|
|
|
864
866
|
"phi": [[1.2, 1.4], [], [1.6], [3.4]],
|
|
865
867
|
},
|
|
866
868
|
with_name="TwoVector",
|
|
867
|
-
behavior=
|
|
869
|
+
behavior=behavior,
|
|
868
870
|
)
|
|
869
871
|
|
|
870
872
|
vec
|
|
@@ -879,7 +881,7 @@ vec.add(vec)
|
|
|
879
881
|
Similarly, other vector methods can be used by the new methods internally.
|
|
880
882
|
|
|
881
883
|
```py
|
|
882
|
-
@ak.mixin_class(
|
|
884
|
+
@ak.mixin_class(behavior)
|
|
883
885
|
class LorentzVector(vector.backends.awkward.MomentumAwkward4D):
|
|
884
886
|
@ak.mixin_class_method(np.divide, {numbers.Number})
|
|
885
887
|
def divide(self, factor):
|
|
@@ -901,7 +903,7 @@ vec = ak.zip(
|
|
|
901
903
|
"energy": [[50, 51], [], [52], [60]],
|
|
902
904
|
},
|
|
903
905
|
with_name="LorentzVector",
|
|
904
|
-
behavior=
|
|
906
|
+
behavior=behavior,
|
|
905
907
|
)
|
|
906
908
|
|
|
907
909
|
vec / 2
|
|
@@ -922,8 +924,19 @@ _rank = [TwoVector, ThreeVector, LorentzVector]
|
|
|
922
924
|
for lhs, lhs_to in _binary_dispatch_cls.items():
|
|
923
925
|
for rhs, rhs_to in _binary_dispatch_cls.items():
|
|
924
926
|
out_to = min(lhs_to, rhs_to, key=_rank.index)
|
|
925
|
-
|
|
926
|
-
|
|
927
|
+
behavior[(np.add, lhs, rhs)] = out_to.add
|
|
928
|
+
behavior[(np.subtract, lhs, rhs)] = out_to.subtract
|
|
929
|
+
|
|
930
|
+
vec + vec
|
|
931
|
+
vec.to_2D() + vec.to_2D()
|
|
932
|
+
```
|
|
933
|
+
|
|
934
|
+
Finally, instead of manually registering the superclass ufuncs, one can use the utility `copy_behaviors` function to copy behavior items for a new subclass -
|
|
935
|
+
|
|
936
|
+
```py
|
|
937
|
+
behavior.update(ak._util.copy_behaviors("Vector2D", "TwoVector", behavior))
|
|
938
|
+
behavior.update(ak._util.copy_behaviors("Vector3D", "ThreeVector", behavior))
|
|
939
|
+
behavior.update(ak._util.copy_behaviors("Momentum4D", "LorentzVector", behavior))
|
|
927
940
|
|
|
928
941
|
vec + vec
|
|
929
942
|
vec.to_2D() + vec.to_2D()
|
|
@@ -931,6 +944,7 @@ vec.to_2D() + vec.to_2D()
|
|
|
931
944
|
|
|
932
945
|
## Talks about vector
|
|
933
946
|
|
|
947
|
+
- 3rd July 2024 - [A new SymPy backend for vector: uniting experimental and theoretical physicists](https://indi.to/pfTC6) - [PyHEP 2024 (virtual)](https://indico.cern.ch/event/1384010/)
|
|
934
948
|
- 9th October 2023 - [What’s new with Vector? First major release is out!](https://indi.to/35ym5) - [PyHEP 2023 (virtual)](https://indico.cern.ch/event/1252095/) [🎥](https://www.youtube.com/watch?v=JHEAb2R3xzE&list=PLKZ9c4ONm-VlAorAG8kR09ZqhMfHiH2LJ&index=10)
|
|
935
949
|
- 13th September 2022 - [Constructing HEP vectors and analyzing HEP data using Vector](https://indi.to/bPmMc) - [PyHEP 2022 (virtual)](https://indico.cern.ch/event/1150631/) [🎥](https://www.youtube.com/watch?v=4iveMzrbe7s&list=PLKZ9c4ONm-VkohKG-skzEG_gklMaSgaO7&index=15)
|
|
936
950
|
- 20th July 2022 - [Analysis Grand Challenge / HEP Scientific Python Ecosystem](https://indico.cern.ch/event/1151329/timetable/#3-analysis-grand-challenge-hep) - [DANCE/CoDaS@Snowmass 2022 computational and data science software training](https://indico.cern.ch/event/1151329/)
|
|
@@ -976,14 +990,12 @@ development environment.
|
|
|
976
990
|
|
|
977
991
|
## Acknowledgements
|
|
978
992
|
|
|
979
|
-
This library was primarily developed by Jim Pivarski, Henry Schreiner, and Eduardo Rodrigues.
|
|
993
|
+
This library was primarily developed by Jim Pivarski, Henry Schreiner, Saransh Chopra, and Eduardo Rodrigues.
|
|
980
994
|
|
|
981
|
-
Support for this work was provided by the National Science Foundation cooperative agreement OAC-1836650 (IRIS-HEP) and OAC-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.
|
|
995
|
+
Support for this work was provided by the National Science Foundation cooperative agreement OAC-1836650 and PHY-2323298 (IRIS-HEP) and OAC-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.
|
|
982
996
|
|
|
983
997
|
[actions-badge]: https://github.com/scikit-hep/vector/actions/workflows/ci.yml/badge.svg
|
|
984
998
|
[actions-link]: https://github.com/scikit-hep/vector/actions
|
|
985
|
-
[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
986
|
-
[black-link]: https://github.com/psf/black
|
|
987
999
|
[codecov-badge]: https://codecov.io/gh/scikit-hep/vector/branch/main/graph/badge.svg?token=YBv60ueORQ
|
|
988
1000
|
[codecov-link]: https://codecov.io/gh/scikit-hep/vector
|
|
989
1001
|
[conda-version]: https://img.shields.io/conda/vn/conda-forge/vector.svg
|
|
@@ -994,7 +1006,7 @@ Support for this work was provided by the National Science Foundation cooperativ
|
|
|
994
1006
|
[gitter-link]: https://gitter.im/Scikit-HEP/vector?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
995
1007
|
[license-badge]: https://img.shields.io/badge/License-BSD_3--Clause-blue.svg
|
|
996
1008
|
[license-link]: https://opensource.org/licenses/BSD-3-Clause
|
|
997
|
-
[pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/
|
|
1009
|
+
[pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/main.svg
|
|
998
1010
|
[pre-commit-link]: https://results.pre-commit.ci/repo/github/scikit-hep/vector
|
|
999
1011
|
[pypi-link]: https://pypi.org/project/vector/
|
|
1000
1012
|
[pypi-platforms]: https://img.shields.io/pypi/pyversions/vector
|
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
[![codecov percentage][codecov-badge]][codecov-link]
|
|
9
9
|
[![GitHub Discussion][github-discussions-badge]][github-discussions-link]
|
|
10
10
|
[![Gitter][gitter-badge]][gitter-link]
|
|
11
|
-
[![Code style: black][black-badge]][black-link]
|
|
12
11
|
|
|
13
12
|
[![PyPI platforms][pypi-platforms]][pypi-link]
|
|
14
13
|
[![PyPI version][pypi-version]][pypi-link]
|
|
@@ -29,7 +28,7 @@ Main features of Vector:
|
|
|
29
28
|
- [SymPy](https://www.sympy.org/en/index.html) vectors
|
|
30
29
|
- NumPy arrays of vectors (as a [structured array](https://numpy.org/doc/stable/user/basics.rec.html) subclass)
|
|
31
30
|
- [Awkward Arrays](https://awkward-array.org/) of vectors
|
|
32
|
-
- potential for more: CuPy, TensorFlow, Torch
|
|
31
|
+
- potential for more: CuPy, TensorFlow, Torch...
|
|
33
32
|
- Awkward backend also implemented in [Numba](https://numba.pydata.org/) for JIT-compiled calculations on vectors.
|
|
34
33
|
- [JAX](https://awkward-array.org/doc/main/user-guide/how-to-specialize-differentiate-jax.html) and [Dask](https://dask-awkward.readthedocs.io/en/stable/) support through Awkward Arrays.
|
|
35
34
|
- Distinction between geometrical vectors, which have a minimum of attribute and method names, and vectors representing momentum, which have synonyms like `pt` = `rho`, `energy` = `t`, `mass` = `tau`.
|
|
@@ -768,12 +767,15 @@ At the moment, it is possible to sub-class vector awkward mixins to extend the v
|
|
|
768
767
|
For instance, the `MomentumAwkward` classes can be extended in the following way:
|
|
769
768
|
|
|
770
769
|
```py
|
|
771
|
-
|
|
770
|
+
behavior = vector.backends.awkward.behavior
|
|
771
|
+
|
|
772
|
+
|
|
773
|
+
@ak.mixin_class(behavior)
|
|
772
774
|
class TwoVector(vector.backends.awkward.MomentumAwkward2D):
|
|
773
775
|
pass
|
|
774
776
|
|
|
775
777
|
|
|
776
|
-
@ak.mixin_class(
|
|
778
|
+
@ak.mixin_class(behavior)
|
|
777
779
|
class ThreeVector(vector.backends.awkward.MomentumAwkward3D):
|
|
778
780
|
pass
|
|
779
781
|
|
|
@@ -794,7 +796,7 @@ vec = ak.zip(
|
|
|
794
796
|
"phi": [[1.2, 1.4], [], [1.6], [3.4]],
|
|
795
797
|
},
|
|
796
798
|
with_name="TwoVector",
|
|
797
|
-
behavior=
|
|
799
|
+
behavior=behavior,
|
|
798
800
|
)
|
|
799
801
|
|
|
800
802
|
vec
|
|
@@ -809,7 +811,7 @@ vec.add(vec)
|
|
|
809
811
|
Similarly, other vector methods can be used by the new methods internally.
|
|
810
812
|
|
|
811
813
|
```py
|
|
812
|
-
@ak.mixin_class(
|
|
814
|
+
@ak.mixin_class(behavior)
|
|
813
815
|
class LorentzVector(vector.backends.awkward.MomentumAwkward4D):
|
|
814
816
|
@ak.mixin_class_method(np.divide, {numbers.Number})
|
|
815
817
|
def divide(self, factor):
|
|
@@ -831,7 +833,7 @@ vec = ak.zip(
|
|
|
831
833
|
"energy": [[50, 51], [], [52], [60]],
|
|
832
834
|
},
|
|
833
835
|
with_name="LorentzVector",
|
|
834
|
-
behavior=
|
|
836
|
+
behavior=behavior,
|
|
835
837
|
)
|
|
836
838
|
|
|
837
839
|
vec / 2
|
|
@@ -852,8 +854,19 @@ _rank = [TwoVector, ThreeVector, LorentzVector]
|
|
|
852
854
|
for lhs, lhs_to in _binary_dispatch_cls.items():
|
|
853
855
|
for rhs, rhs_to in _binary_dispatch_cls.items():
|
|
854
856
|
out_to = min(lhs_to, rhs_to, key=_rank.index)
|
|
855
|
-
|
|
856
|
-
|
|
857
|
+
behavior[(np.add, lhs, rhs)] = out_to.add
|
|
858
|
+
behavior[(np.subtract, lhs, rhs)] = out_to.subtract
|
|
859
|
+
|
|
860
|
+
vec + vec
|
|
861
|
+
vec.to_2D() + vec.to_2D()
|
|
862
|
+
```
|
|
863
|
+
|
|
864
|
+
Finally, instead of manually registering the superclass ufuncs, one can use the utility `copy_behaviors` function to copy behavior items for a new subclass -
|
|
865
|
+
|
|
866
|
+
```py
|
|
867
|
+
behavior.update(ak._util.copy_behaviors("Vector2D", "TwoVector", behavior))
|
|
868
|
+
behavior.update(ak._util.copy_behaviors("Vector3D", "ThreeVector", behavior))
|
|
869
|
+
behavior.update(ak._util.copy_behaviors("Momentum4D", "LorentzVector", behavior))
|
|
857
870
|
|
|
858
871
|
vec + vec
|
|
859
872
|
vec.to_2D() + vec.to_2D()
|
|
@@ -861,6 +874,7 @@ vec.to_2D() + vec.to_2D()
|
|
|
861
874
|
|
|
862
875
|
## Talks about vector
|
|
863
876
|
|
|
877
|
+
- 3rd July 2024 - [A new SymPy backend for vector: uniting experimental and theoretical physicists](https://indi.to/pfTC6) - [PyHEP 2024 (virtual)](https://indico.cern.ch/event/1384010/)
|
|
864
878
|
- 9th October 2023 - [What’s new with Vector? First major release is out!](https://indi.to/35ym5) - [PyHEP 2023 (virtual)](https://indico.cern.ch/event/1252095/) [🎥](https://www.youtube.com/watch?v=JHEAb2R3xzE&list=PLKZ9c4ONm-VlAorAG8kR09ZqhMfHiH2LJ&index=10)
|
|
865
879
|
- 13th September 2022 - [Constructing HEP vectors and analyzing HEP data using Vector](https://indi.to/bPmMc) - [PyHEP 2022 (virtual)](https://indico.cern.ch/event/1150631/) [🎥](https://www.youtube.com/watch?v=4iveMzrbe7s&list=PLKZ9c4ONm-VkohKG-skzEG_gklMaSgaO7&index=15)
|
|
866
880
|
- 20th July 2022 - [Analysis Grand Challenge / HEP Scientific Python Ecosystem](https://indico.cern.ch/event/1151329/timetable/#3-analysis-grand-challenge-hep) - [DANCE/CoDaS@Snowmass 2022 computational and data science software training](https://indico.cern.ch/event/1151329/)
|
|
@@ -906,14 +920,12 @@ development environment.
|
|
|
906
920
|
|
|
907
921
|
## Acknowledgements
|
|
908
922
|
|
|
909
|
-
This library was primarily developed by Jim Pivarski, Henry Schreiner, and Eduardo Rodrigues.
|
|
923
|
+
This library was primarily developed by Jim Pivarski, Henry Schreiner, Saransh Chopra, and Eduardo Rodrigues.
|
|
910
924
|
|
|
911
|
-
Support for this work was provided by the National Science Foundation cooperative agreement OAC-1836650 (IRIS-HEP) and OAC-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.
|
|
925
|
+
Support for this work was provided by the National Science Foundation cooperative agreement OAC-1836650 and PHY-2323298 (IRIS-HEP) and OAC-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.
|
|
912
926
|
|
|
913
927
|
[actions-badge]: https://github.com/scikit-hep/vector/actions/workflows/ci.yml/badge.svg
|
|
914
928
|
[actions-link]: https://github.com/scikit-hep/vector/actions
|
|
915
|
-
[black-badge]: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
916
|
-
[black-link]: https://github.com/psf/black
|
|
917
929
|
[codecov-badge]: https://codecov.io/gh/scikit-hep/vector/branch/main/graph/badge.svg?token=YBv60ueORQ
|
|
918
930
|
[codecov-link]: https://codecov.io/gh/scikit-hep/vector
|
|
919
931
|
[conda-version]: https://img.shields.io/conda/vn/conda-forge/vector.svg
|
|
@@ -924,7 +936,7 @@ Support for this work was provided by the National Science Foundation cooperativ
|
|
|
924
936
|
[gitter-link]: https://gitter.im/Scikit-HEP/vector?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
925
937
|
[license-badge]: https://img.shields.io/badge/License-BSD_3--Clause-blue.svg
|
|
926
938
|
[license-link]: https://opensource.org/licenses/BSD-3-Clause
|
|
927
|
-
[pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/
|
|
939
|
+
[pre-commit-badge]: https://results.pre-commit.ci/badge/github/scikit-hep/vector/main.svg
|
|
928
940
|
[pre-commit-link]: https://results.pre-commit.ci/repo/github/scikit-hep/vector
|
|
929
941
|
[pypi-link]: https://pypi.org/project/vector/
|
|
930
942
|
[pypi-platforms]: https://img.shields.io/pypi/pyversions/vector
|
|
@@ -2,6 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
## Version 1.4
|
|
4
4
|
|
|
5
|
+
### Version 1.4.2
|
|
6
|
+
|
|
7
|
+
#### Fixes
|
|
8
|
+
|
|
9
|
+
- fix: depend on numpy<2.1 to support numba
|
|
10
|
+
- fix: fix ci for awkward v1.x (numpy v2 is out)
|
|
11
|
+
- fix: sympy tests (sympy v1.13)
|
|
12
|
+
|
|
13
|
+
#### Documentation
|
|
14
|
+
|
|
15
|
+
- docs: update intro notebook + readme
|
|
16
|
+
|
|
17
|
+
[#476]: https://github.com/scikit-hep/vector/pull/476
|
|
18
|
+
[#479]: https://github.com/scikit-hep/vector/pull/479
|
|
19
|
+
[#485]: https://github.com/scikit-hep/vector/pull/485
|
|
20
|
+
[#489]: https://github.com/scikit-hep/vector/pull/489
|
|
21
|
+
|
|
5
22
|
### Version 1.4.1
|
|
6
23
|
|
|
7
24
|
#### Fixes
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
.. image:: _images/vector-logo.png
|
|
7
7
|
|
|
8
|
-
|Action status| |Documentation Status| |pre-commit.ci status| |coverage| |GitHub Discussion| |Gitter|
|
|
8
|
+
|Action status| |Documentation Status| |pre-commit.ci status| |coverage| |GitHub Discussion| |Gitter|
|
|
9
9
|
|
|
10
10
|
|PyPI platforms| |PyPI version| |Conda latest releasetatus| |DOI| |License| |Scikit-HEP|
|
|
11
11
|
|
|
@@ -21,10 +21,12 @@ Main features of Vector:
|
|
|
21
21
|
* Uses names and conventions set by `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://coffeateam.github.io/coffea/modules/coffea.nanoevents.methods.vector.html>`_.
|
|
22
22
|
* Implemented on a variety of backends:
|
|
23
23
|
* pure Python objects
|
|
24
|
+
* `SymPy <https://www.sympy.org/en/index.html>`_ vectors
|
|
24
25
|
* NumPy arrays of vectors (as a `structured array <https://numpy.org/doc/stable/user/basics.rec.html>`_ subclass)
|
|
25
26
|
* `Awkward Arrays <https://awkward-array.org/>`_ of vectors
|
|
26
|
-
* potential for more: CuPy, TensorFlow, Torch
|
|
27
|
-
*
|
|
27
|
+
* potential for more: CuPy, TensorFlow, Torch...
|
|
28
|
+
* Awkward and Object backends also implemented in `Numba <https://numba.pydata.org/>`_ for JIT-compiled calculations on vectors.
|
|
29
|
+
* `JAX <https://awkward-array.org/doc/main/user-guide/how-to-specialize-differentiate-jax.html>`_ and `Dask <https://dask-awkward.readthedocs.io/en/stable/>`_ support through Awkward Arrays.
|
|
28
30
|
* Distinction between geometrical vectors, which have a minimum of attribute and method names, and vectors representing momentum, which have synonyms like ``pt`` = ``rho``, ``energy`` = ``t``, ``mass`` = ``tau``.
|
|
29
31
|
|
|
30
32
|
Installation
|
|
@@ -115,14 +117,12 @@ The API reference details the functionality of each ``class`` and ``function`` p
|
|
|
115
117
|
:target: https://github.com/scikit-hep/vector/actions
|
|
116
118
|
.. |Documentation Status| image:: https://readthedocs.org/projects/vector/badge/?version=latest
|
|
117
119
|
:target: https://vector.readthedocs.io/en/latest/?badge=latest
|
|
118
|
-
.. |pre-commit.ci status| image:: https://results.pre-commit.ci/badge/github/scikit-hep/vector/
|
|
120
|
+
.. |pre-commit.ci status| image:: https://results.pre-commit.ci/badge/github/scikit-hep/vector/main.svg
|
|
119
121
|
:target: https://results.pre-commit.ci/repo/github/scikit-hep/vector
|
|
120
122
|
.. |GitHub Discussion| image:: https://img.shields.io/static/v1?label=Discussions&message=Ask&color=blue&logo=github
|
|
121
123
|
:target: https://github.com/scikit-hep/vector/discussions
|
|
122
124
|
.. |Gitter| image:: https://badges.gitter.im/Scikit-HEP/vector.svg
|
|
123
125
|
:target: https://gitter.im/Scikit-HEP/vector?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
124
|
-
.. |Code style: black| image:: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
125
|
-
:target: https://github.com/psf/black
|
|
126
126
|
.. |PyPI platforms| image:: https://img.shields.io/pypi/pyversions/vector
|
|
127
127
|
:target: https://pypi.org/project/vector/
|
|
128
128
|
.. |PyPI version| image:: https://badge.fury.io/py/vector.svg
|