PyUblas provides a seamless glue layer between Numpy and Boost.Ublas for use with Boost.Python.

What does that mean? When writing hybrid scientific code, one of the main problems is that abstractions that exist in the high-level language go away or become unwieldy in the low-level language. Sometimes libraries exist in both languages for these abstractions, but they refuse to talk to each other. PyUblas is a bridge between two such libraries, for some of the main abstractions used in scientific codes, namely vectors and matrices.


See the PyUblas Documentation.


If you need help using PyUblas, please use the PyUblas Mailing list.


PyUblas may be downloaded from its Python Package Index page or obtained directly from my source code repository by typing

git clone

You may also browse the source.


  • Boost (any recent version should work)
  • Boost Ublas Bindings (this is only a bunch of headers you need to drop into your include path)


PyUblasExt is a companion to PyUblas and exposes a variety of useful additions to PyUblas, such as an “operator” class, matrix-free linear system solvers and eigensolvers. Interested? Head over to the PyUblasExt page.