poster.pdf (4.4 MB)
The NWChemEx Simulation Development Environment- A General Computational Chemistry Software Framework
Version 2 2019-02-28, 19:27
Version 1 2019-02-28, 18:40
poster
posted on 2019-02-28, 19:27 authored by Ryan RichardRyan Richard, Kris Kiepert, Thom H. Dunning Jr., Robert Harrison, Theresa WindusTheresa WindusThis poster provides an overview of the Software Development Environment (SDE) and its use within NWChemEx to implement the self-consistent field (SCF) method.
The SDE is a C++ framework that allows you to decouple what you are computing (the results) from the mechanism for computing those results. To do this users of the SDE develop "property types" for each result of interest. Property types define the API that will be used anytime that property is needed. It is assumed that there are multiple ways to compute each property (including on different hardware). Each of these algorithms are encapsulated in "modules". The program is then written in terms of the property types so that all coupling occurs with the idea of what needs to be computed, not how it is computed. At runtime, the SDE assigns modules to each property type, in turn defining the program.
The SDE is a C++ framework that allows you to decouple what you are computing (the results) from the mechanism for computing those results. To do this users of the SDE develop "property types" for each result of interest. Property types define the API that will be used anytime that property is needed. It is assumed that there are multiple ways to compute each property (including on different hardware). Each of these algorithms are encapsulated in "modules". The program is then written in terms of the property types so that all coupling occurs with the idea of what needs to be computed, not how it is computed. At runtime, the SDE assigns modules to each property type, in turn defining the program.