Skip to content

stack-of-tasks/eigenpy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7102d83 · Feb 11, 2025
Feb 10, 2025
Feb 20, 2024
Feb 11, 2025
Nov 6, 2024
Feb 11, 2025
Feb 24, 2023
Jan 10, 2025
Oct 7, 2024
Jan 10, 2025
Jan 10, 2025
Jan 30, 2024
Feb 20, 2024
Oct 28, 2024
Nov 6, 2024
Nov 9, 2020
Aug 13, 2021
Jan 6, 2025
Feb 11, 2025
Jan 20, 2025
Jan 9, 2025
Nov 6, 2024
Jul 18, 2022
Feb 3, 2025
Aug 28, 2024
Feb 11, 2025
Feb 1, 2025
Feb 11, 2025
Feb 20, 2024
Sep 8, 2022

Repository files navigation

EigenPy — Versatile and efficient Python bindings between Numpy and Eigen

License Build Status Conda Downloads Conda Version PyPI version Code style: black Linter: ruff

EigenPy is an open-source framework that allows the binding of the famous Eigen C++ library in Python via Boost.Python.

EigenPy provides:

  • full memory sharing between Numpy and Eigen, avoiding memory allocation
  • full support Eigen::Ref avoiding memory allocation
  • full support of the Eigen::Tensor module
  • exposition of the Geometry module of Eigen for easy code prototyping
  • standard matrix decomposion routines of Eigen such as the Cholesky decomposition (SVD and QR decompositions can be added)
  • full support of SWIG objects
  • full support of runtime declaration of Numpy scalar types
  • extended API to expose several STL types and some of their Boost equivalents: optional types, std::pair, maps, variants...
  • full support of vectorization between C++ and Python (all the hold objects are properly aligned in memory)

Installation

The installation of EigenPy on your computer is made easy for Linux/BSD, Mac OS X, and Windows environments.

Conda

You simply need this simple line:

conda install eigenpy -c conda-forge

Ubuntu

You can easily install EigenPy from binaries.

Add robotpkg apt repository

  1. Add robotpkg as source repository to apt:
sudo sh -c "echo 'deb [arch=amd64] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg' >> /etc/apt/sources.list.d/robotpkg.list"
  1. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.key | sudo apt-key add -
  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt-get update

Install EigenPy

  1. The installation of EigenPy and its dependencies is made through the line:
sudo apt install robotpkg-py35-eigenpy

where 35 should be replaced by the Python 3, you want to work this (e.g., robotpkg-py36-eigenpy to work with Python 3.6).

Mac OS X

The installation of EigenPy on Mac OS X is made via HomeBrew. You just need to register the tap of the software repository.

brew tap gepetto/homebrew-gepetto

and then install EigenPy for Python 3.x with:

brew install eigenpy

Build

Build instruction can be found here

Credits

The following people have been involved in the development of EigenPy:

If you have taken part in the development of EigenPy, feel free to add your name and contribution here.

Acknowledgments

The development of EigenPy is supported by the Gepetto team @LAAS-CNRS and the Willow team @INRIA.

Packages

No packages published

Contributors 24