Introduction
Julia toolbox for underwater acoustic modeling
Overview
The UnderwaterAcoustics.jl
ecosystem provides a set of tools for modeling and simulating underwater acoustic propagation. The main package, UnderwaterAcoustics.jl
, defines the core application programming interface (API), and provides a set of core differentiable propagation models and utilities. It also provides support for replay channels, where measurements from the ocean are used to empirically construct channel models. The package is designed to be extensible, allowing other packages to add models to the ecosystem.
The AcousticsToolbox.jl
package adds support for popular benchmark Fortran models from the Ocean Acoustic Library (OALIB) such as the Bellhop ray tracer and Kraken normal mode models. The AcousticRayTracers.jl
package provides a fully differentiable ray tracer RaySolver
written in Julia.
The VirtualAcousticOcean.jl
package enables real-time acoustic simulation of underwater communication networks and sonar systems.
Highlights
- Underwater acoustic propagation modeling API with pluggable models
- Differentiable and probabilistic underwater acoustic models
- 2D/3D underwater acoustic simulation tools
- Replay channel and noise models
- Underwater acoustics utility functions
The API has changed significantly in UnderwaterAcoustics.jl v0.4
. If you have code that depends on the old API, you may wish to refer to the porting guide before you upgrade.
Installation
using Pkg
Pkg.add("UnderwaterAcoustics")
Getting started
Tutorials
- Tracking a drifting transmitter – differentiable propagation modeling and gradient descent
- Geoacoustic inversion with an acoustic profiler – probabilistic modeling and Bayesian inference
- Channel geometry from impulse response – probabilistic modeling and Bayesian inference
- Sound speed profile from impulse response – combining neural networks with physics-based models
Contributing
Contributions in the form of bug reports, feature requests, ideas/suggestions, bug fixes, code enhancements, and documentation updates are most welcome. Please read contribution guidelines if you wish to start contributing.
Talks & publications
- Mandar Chitre, “Differentiable Ocean Acoustic Propagation Modeling,” in OCEANS 2023 IEEE/MTS – Limerick, 5-8 June 2023. [doi]
- Mandar Chitre, “Underwater Acoustics in the age of differentiable and probabilistic programming”, UComms 2020 webinar, 3 December 2020.
Citing
If you use UnderwaterAcoustics.jl
in your work or are influenced by its ideas, please cite:
@inproceedings{chitre2023ua,
author={Chitre, Mandar},
booktitle={OCEANS 2023 - Limerick},
title={Differentiable Ocean Acoustic Propagation Modeling},
year={2023},
pages={1-8},
doi={10.1109/OCEANSLimerick52467.2023.10244307}
}