Skip to main content

Python package to obtain Helmholtz or Laplace boundary integral operator on spheres using spherical harmonics. It also implements the Multiple Traces Formulation to solve scattering transmission problems in an ensemble of spheres.

Project description

Biosspheres

A Python-based solver for Laplace and Helmholtz scattering by multiple disjoint spheres, utilizing spherical harmonic decomposition and local multiple trace formulations.

Its main routines are for:

  • Computing boundary integral operators evaluated and tested against spherical harmonics.
  • Building Calderón operators.
  • Solving transmission problems using the multiple trace formulation.

Tested with python 3.9

Installation

We recommend to install the package in its own python environment.

Via pip

The package is available in TestPyPi.

For the minimum installation:

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ biosspheres

For the installation including the dependencies necessary for running jupyter notebooks:

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ biosspheres[all]

Docker

The biosspheres-notebook Docker image is configured to run biosspheres with Python 3.10. This can be done running:

docker run -v $(pwd):/root/shared -w "/root/shared" -p 8888:8888 pescapil/biosspheres-notebook

Additional comments

The file requirements.txt has the list of required package for biosspheres to work, they can be installed using pip install -r requirements.txt

How to use

See the Jupyter notebook examples in the folder "notebooks" to see how biosspheres can be used.

Contributing

Read the file CONTRIBUTING.md and also see the Jupyter notebooks.

Acknowledgments

External packages used in biosspheres

numpy

Library for arrays, vectors and matrices in dense format, along with routines of linear algebra, norm computation, dot product, among others. It also computes functions like sine, cosine, exponential, etc.

scipy

scipy.special

Library for special functions, as the spherical Bessel and spherical Hankel functions.

scipy.sparse

Library for sparse arrays.

pyshtools

All Legendre's functions are computed using the package pyshtools (documentation of pyshtools).

matplotlib

Library used in the examples for plotting.

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

biosspheres-0.1.1a1.tar.gz (128.0 kB view details)

Uploaded Source

Built Distribution

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

biosspheres-0.1.1a1-py3-none-any.whl (64.1 kB view details)

Uploaded Python 3

File details

Details for the file biosspheres-0.1.1a1.tar.gz.

File metadata

  • Download URL: biosspheres-0.1.1a1.tar.gz
  • Upload date:
  • Size: 128.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/11

File hashes

Hashes for biosspheres-0.1.1a1.tar.gz
Algorithm Hash digest
SHA256 c1df5e0dd8c78b73fd6b27602a260dd18f651d53bf5f948d33be840bf8e095bb
MD5 01c3a6bc683fa8b9b233f57a56ee1367
BLAKE2b-256 8ea2a5e37ceedbaeeed8072b2929a0b106ac758de5c78a4f562c32772c5ee5c1

See more details on using hashes here.

File details

Details for the file biosspheres-0.1.1a1-py3-none-any.whl.

File metadata

  • Download URL: biosspheres-0.1.1a1-py3-none-any.whl
  • Upload date:
  • Size: 64.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/11

File hashes

Hashes for biosspheres-0.1.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 03b24aa25d71f0a40a046accb4764c4a4d1eb0071287dc43dbffa6902309b693
MD5 054fa6dfc914aabd9845d1bc3e82d0c8
BLAKE2b-256 8a19bffbc3ddaf92c4d1b94ebd6349c02ffb93a85ed5dde1246cc9454cb2ee3f

See more details on using hashes here.

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