vector
Vector classes and utilities
Decision gist · record as of 2026-08-14
Yes. Vector is actively maintained, has no known vulnerabilities, installs with minimal friction, and is well-suited for scientific and physics applications requiring efficient array-based vector operations. The permissive BSD-3-Clause license poses no restrictions. Install it if you need to work with spatial vectors at scale or in high-energy physics contexts.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low friction installation with only numpy and packaging as runtime dependencies.
- Active maintenance with a recent release (85 days ago) and ongoing repository activity.
License · maintenance · safety
BSD-3-Clause (permissive) — BSD-3-Clause is a permissive license allowing commercial and private use with minimal restrictions, requiring only preservation of copyright and license notices.
last release 2026-05-21 (85 days) · last repo commit 2026-08-13 · 99 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 685,620 downloads/mo, #5,353 on PyPI
Alternatives
Verify before relying
pip install vector
import vector
v = vector.obj(x=1, y=2, z=3)
print(v.magnitude)- Whether optional backends (Awkward Arrays, SymPy, Numba) are automatically available or require separate installation.
- Performance characteristics when working with very large arrays compared to raw NumPy operations.
- Whether the optree integration for PyTree support is installed by default or as an optional dependency.
What it is and what it does
Vector is a Python library for working with 2D, 3D, and 4D space-time vectors, designed primarily for performing geometric and momentum calculations on arrays of vectors. It supports multiple coordinate systems (Cartesian, polar, pseudorapidity, etc.) and can work with several data backends including pure Python objects, NumPy structured arrays, Awkward Arrays, SymPy expressions, and Numba-compiled functions. Each backend provides the same interface, allowing you to write code once and run it across different data structures.
The library is part of the Scikit-HEP project and aligns with conventions from ROOT's TLorentzVector and related high-energy physics tools. It offers both geometric and momentum flavors of vectors, where momentum vectors provide physics-specific property names (like transverse momentum) alongside geometric equivalents. This makes it useful for scientific computing workflows that need to manipulate spatial data efficiently without writing explicit loops.
Use it for
- Perform batch geometric calculations on arrays of 3D points or vectors in scientific simulations.
- Work with 4D space-time vectors and Lorentz transformations in high-energy physics analysis.
- Convert between coordinate systems (Cartesian, polar, pseudorapidity) for physics calculations.
- Integrate vector operations into Numba-compiled functions for performance-critical code paths.
- Manipulate nested or ragged vector data structures using Awkward Arrays backend.
- Perform symbolic vector algebra using SymPy for analytical physics derivations.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Vector is actively maintained, has no known vulnerabilities, installs with minimal friction, and is well-suited for scientific and physics applications requiring efficient array-based vector operations. The permissive BSD-3-Clause license poses no restrictions. Install it if you need to work with spatial vectors at scale or in high-energy physics contexts.
Install
vector on PyPI
Before you install
Low friction installation with only numpy and packaging as runtime dependencies. Active maintenance with a recent release (85 days ago) and ongoing repository activity.
Requires Python 3.10 or later.
License in practice
BSD-3-Clause is a permissive license allowing commercial and private use with minimal restrictions, requiring only preservation of copyright and license notices.
Quickstart
pip install vector
import vector
v = vector.obj(x=1, y=2, z=3)
print(v.magnitude)
Verify before relying
- Whether optional backends (Awkward Arrays, SymPy, Numba) are automatically available or require separate installation.
- Performance characteristics when working with very large arrays compared to raw NumPy operations.
- Whether the optree integration for PyTree support is installed by default or as an optional dependency.
Package facts
| License | BSD-3-Clause permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesnumpypackaging |
| Maintenance | Actively maintained 85 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 685,620 / month, #5,353 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Free Threading :: 3 - StableTopic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Information AnalysisTopic :: Scientific/Engineering :: MathematicsTopic :: Scientific/Engineering :: PhysicsTyping :: Typed |
Evidence: vector-1.8.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “2D 3D vector math arrays”
- vectorVector provides 2D, 3D, and 4D space-time vector operations optimized…
- euclid3Provides 2D and 3D vector, matrix, quaternion, and geometry math…
- pyglmPyGLM provides Python bindings to OpenGL Mathematics (GLM), a C++…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also euclid3 · fastjet · shapely · uproot3-methods · awkward0 · opensimplex · spatial_image · awkward-cpp · uproot3 · mt2