Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
jazzy

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
kilted

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
rolling

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro ardent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro bouncy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro crystal showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
eloquent

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version master
Last Updated 2025-04-25
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg ([#545)(https://github.com/stack-of-tasks/eigenpy/pull/545))

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro dashing showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
galactic

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Name Deps
coal
pinocchio

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
foxy

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version master
Last Updated 2025-04-25
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg ([#545)(https://github.com/stack-of-tasks/eigenpy/pull/545))

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Name Deps
coal
pinocchio

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
iron

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Name Deps
coal
pinocchio

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro lunar showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro jade showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
indigo

Package Summary

Tags No category tags.
Version 3.10.3
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/nim65s/eigenpy.git
VCS Type git
VCS Version ros
Last Updated 2025-02-20
Dev Status MAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)
  • Fix compilation error on armhf (#488)

[3.7.0] - 2024-06-11

Added

  • Added id() helper to retrieve unique object identifier in Python (#477)
  • Expose QR solvers (#478)

[3.6.0] - 2024-06-05

Added

  • Added a deprecation call policy shortcut (#466)

Fixed

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

No version for distro hydro showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
humble

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version devel
Last Updated 2025-06-03
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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. Register the authentication certificate of robotpkg:
curl http://robotpkg.openrobots.org/packages/debian/robotpkg.asc | sudo tee /etc/apt/keyrings/robotpkg.asc

  1. Add robotpkg as source repository to apt:
sudo tee /etc/apt/sources.list.d/robotpkg.list <<EOF
deb [arch=amd64 signed-by=/etc/apt/keyrings/robotpkg.asc] http://robotpkg.openrobots.org/packages/debian/pub $(lsb_release -cs) robotpkg
EOF

  1. You need to run at least one apt update to fetch the package descriptions:
sudo apt 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

File truncated at 100 lines see the full file

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

Changed

  • Change the default branch to devel (#547)

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg (#545)

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
kinetic

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version master
Last Updated 2025-04-25
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg ([#545)(https://github.com/stack-of-tasks/eigenpy/pull/545))

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

Deps Name
catkin

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version master
Last Updated 2025-04-25
Dev Status MAINTAINED
CI status Continuous Integration : 0 / 0
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg ([#545)(https://github.com/stack-of-tasks/eigenpy/pull/545))

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange

Package symbol

eigenpy package from eigenpy repo

eigenpy

ROS Distro
noetic

Package Summary

Tags No category tags.
Version 3.11.0
License BSD
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/stack-of-tasks/eigenpy.git
VCS Type git
VCS Version master
Last Updated 2025-04-25
Dev Status MAINTAINED
CI status Continuous Integration : 0 / 0
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Bindings between Numpy and Eigen using Boost.Python

Additional Links

Maintainers

  • Justin Carpentier
  • Wolfgang Merkt
  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Nicolas Mansard

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.

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

[Unreleased]

[3.11.0] - 2025-04-25

Added

  • Add user-defined literal ““_a for bp::arg ([#545)(https://github.com/stack-of-tasks/eigenpy/pull/545))

Fixed

  • Fix handling of non sorted sparse matrix (#538)

Changed

  • Update clang-format standard to C++11, reformat code

[3.10.3] - 2025-02-11

Added

  • Add BUILDING_ROS2_PACKAGE to generate ament specific file (#530)

Changed

  • Modernize doxygen documentation (#533)

[3.10.2] - 2025-01-13

Fixed

  • Fix Python library linkage for Debug build on Windows (#514)
  • Fix np.ones when dtype is a custom user type (#525)

[3.10.1] - 2024-10-30

Added

  • Add Pixi support (#444)

Fixed

  • Don’t use C++14 feature (#510)
  • Add inline to deprecationTypeToPyObj definition to avoid linking error (#512)

[3.10.0] - 2024-09-26

Added

  • GenericMapPythonVisitor/StdMapPythonVisitor can now take an extra visitor argument in the expose() method, similar to StdVectorPythonVisitor

Changed

  • Move GenericMapPythonVisitor to its own header eigenpy/map.hpp
  • Rename overload_base_get_item_for_std_map to overload_base_get_item_for_map, move out of eigenpy::details namespace
  • Move EmptyPythonVisitor to new header eigenpy/utils/empty-visitor.hpp

[3.9.1] - 2024-09-19

Added

  • Add test returning reference of std::pair (#503)
  • Add more general visitor GenericMapPythonVisitor for map types test boost::unordered_map<std::string, int> (#504)
  • Support for non-default-contructible types in map types (#504)
  • Add type_info helpers (#502)
  • Add NumPy 2 support (#496)

Changed

  • Move StdMapPythonVisitor out of eigenpy::python namespace, which was a mistake (#504)

[3.9.0] - 2024-08-31

Changed

  • The exposeStdVectorEigenSpecificType() template function now takes the vector allocator as a template parameter (#500)

Added

  • Add bp::dist to std::map converter (#499)

[3.8.2] - 2024-08-26

Fixed

  • Fix function signature on Windows (#494)

[3.8.1] - 2024-08-25

Fixed

  • Fix compatibility issue with NumPy 2.x on Windows (#492)

[3.8.0] - 2024-08-14

Added

  • Add compatibility with jrl-cmakemodules workspace (#485)
  • Remove support of Python 3.7 (#490)

Fixed

  • Remove CMake CMP0167 warnings (#487)

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigenpy at Robotics Stack Exchange