.. _interface-algebraic_mappings: """""""""""""""""" algebraic_mappings """""""""""""""""" Use AMPL to define algebraic input-output mappings .. toctree:: :hidden: :maxdepth: 1 **Specification** - *Alias:* None - *Arguments:* STRING - *Default:* no algebraic mappings **Description** Dakota can evaluate algebraic input-output mappings using AMPL :cite:p:`Fou03`. The mappings are expressed in 3 files: ``stub``.nl, ``stub``.col, and ``col,stub``.row, where ``row,stub`` is a particular root name describing a particular problem. The file names are communicated to Dakota using the ``algebraic_mappings`` keyword. It may either specify the full ``stub``.nl filename, or alternatively, just the ``nlstub`` basename. Dakota then extracts the input and output identifier strings from ``stub``.col and ``colstub``.row and employs the AMPL solver library :cite:p:`Gay97` to process the directed acyclic graphc (DAG) specification in ``stub``.nl. The variable and objective function names declared within AMPL should be a subset of the variable and response descriptors specified in the :dakkw:`variables` and :dakkw:`responses` blocks. Ordering is not important, as Dakota will reorder data as needed. **Examples** An interface employing both algebraic and simulation-based mappings. The results from the individual algebraic and simulation mappings are overlaid based on the variable and response descriptors used by the individual mappings. .. code-block:: interface, algebraic_mappings = 'ampl/fma.nl' fork analysis_driver = 'text_book' parameters_file = 'tb.in' results_file = 'tb.out'