Skip to content
Snippets Groups Projects
user_guide.rst 5.08 KiB

User Guide

As TOPFARM follows the OpenMDAO framework, its architecture is divided into components, which interact with each other to create the TopFarmProblem and subsequently work into finding the best possible solution to an optimization problem.

_static/Overview.png

This user guide provides an overview of the important elements of an optimization within TOPFARM. For a detailed look into the available options or function inputs/outputs, please see the :ref:`api`. Examples of TOPFARM code via Jupyter notebooks can be found both in the :ref:`basic_examples` and :ref:`advanced_examples` section.

TopFarm Problem

The central object of TOPFARM’s workflow is the TopFarmProblem object. It is analogous to OpenMDAO’s Problem and requires the specification of several other objects such as:

  • Design variables
  • Cost component
  • Optimization driver (optional)
  • Constraints (optional)
  • Plotting component (optional)

Within the TopFarmProblem, the optimize command is used to run the optimization (see :ref:`api`). Once finished, the optimization can return three items:

  • cost: corresponds to the final result of the optimization.
  • state: provides the final values of the design variables used in the optimization.
  • recorder: presents a record of which sets of design variables were tried during the optimization.