Acoustic Holography is an emerging field where mid-air ultrasound is
controlled and manipulated for novel and exciting applications. These range
from mid-air haptics, volumetric displays, contactless fabrication, and even
chemical and biomedical applications such as drug delivery. To develop these
applications, a software framework to predict acoustic behaviour and simulating
resulting effects, such as applied forces or scattering patterns is desirable.
There have been various software libraries and platforms that attempt to fill
this role, but there is yet to be a single piece of software that acts as a
'full-stack' solution. We define this full-stack as the process from
abstraction to physicalisation starting with setup, modelling acoustic
propagation, transducer phase retrieval, sound field analysis, and control of
the acoustic holographic hardware itself. Existing methods fail to fulfil one
or more of these categories. To address this, we present AcousTools, a
Python-based acoustic holography library, designed to support the full suite of
acoustic holographic applications and we show AcousTools's ability to meet each
step of the full-stack's requirements. AcousTools has the potential to become
the standard code library for acoustic holography, with the uniquely complete
suite of features wrapped in a language that is known to be easy to use,
AcousTools will increase the ability for researchers to develop novel
applications as well as accurately review other's work. The full-stack, aside
from software, will also be useful for researchers - providing a way to view
and compare methodologies by understanding where they fit into the stack.