title: Component-based integration of chemistry and optimization software.
abstract: Typical scientific software designs make rigid assumptions regarding programming language and data structures, frustrating software interoperability and scientific collaboration. Component-based software engineering is an emerging approach to managing the increasing complexity of scientific software. Component technology facilitates code interoperability and reuse. Through the adoption of methodology and tools developed by the Common Component Architecture Forum, we have developed a component architecture for molecular structure optimization. Using the NWChem and Massively Parallel Quantum Chemistry packages, we have produced chemistry components that provide capacity for energy and energy derivative evaluation. We have constructed geometry optimization applications by integrating the Toolkit for Advanced Optimization, Portable Extensible Toolkit for Scientific Computation, and Global Arrays packages, which provide optimization and linear algebra capabilities. We present a brief overview of the component development process and a description of abstract interfaces for chemical optimizations. The components conforming to these abstract interfaces allow the construction of applications using different chemistry and mathematics packages interchangeably. Initial numerical results for the component software demonstrate good performance, and highlight potential research enabled by this platform.
authors.affiliation: High Performance Computing and Networking Department, Sandia National Laboratories, MS 9915, P.O. Box 969, Livermore, California 94551-0969, USA. jpkenny@sandia.gov
authors.forename: Joseph P
authors.initials: JP
authors.lastname: Kenny
authors.forename: Steven J
authors.initials: SJ
authors.lastname: Benson
authors.forename: Yuri
authors.initials: Y
authors.lastname: Alexeev
authors.forename: Jason
authors.initials: J
authors.lastname: Sarich
authors.forename: Curtis L
authors.initials: CL
authors.lastname: Janssen
authors.forename: Lois Curfman
authors.initials: LC
authors.lastname: McInnes
authors.forename: Manojkumar
authors.initials: M
authors.lastname: Krishnan
authors.forename: Jarek
authors.initials: J
authors.lastname: Nieplocha
authors.forename: Elizabeth
authors.initials: E
authors.lastname: Jurrus
authors.forename: Carl
authors.initials: C
authors.lastname: Fahlstrom
authors.forename: Theresa L
authors.initials: TL
authors.lastname: Windus