direct
Run analysis drivers that are linked-to or compiled-with Dakota
Specification
Alias: None
Arguments: None
Child Keywords:
Required/Optional |
Description of Group |
Dakota Keyword |
Dakota Keyword Description |
---|---|---|---|
Optional |
Specify the number of processors per analysis when Dakota is run in parallel |
Description
Direct interfaces are used to compile/link simulation programs into Dakota and to invoke Dakota’s built-in algebraic test problems.
Direct simulation interfaces communicate variable and response data in-core instead of through the filesystem. This typically requires modification to simulator programs so that they can be linked into Dakota; however it can be more efficient due to elimination of external processes and auxilliary simulator output, more accurate due to higher numerics, and more flexible in terms of MPI parallelism.
Direct interfaces are also used to invoke internal test functions that perform parameter to response mappings for simple functions as inexpensively as possible. These problems are compiled directly into the Dakota executable as part of the direct function interface class and are used for algorithm testing.
Dakota supports direct interfaces to a few select simulation codes
such as Matlab, Python, and Scilab. Another example is ModelCenter, a
commercial simulation management framework from Phoenix
Integration. To utilize this interface, a user must first define the
simulation specifics within a ModelCenter session and then save these
definitions to a ModelCenter configuration file. The
analysis_components
specification provides the means to communicate
this configuration file to Dakota’s ModelCenter interface.
Examples
The rosenbrock function is available as an executable, which can be launched with interface-analysis_drivers-fork, and is also compiled with Dakota. The internal version can be used with:
interface
analysis_drivers = 'rosenbrock'
direct