Software Interoperability for New Science

Within the Applied Mathematics and Computational Science (AMCS) program we advance the use of scalable computing in scientific and engineering computation, and develop new programming paradigms for novel hardware. Multiscale simulation methods is an indispensable tool in understanding chemical processes and designing new materials. When simulation spans multiple temporal or spatial scales, existing capabilities of a single software package are often insufficient, and a coupling of multiple programming packages developed by different research groups is strongly desirable. This coupling allows researchers to increase their efficiency by concentrating efforts in their areas of expertise without “reinventing the wheel”, and thus creates synergistic effects.

The participating student will gain hands-on experience with freely available quantum chemistry, molecular dynamics and molecular visualization software packages. The student will learn how to make various software packages work together via Perl and Python scripting, OpenBabel cheminformatics package,  and cross-language (C/C++, Fortran, Python) interoperability tools (SWIG, Babel). The student will (i) participate in design and development of interfaces between computational chemistry packages, (ii)  have an opportunity to gain expertise in using performance analysis tools, and (iii) participate in conducting multi-scale simulations to model  photochemical carbon dioxide reduction (artificial photosynthesis).

Program mentor: Alexander Gaenko, Assistant Scientist III, Ames Laboratory