Fast Differentiable Modal Simulation of Non-linear Strings, Membranes, and Plates
Rodrigo Diaz, Mark Sandler
TL;DR
This work presents a fast, differentiable, GPU-accelerated modal framework for simulating nonlinear vibrations of strings, membranes, and plates, implemented in Python with JAX to enable gradient-based inverse modelling even for complex nonlinearities such as the von Kármán plate. By deriving and implementing modular modal expansions and differentiable time integrators, the authors achieve scalable performance that outpaces CPU and some GPU baselines, while preserving physical interpretability through parameters like tension, bending stiffness, and coupling tensors. They validate the approach with loss-function-guided inverse problems on synthetic and real data, demonstrating parameter recovery for tension, stiffness, damping, and geometry, though they also highlight challenges from ill-posedness and initialization sensitivity. Beyond real-time synthesis and dataset generation, the framework provides a bridge between classical physics-based modelling and differentiable computation, enabling future hybrid physics-dynamics approaches and differentiable FEM extensions, all released as open source.
Abstract
Modal methods for simulating vibrations of strings, membranes, and plates are widely used in acoustics and physically informed audio synthesis. However, traditional implementations, particularly for non-linear models like the von Kármán plate, are computationally demanding and lack differentiability, limiting inverse modelling and real-time applications. We introduce a fast, differentiable, GPU-accelerated modal framework built with the JAX library, providing efficient simulations and enabling gradient-based inverse modelling. Benchmarks show that our approach significantly outperforms CPU and GPU-based implementations, particularly for simulations with many modes. Inverse modelling experiments demonstrate that our approach can recover physical parameters, including tension, stiffness, and geometry, from both synthetic and experimental data. Although fitting physical parameters is more sensitive to initialisation compared to other methods, it provides greater interpretability and more compact parameterisation. The code is released as open source to support future research and applications in differentiable physical modelling and sound synthesis.
