A unified 2D/3D large scale software environment for nonlinear inverse problems

TitleA unified {2D/3D} large scale software environment for nonlinear inverse problems
Publication TypeSubmitted
Year of Publication2017
AuthorsCurt Da Silva, Felix J. Herrmann
Keywordslarge scale, Matlab, Optimization, PDE-constrained inversion, private

Large scale parameter estimation problems are some of the most computationally demanding problems. An academic researcher's domain-specific knowledge often precludes that of software design, which results in software frameworks for inversion that are technically correct, but not scalable to realistically-sized problems. On the other hand, the computational demands of the problem for realistic problems result in industrial codebases that are geared solely for performance, rather than comprehensibility or flexibility. We propose a new software design that bridges the gap between these two seemingly disparate worlds. A hierarchical and modular design allows a user to delve into as much detail as she desires, while using high performance primitives at the lower levels. Our code has the added benefit of actually reflecting the underlying mathematics of the problem, which lowers the cognitive load on user using it and reduces the initial startup period before a researcher can be fully productive. We also introduce a new preconditioner for the Helmholtz equation that is suitable for fault-tolerant distributed systems. Numerical experiments on a variety of 2D and 3D test problems demonstrate the effectiveness of this approach on scaling algorithms from small to large scale problems with minimal code changes.


Submitted to ACM Transactions on Mathematical Software on February 14, 2017.

Citation Keydasilva2017uls