Skip to main content

Bempp-cl

Documentation Status DOI

Bempp-cl is an open-source boundary element method library that can be used to assemble all the standard integral kernels for Laplace, Helmholtz, modified Helmholtz, and Maxwell problems. The library has a user-friendly Python interface that allows the user to use BEM to solve a variety of problems, including problems in electrostatics, acoustics and electromagnetics.

Bempp-cl began life as BEM++, and was a Python library with a C++ computational core. The ++ slowly changed into pp as functionality gradually moved from C++ to Python with only a few core routines remaining in C++. Bempp-cl is the culmination of efforts to fully move to Python. It is an almost complete rewrite of Bempp: the C++ core has been replaced by highly SIMD optimised just-in-time compiled OpenCL kernels, or alternatively, by just-in-time compiled Numba routines, which are automatically used on systems that do not provide OpenCL drivers. User visible functionality is strictly separated from the implementation of computational routines, making it easy to add other discretisation technologies in the future (e.g. future support for SYCL-based heterogeneous compute devices).

Installation

Bempp-cl can be installed from this repository by running:

python -m pip install .

Full installation instuctions, including installation of dependencies, can be found at bempp.com/installation.html.

Documentation

Full documentation of Bempp can be found at bempp.com/documentation and in the Bempp Handbook. Automatically generated documentation of the Python API can be found on Read the Docs.

Testing

The functionality of the library can be tested by running:

python -m pytest test/unit

Larger validation tests that compare the output with the previous version of Bempp can be run with:

python -m pytest test/validation

Getting help

Errors in the library should be added to the GitHub issue tracker.

Questions about the library and its use can be asked on the Bempp Discourse.

Licence

Bempp-cl is licensed under an MIT licence. Full text of the licence can be found here.

Metadata

Release files for bempp-cl 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bempp-cl 0.4.2
File Size Uploaded Provenance
bempp_cl-0.4.2.tar.gz 33.9 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for bempp-cl 0.4.2
File Interpreter ABI Platform
bempp_cl-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 67.8 MB

Release files / bempp_cl-0.4.2.tar.gz

Download URL bempp_cl-0.4.2.tar.gz
Size 33.9 MB
Tags Source
SHA-256 checksum
How to use checksums
40527c4266980e78ec26ab3ab871fd5b4d6e69c16a4feccba285bf61c6fe81c3
BLAKE2b-256 checksum
How to use checksums
8cd8481a744f7e7684b71f80ccb7de7de238465b0132bd4f59049b650b487a28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 1, 2025.

Transparency log

Release files / bempp_cl-0.4.2-py3-none-any.whl

Download URL bempp_cl-0.4.2-py3-none-any.whl
Size 33.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4f1f862f6c735ce250dc48d977a4225e22bed26e418b7626de95d540c4f03c4b
BLAKE2b-256 checksum
How to use checksums
2382d6e4cbd25ecbaba8a5ab2e2f657ca88e388b396c4b3c04a01a0bb5d16b4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 1, 2025.

Transparency log

Security for bempp-cl 0.4.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for bempp_cl-0.4.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 1, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page