Skip to main content

Bindings between Numpy and Eigen using Boost.Python

Project description

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 decomposition, QR decomposition, etc.
  • full support of SWIG objects
  • full support of runtime declaration of Numpy scalar types
  • extended API to expose std::vector types
  • full support of vectorization between C++ and Python (all the hold objects are properly aligned in memory)

Setup

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

The Conda approach

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

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eigenpy-3.5.1.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

eigenpy-3.5.1-3-cp312-cp312-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

eigenpy-3.5.1-3-cp311-cp311-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

eigenpy-3.5.1-3-cp310-cp310-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

eigenpy-3.5.1-3-cp39-cp39-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

eigenpy-3.5.1-0-cp312-cp312-musllinux_1_1_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_aarch64.whl (5.0 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ ARM64

eigenpy-3.5.1-0-cp312-cp312-macosx_10_9_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

eigenpy-3.5.1-0-cp311-cp311-musllinux_1_1_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_aarch64.whl (5.0 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ ARM64

eigenpy-3.5.1-0-cp311-cp311-macosx_10_9_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

eigenpy-3.5.1-0-cp310-cp310-musllinux_1_1_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_aarch64.whl (5.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ ARM64

eigenpy-3.5.1-0-cp310-cp310-macosx_10_9_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

eigenpy-3.5.1-0-cp39-cp39-musllinux_1_1_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_aarch64.whl (5.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ ARM64

eigenpy-3.5.1-0-cp39-cp39-macosx_10_9_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

eigenpy-3.5.1-0-cp38-cp38-musllinux_1_1_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ x86-64

eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_aarch64.whl (5.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.28+ ARM64

eigenpy-3.5.1-0-cp38-cp38-macosx_10_9_x86_64.whl (4.9 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file eigenpy-3.5.1.tar.gz.

File metadata

  • Download URL: eigenpy-3.5.1.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for eigenpy-3.5.1.tar.gz
Algorithm Hash digest
SHA256 85289cc71bddebfca5ecec9e6519ba3b114f07bc9900bc842d2bb7a1d4128f2f
MD5 0dc6fec4158a855d0ab65660fc2fb963
BLAKE2b-256 f53146da7a4fad88de70129e487111f2f4886e8acd94ef7885bb3177ab800f94

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eeaf28c567599b42c8aaae6ab1ab1ff86b3f6ecfd90929becefcab7fe88fb3d9
MD5 fbf9943be6542db5b3e97ae6b56d7c6e
BLAKE2b-256 abfde319178d7575dd124d8211d50eb72203752dbf621d14beae06f8c4b22e02

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7f8674e57d1947c8394bbcebb8bb52ac3c97048dfcf298dd4075e5ef599331c8
MD5 484162c0ed56dba7273a91b1abfbda34
BLAKE2b-256 c7d1dcfda3241739538ea6ac6b722d3a9754de502e1d5fe88efc83041cd801b3

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13d935fce62c26bd15289cc7f41dc32afbb40f22927b92cc4aed46892509cfaa
MD5 8ee5c9552c5caf1daf1dc6f2dc38e26d
BLAKE2b-256 267af736b2d621766c505bf22309ebeadd529faec0b4b7293cfd61024db66eba

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9843b12e0c40d7a6b03f699bb3bb503b3acc82ab57571269cd5dbec671c27f91
MD5 b068de287a676b30683ee5fff303f93d
BLAKE2b-256 0b2a3277f4ef9c219023e21d8559b60e94143a3eb737e0a7981783e3aea35de5

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 3feaf61195cc975e5700d5a9f24038dc89b9651b55c9941fa4298f7b9c1d06a7
MD5 d33adb2a37390d37b9390b227d9a4f73
BLAKE2b-256 f7d56e234c812aa5f925c58645cf75a9a5333cc6b2466f8a8028f4535444b7fe

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c49334328397a0f3f275102c0b17f84d1d711141432e1ef89613cbc524a945f1
MD5 04c00737db7c927b99cfc4634596cad5
BLAKE2b-256 4aa68170ed731a1a0904d7d39de648e3367b94569e06772e9393e9773d5b0c2e

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 424847dd1ba24abefc928702cceb5df374c65bb2e181a9d7a06052134af232f9
MD5 e96d43fefdf983a5fae47088eb6dddc1
BLAKE2b-256 48118dc6d44270a3bf4635d6f305a4bfd9f79bc5c0aa477c977b66a15f38f07e

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 258535f549879e2a0cf6f3587e2509333e21a93a09ed15d36b47650ab6c25636
MD5 0b2eb6f21a9900a619e694d758251ce0
BLAKE2b-256 c8fdeced73f20a4a654ae1aa938cdc4d03687cb537d3d7a715ca9363a68b1824

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 660e820a4a14d7cde75952e3a8d12131f7686ff040327d5b0fb7e1b5d4328f3b
MD5 2798bafe608975606da4fdb163e669af
BLAKE2b-256 b5e11fbcee4e763c77997303fcd25663599a827a669fe50daa67c839f778528c

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 13a93c75609655dbda8f9cc31eb55bd3dcfa2452ba9d6b98028a2092fbf20200
MD5 2cd2c118cf1696aefc6fc76b67c428fb
BLAKE2b-256 a89f002e43ef95e58649ee194cd601dfba9104a8a26a4b4da41e1f08824a9110

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c1e1060c36bec044f60077caaba8839bed43bf3cdf29f23db453d30b2f8b0e9e
MD5 96702762219334a4d3cec45fcee300d9
BLAKE2b-256 59346a261c18839dd6c4aa9a69809bfa7fb9733f7c7da3b555998ac020b928e7

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b9afcc6ba6ea6c48e3574d5b3cd141884f1423a288b7c51af5b2ae3d2b92223a
MD5 014a710f98d42b142d17583a1bd5b392
BLAKE2b-256 919eea4be6e759e3ebebb827a5946917074c26af582a2e8bc0166a65193ec91c

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 390696093e9c1ac53221fe66bec936914ff0dee0871a1e4641c69dcdd04365a1
MD5 b4ef4d266b971d186829a486e92cc847
BLAKE2b-256 356fe776dffc292c1df7bef310a5144e854538d228b899e1283ea17ce6c690c3

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 88180d13f57b457ecf23bc1504a6f8e2db4e7aa5c2768a7c5e8dc00f5b11a3b5
MD5 df003352f0afff166b675ce012bf3080
BLAKE2b-256 6853fb0f64ef9588eab7ace94b97fe0ba99d45a1f6f8a2e7102781c0a1c692d5

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 eda3f59bcd46b3cbe527918198b054d1fb35e601007d5afb344be4d32c609041
MD5 26d42a8b4862c9d4be726492194db913
BLAKE2b-256 06fa73e24112ab7ff0f62669be05ef69597ba8e7b564db33f75d7d3a99ddb519

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9b4071cdad0dd2a23c478f31234357b4ee34573496349b37d25f7a4cd87aa9a4
MD5 ce501e0cbbe140a7b3650af67264909b
BLAKE2b-256 d9c300cb792cd64b01fb6ec8963a49dcb4b9acadeacb06493f92dabb2c998b39

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 6493046fd07141492857661eb6272d1defdd5f338fc1b26f4226b8c2bd9fc763
MD5 69f0480eb2e672b8d0ca293101294981
BLAKE2b-256 2dffd409d8a3c7fc79c31f3f5946504c614aed1e937449fbfb928291df5d2892

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 640b6d4cc2d34e2bb2b93577bfd68f071e97f807fb18a7965155de21cb290657
MD5 a7779baa81ec1218f5764745f8335763
BLAKE2b-256 bbba559dafb487fdbc723efac743823e87766d32fe8c6761692a6312c0bbeb04

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b9424f8132d574b807b080e6ad2d34d97e9770bdc0c11ea074f891fd818c4619
MD5 e993488ce780a5c8613342fae2b5f895
BLAKE2b-256 45db69c7d84dec49d94cb5428365678110fd6f941aa4bec46437729d697dc8eb

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7370e75fb29ed066cc9a1866b2988037ad79d8733b58576929aae723f3880b02
MD5 354b258cca611ff7a55383e770a473b7
BLAKE2b-256 5e41b4a28628a037ff23a1eb71c5e3ce1a80225dceb6dc9b627455811d125f5f

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 fefc71da4c3790f168145c429c5b39b3804a88fbe9471bc6ae12a54538da5d16
MD5 071d951408c232681511bdd3d6649073
BLAKE2b-256 300222a262cd710f5f3994f2f31aa076029499910130646ddf0aeeaf590b4f28

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ffd43612737b30da1b5c27a92f696e74259fab39242c5582160384211719694c
MD5 23f613bd3e3a911bae620fe505b7dd36
BLAKE2b-256 f9cc5d2623314cf0507976f5bd12c967bb3471245c96081e06c2617e9599e4c2

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8c64e996506374a2b3a9300c22f6cc50d9afefc5da4c14c9b3d4f0ca236cfb59
MD5 e1be43f6b66c0a7da67badb1cdc8d3d3
BLAKE2b-256 b49342b1605dcb6c6d0c0f55dd7a74b540b81ff959b3c695341addfaa9bf29b3

See more details on using hashes here.

File details

Details for the file eigenpy-3.5.1-0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for eigenpy-3.5.1-0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 708f065f8cecd76cbff0589ceeffd47336862fb4d0f8bf79aee745dff275a24d
MD5 b128e26d38c4e6cd1dba4a331f97bfda
BLAKE2b-256 ba9e01b434b5d3b2d63ef42631ced2289b61f02697a810f7c4ce0225483cffb4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page