Skip to main content

Bellhop underwater acoustic propagation model

Project description

AUBELLHOP: underwater acoustics ray tracing

PyPI Test Suite Code Lint

Installation and demo

You can (hopefully) install aubellhop with pre-compiled binaries included straight from PyPI. This short script will create a demo folder, install aubellhop using uv, and then run the demo function:

dir=bellhop-example && mkdir -p "$dir" && cd "$dir"
uv init --bare
uv add aubellhop
uv run python -c "import aubellhop as bh; bh.demo()"

This creates the demo file bellhop_demo.py and runs it. Then to re-run the demo:

uv run bellhop_demo.py

If you use Python with different build/environment setups, the standard approaches should work just fine:

pip install aubellhop

Followed by setting up a virtual environment with venv and so on.

See the compilation and installation guide for building from source if you wish to edit the code or the prebuilt binaries don't work for you.

Documentation

Background

  • Bellhop is an underwater acoustics simulator, part of the Acoustics Toolbox by Michael B. Porter and colleagues.

  • The Bellhop component of the Acoustics Toolbox has been extracted UCal San Diego to support the multithreaded C++/CUDA version: bellhopcuda. The UCal team also maintain a fork of the Fortran sources with numerical properties and robustness improved and bugs fixed; some of these changes have been back-ported into the Acoustics Toolbox directly but the codebases are no longer identical

  • A Python wrapper for Bellhop was previously provided within the arlpy package by Mandar Chitre at the Acoustic Research Laboratory, National University of Singapore. arlpy has been superceded by a Julia wrapper by the same author within UnderwaterAcoustics.jl.

  • An alternative Python interface is provided in PYAT by Orlando Camargo Rodríguez.

  • This repository, from Adelaide University, Australia, is a subsequent consolidation of several components of these works, with the intention of providing a clean and well-documented repository to provide easier access to the Bellhop code. The main features of the AU work are:

    • Consolidation of code files and build processes with a single set of clean sources
    • Adaptation and extension of the arlpy-based Python wrapper for Bellhop
    • Updated Fortran source code with automated documentation using FORD and lint checking using fortitude
    • Addition of explicit regression and unit test files using pytest
    • Continuous integration through Github for all documentation, linting, test suite, and code coverage
    • PyPI packaging with pre-compiled binaries for easy installation across Linux, macOS, and Windows

Impressum

Copyright (C) 2025-2026 Adelaide University, Australia
Copyright (C) 2021-2025 The Regents of the University of California Marine Physical Lab at Scripps Oceanography, c/o Jules Jaffe, jjaffe@ucsd.edu
Copyright (C) 1983-2024 Michael B. Porter

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

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

aubellhop-0.1.9.tar.gz (182.0 kB view details)

Uploaded Source

Built Distributions

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

aubellhop-0.1.9-cp313-cp313-win_amd64.whl (731.9 kB view details)

Uploaded CPython 3.13Windows x86-64

aubellhop-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

aubellhop-0.1.9-cp313-cp313-macosx_15_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

aubellhop-0.1.9-cp312-cp312-win_amd64.whl (731.9 kB view details)

Uploaded CPython 3.12Windows x86-64

aubellhop-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

aubellhop-0.1.9-cp312-cp312-macosx_15_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

File details

Details for the file aubellhop-0.1.9.tar.gz.

File metadata

  • Download URL: aubellhop-0.1.9.tar.gz
  • Upload date:
  • Size: 182.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aubellhop-0.1.9.tar.gz
Algorithm Hash digest
SHA256 88cc14b68725f1ea5fbf3125a07d384aee56e3385eceeada7e23fa75a8a160d3
MD5 14f754068eac9e61a222a7a4d8a914f2
BLAKE2b-256 7dd679ca36be8932623bf0135356f0a5e84942646ee68126b4f0ce94ee4911ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9.tar.gz:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: aubellhop-0.1.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 731.9 kB
  • 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 aubellhop-0.1.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ab2706ae53d43d71ec11ef8a607772bd69e040e7cdee211ff322602ef753cc56
MD5 d343e67db1ab33ec857d8fde351e171a
BLAKE2b-256 3f734175176324376896d1a0953071ea2533cd7534fb1186ed0407ca89edc6f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aubellhop-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 173daf280d160fe74bbc09027142b30addaef2d1d8546b1ef6c94c85f2d1cc7b
MD5 bd4263de5f693768be6c168b86660186
BLAKE2b-256 bae2aa67f8c81cb26ff30cd27e630a377369637e614e5497df0253a552ea0a33

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for aubellhop-0.1.9-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 2270880fbb3d565201b25153228e4ab30f5e9d5f5c0e6fcb6947cab3433b1dd0
MD5 d4fdd32cfcabd207cab2c0a360697509
BLAKE2b-256 f5128babacfacf8042ad0e0641c44277f8c37fe028a7e7626f936a57e4bf16c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: aubellhop-0.1.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 731.9 kB
  • 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 aubellhop-0.1.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8a769960f8b6ae1273cbeb06126510085a33833ece93c268562a37279dd937c2
MD5 92b65ba28ef811acebbce144939d21f8
BLAKE2b-256 161c8046c42e40feb6ac52a5943e58ea1dcd73dad692c2f734dad83a6d1def33

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for aubellhop-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2e275a96d407de42c71cdf3a2f5fc5c8b7735d9e8e081aa001b4a12b68a4be90
MD5 26cf04b7d1f39f92d23a7827c0a07be0
BLAKE2b-256 90bc6872dc74646dd828e6914d98eb4911fb8c09ad287caed5ba1c5af9bae6f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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

File details

Details for the file aubellhop-0.1.9-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for aubellhop-0.1.9-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 7a18c0f0b2b2ca79359fb786bc957aaf0a63ccf9e0db4a852ae13412845481b8
MD5 0beb097c2f5cf7aae1235fe7473765ab
BLAKE2b-256 77be7266fcbaefb0a6d7590c7cd2c41fe0ae43180f52874d02084be7fbe111f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for aubellhop-0.1.9-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: publish.yml on avc-adelaide/aubellhop

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