Abstract

Our software, Jest, comprises a general and extendible library for numerical optimization for science and engineering, Jam, and a particular extension of that framework for seismic image processing, Jag. Jest successfully separates optimization and application software without imposing limitations on an application's vector representation, on an application's operator implementation, or on a solver's ability to manipulate vectors and operators. To ensure the compatibility of solver and application, Jest includes a set of simple interfaces that define method invocations for the fundamental mathematical objects of numerical optimization, such as vectors, vector spaces, operators, and solvers. Jest's solvers are implemented in terms of these mathematical objects and consequently possess the generality of the original abstract mathematical algorithm. Jest's seismic imaging library, Jag, demonstrates that Jest incurs no restrictions and little or no programming overhead for scientific or engineering software packages. While generally implemented in Java, Jest links some computationally intensive applications to C-routines to improve performance. Once Jest is integrated in our laboratory's electronic book, our research becomes reproducible by the push of a button in any World Wide Web browser. © 1998 John Wiley & Sons, Ltd.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call