.. _interface-analysis_drivers-direct: """""" direct """""" Run analysis drivers that are linked-to or compiled-with Dakota .. toctree:: :hidden: :maxdepth: 1 interface-analysis_drivers-direct-processors_per_analysis **Specification** - *Alias:* None - *Arguments:* None **Child Keywords:** +-------------------------+--------------------+-----------------------------+---------------------------------------------+ | Required/Optional | Description of | Dakota Keyword | Dakota Keyword Description | | | Group | | | +=========================+====================+=============================+=============================================+ | Optional | `processors_per_analysis`__ | Specify the number of processors per | | | | analysis when Dakota is run in parallel | +----------------------------------------------+-----------------------------+---------------------------------------------+ .. __: interface-analysis_drivers-direct-processors_per_analysis.html **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 :dakkw:`interface-analysis_drivers-fork`, and is also compiled with Dakota. The internal version can be used with: .. code-block:: interface analysis_drivers = 'rosenbrock' direct