Skip to main content

C++ and Python library for Polarizable Embedding

Project description

CI Documentation Status Language grade: C/C++

Conda PyPI

CPPE is an open-source, light-weight C++ and Python library for Polarizable Embedding (PE)1,2 calculations. It provides an easy-to-use API to implement PE for ground-state self-consistent field (SCF) calculations and post-SCF methods. A convenient Python interface is also available.

CPPE enables PE calculations in the following programs:

Linear scaling electric field computations in CPPE are achieved through autogenerated code by the fmmgen library.3

Examples for the open-source Python-driven programs can be found here.

Installation

Conda

The easiest way to install CPPE is via conda:

conda install cppe -c conda-forge

Build from Source

Manual builds can be done using CMake by running

git clone https://github.com/maxscheurer/cppe
cd cppe; mkdir build; cd build
cmake ..
make

pip

Another way to install CPPE is via pip:

pip install cppe

If no wheel is available for your platform, CPPE is built from source and a C++14 compatible compiler is required (see below).

To build from a local checkout:

git clone https://github.com/maxscheurer/cppe
cd cppe
python -m pip install .

Python interface

If the Python interface should be built, specify the CMake option -DENABLE_PYTHON_INTERFACE=ON. If pybind11 is not installed, CMake will automatically download pybind11 and install it locally. Installing through pip will build the Python interface.

Dependencies

  • C++ 14 compiler
  • Python >= 3.8 (interpreter and development packages)

Tests

The tests can be run with

python -m pip install -e .[test]
pytest

Citation

Papers:
Code: DOI

CPPE: An Open-Source C++ and Python Library for Polarizable Embedding
Maximilian Scheurer, Peter Reinholdt, Erik Rosendahl Kjellgren, Jógvan Magnus Haugaard Olsen, Andreas Dreuw, and Jacob Kongsted; Journal of Chemical Theory and Computation 2019 15 (11), 6154-6163, DOI: 10.1021/acs.jctc.9b00758

If you use the linear-scaling FMM implementation, please also cite:

Efficient Open-Source Implementations of Linear-Scaling Polarizable Embedding: Use Octrees to Save the Trees
Maximilian Scheurer, Peter Reinholdt, Jógvan Magnus Haugaard Olsen, Andreas Dreuw, and Jacob Kongsted; Journal of Chemical Theory and Computation 2021, DOI: 10.1021/acs.jctc.1c00225

Literature

1 Olsen, J. M. H.; Aidas, K.; Kongsted, J. (2010). Excited States in Solution through Polarizable Embedding. J. Chem. Theory Comput., 6 (12), 3721–3734. https://doi.org/10.1021/ct1003803

2 Olsen, J. M. H.; Kongsted, J. (2011). Molecular Properties through Polarizable Embedding. Advances in Quantum Chemistry (Vol. 61). https://doi.org/10.1016/B978-0-12-386013-2.00003-6

3 Pepper, R.; Fangohr, H. (2020). fmmgen: Automatic Code Generation of Operators for Cartesian Fast Multipole and Barnes-Hut Methods. arXiv:2005.12351

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

cppe-0.3.4.tar.gz (5.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cppe-0.3.4-cp313-cp313-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.13Windows x86-64

cppe-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

cppe-0.3.4-cp313-cp313-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

cppe-0.3.4-cp313-cp313-macosx_10_13_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

cppe-0.3.4-cp312-cp312-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows x86-64

cppe-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

cppe-0.3.4-cp312-cp312-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cppe-0.3.4-cp312-cp312-macosx_10_13_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

cppe-0.3.4-cp311-cp311-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.11Windows x86-64

cppe-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

cppe-0.3.4-cp311-cp311-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

cppe-0.3.4-cp311-cp311-macosx_10_9_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

cppe-0.3.4-cp310-cp310-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.10Windows x86-64

cppe-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

cppe-0.3.4-cp310-cp310-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

cppe-0.3.4-cp310-cp310-macosx_10_9_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file cppe-0.3.4.tar.gz.

File metadata

  • Download URL: cppe-0.3.4.tar.gz
  • Upload date:
  • Size: 5.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cppe-0.3.4.tar.gz
Algorithm Hash digest
SHA256 51ea145cb77050d05c162badb733eff3d23dc2dd3de423a8e19e91d6195790ad
MD5 d73788f31a4beeee3aa0db2a30473bf7
BLAKE2b-256 016a9c7a6f6f29a8520c0aeceed80ba261e855abac701accf57d23877b821e9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4.tar.gz:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: cppe-0.3.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cppe-0.3.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c265d4669de5e0dcfe1ffeac8682f8b49b26fe74c8577f53660cb08b387a73d2
MD5 6e9f123907b4b865f422e57ed4c6b745
BLAKE2b-256 553c4fc1e6c632f9ee3b13ec3a69bdebd4ea1b4be4e25a40c275593f3257db89

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cd134a3db7d758483f7109897616cbb02a7966e0a8224ffac90f7313f0f57308
MD5 1f0c29019cc5668e1390d348d1200783
BLAKE2b-256 a7f7f7bc4ebf6a9385aeff6422185137d36a083b4c7311e80e438696ea373957

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0fc57313b13ccd66d22f86465a8331f04275309da89ce30de4308ca93bac708c
MD5 401984bdf36d8a07098752d3aca58e4a
BLAKE2b-256 b58f7783bb36b69bfebcbd5ef9a94229ae27bd7d0b210f4161fa63380aba05a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3ae953a531a94268bda584b840e3522923062da52dba4103f85c119e5337b41d
MD5 35652612f10dd4feb9eed7281b5369ca
BLAKE2b-256 abd99169e369229b81339c9e48b639569c0b7a221f0a193975b27d61f00a564f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: cppe-0.3.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cppe-0.3.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b4d7ad593eaa2c73db78f91e1f570eae58f45306ee1f0c3efd5b6d1b0fd254f3
MD5 db26cb0c062607af6e31128fcfeab258
BLAKE2b-256 9e8610edd8661ac1b9f5ac1b464427ba02c67c4ca7707ef9ad66ee306bad7577

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 37ef3a0012d85438a79360ea0a61df37fc6c07a4b33bf76665b189777cd93f1c
MD5 04cff891ece86c39b47a58dda62f67ed
BLAKE2b-256 47273902d676b04df54d0d68c09ff54f79f9739fedea7310e6139993a48e4f8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7c0f2ed878bad6ce087bd94f5868725bef342b8662023d9fc09c73aef6a623c6
MD5 86f64d35ad840179f5d1d7741fd00f86
BLAKE2b-256 a64befbea40d4dea1388fbcdf38c87869f881b352b2fdaafb20927dc9f250f79

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 831eadf52c298326f6aa07d5c5052ccfb0712ab9589111b495200719e2601e71
MD5 104eee3ceab7e3e0e1224dc464eb7cb0
BLAKE2b-256 cf90f679cfad9ad63dae1fd70d451785d74cd0ea6de213c74b348e4901efe376

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: cppe-0.3.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cppe-0.3.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7ef2c9cdd42700ee5a1bc80df31ffcd76999fe518c7c44b715b38c9d29f33e56
MD5 56b2cea5e3d0234d71f49a9e2196a06b
BLAKE2b-256 c69d9f3dafff65b65a3c2dde5e6cf293401f9c46656f75bd82e6adce535a5223

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 55689b68c2cbfc65f820517c9b438320e0f1b0a2dc231374cd10327a5afbb96b
MD5 e12b41478edde62fea5e50cc755d72a3
BLAKE2b-256 d6b5378143c785c9d21d10f010d47c7e458b4734e608df3394ad96eb337c3d80

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 968aad6132ff174919e863f24cb562cfba0fd7b17e5a8ead5fdc4faed9c84edf
MD5 9b000cfe76a0f9ad17b7c0308fcb1ae7
BLAKE2b-256 62ed0715d2b037a319a763298aabb3b6de003a01568c34abbfcce7e3a377aeb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5fb30ba537c05c85e6a4db1d69fbddc5526b029dc819914e07c5ed50885a2844
MD5 77187d02c2551b43bb04bab0215858e4
BLAKE2b-256 7d620bf9b8e81a3cf0ece0c2ace1b8eeab9822a27e3a3e97389755ac1f264d2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: cppe-0.3.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cppe-0.3.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 30c99bb1a6b876e7cffbff6489e8d470d3fd11748d31d30af70f1ebdb02c3671
MD5 c3ce81ff350ba2c67570b0b34354e6cb
BLAKE2b-256 f972ee725a56c503b428d7e2445443b9a78cf8133b2f2ea60cc9f1fe05090722

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 997e782b0bc58c638021f0532836152eb4da6b3baf9bf55df32f9c887e88b244
MD5 ae7c4684b1d406f8fe860561e1182fba
BLAKE2b-256 186e6cca88651c888fcd05bb3f49785cf38e07ad8a750060fbf1337ec9bee1e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7bd2c41664609b7764bccb810bff7526da0d0db934c9dc54b03e955533069fc4
MD5 773aa69b34024749c3045e6a44ea90c9
BLAKE2b-256 8a1887e2804ecaadfbf0c8ec7b91ff99f8c9d96cdfd65dce08a7f3171ae25158

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cppe-0.3.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cppe-0.3.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 daba27e70f4004f8153b96c9a68a2c533d9c681934dad168e02c9a99c759a649
MD5 b3799b6dc674fb44fbf19b1fb45d8f6c
BLAKE2b-256 a1a9e4575e38067961525e01bf444e6931243d8a6dcd4599ab27dd6f19bc3cda

See more details on using hashes here.

Provenance

The following attestation bundles were made for cppe-0.3.4-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on maxscheurer/cppe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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