Dakota
Computational methods developed in structural mechanics, heat transfer, fluid mechanics, shock physics, and many other fields of engineering can be an enormous aid to understanding the complex physical systems they simulate. Often, it is desired to use these simulations as virtual prototypes to obtain an optimized design for a particular system, or to develop confidence in performing predictions for systems that cannot be observed or tested directly. This effort seeks to enhance the utility of these computational methods by enabling their use for a variety of iterative analyses, so that simulations may be used not just for single-point solutions but also to achieve broader impact in the areas of credible prediction and optimal design.
Written in C++, the Dakota toolkit provides a flexible, extensible interface between simulation codes and a variety of iterative systems analysis methods, including optimization, uncertainty quantification, deterministic/stochastic calibration, and parametric/sensitivity/variance analysis. These capabilities may be used on their own or as components within advanced strategies such as hybrid optimization, surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. Initiated in 1994, it provides both a mature production tool as well as a foundation for new algorithm research.
Usage and applications: Dakota is open source under GNU LGPL, with over 30,000 unique download sites. It spans applications in defense programs for DOE and DOD, climate modeling, computational materials, nuclear power, and alternative energy.