Skip to main content

A Full-Stack Python based library for working with acoustic fields for holgraphy

Project description

AcousTools

A Full-Stack Python based library for working with acoustic fields for holgraphy. Developed using PyTorch, AcousTools uses PyTorch Tensors to represent points, acoustic fields and holograms to enable development of new algorithms, applications and acoustic systems. As a full-stack solution, Acoustools is able to implement each stage of development making it a single point of call.

See Here for examples of code using AcousTools. The Preprint of AcousTools can be found on arXiv


Table of Contents

Installation

Optionally create a virtual environment to install AcousTools into
Optionally install the correct version of PyTorch

Run

pip install acoustools

Or visit AcousTools' on PyPi

Local Installation

Clone the repo and then run

pip install -r <path-to-clone>/requirements.txt
pip install -e <path-to-clone>/acoustools/ --config-settings editable_mode=strict

Use python<version> -m before the above commands to use a specific version of python.

where <path-to-clone> is the local location of the repository

Documentation

Documentation can be seen Here

Or to view the documentation for AcousTools locally, firstly install pdoc:

pip install pdoc

Then run pdoc on AcousTools to create a locally hosted server containing the documentation

python -m pdoc <path-to-clone>/acoustools/ --math

See Here for examples of code using AcousTools.

AcousTools Basics

AcousTools represents data as torch.Tensors. A point is represented as a tensor where each column represents a (x,y,z) point. Groups of points can also be grouped into batches of points for parallel computation and so have a shape (B,3,N) for B batches and N points.

Ultrasound waves can be focused by controlling many sources such that at a given point in space all waves arrive in phase and therefore constructivly interfere. This can be done in a number of ways (acoustools.Solvers). This allows for applications from high speed persistance-of-vision displays to haptic feedback and non-contact fabrication.

License

acoustools is distributed under the terms of the MIT license.

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

acoustools-1.1.0.tar.gz (192.3 kB view details)

Uploaded Source

Built Distribution

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

acoustools-1.1.0-py3-none-any.whl (98.0 kB view details)

Uploaded Python 3

File details

Details for the file acoustools-1.1.0.tar.gz.

File metadata

  • Download URL: acoustools-1.1.0.tar.gz
  • Upload date:
  • Size: 192.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.4

File hashes

Hashes for acoustools-1.1.0.tar.gz
Algorithm Hash digest
SHA256 0ff4f8a20291fd3ff7d1a3e465d5516dbd0fb1c4a3fc417adb91ef7eaf9d0bc6
MD5 35db9e5cb3f483c533f75d534d0ed580
BLAKE2b-256 710b73d3cf1a026d80e9b331f0bf048b18ef3e1f90d082b3aa20c97f7470b28d

See more details on using hashes here.

File details

Details for the file acoustools-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: acoustools-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 98.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.4

File hashes

Hashes for acoustools-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c343a7ba6b48cb613dcdd6dbf9871aebd657f1f85ca3d32a30f82a75e033a7e0
MD5 84e9a5dd21aa58afb4167c3b0ec70237
BLAKE2b-256 4626c614a27ee4ec3600aca4156ca9f72e28958d135f2d8ee0ab77583c47aa5b

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