Generate N2 and XDSM diagrams from an Excel description of the MDO problem#

from __future__ import annotations

from gemseo import configure_logger
from gemseo.utils.study_analyses.mdo_study_analysis import MDOStudyAnalysis

configure_logger()
<RootLogger root (INFO)>

Describe your MDO problem in an Excel file#

../../_images/mdo_study.png

Visualize this study#

study = MDOStudyAnalysis("mdo_study.xlsx")
INFO - 02:29:45: 2 disciplines detected
INFO - 02:29:45:    Discipline1
INFO - 02:29:45:       Inputs: a, b, c
INFO - 02:29:45:       Outputs: d, e, g
INFO - 02:29:45:    Discipline2
INFO - 02:29:45:       Inputs: d, g, x, z
INFO - 02:29:45:       Outputs: a, b, f
INFO - 02:29:45: 1 scenario detected
INFO - 02:29:45:    Scenario
INFO - 02:29:45:       Objectives: f
INFO - 02:29:45:       Disciplines: Discipline1, Discipline2
INFO - 02:29:45:       Constraints: g
INFO - 02:29:45:       Design variables: x
INFO - 02:29:45:       Formulation: MDF

Generate the N2 chart#

study.generate_n2(save=False, show=True)
plot mdo study analysis

Generate the XDSM#

study.generate_xdsm(".")
INFO - 02:29:45: Generated the following Scenario:
INFO - 02:29:45: MDOScenario
INFO - 02:29:45: Optimization problem:
INFO - 02:29:45:    minimize f(x)
INFO - 02:29:45:    with respect to x
INFO - 02:29:45:    subject to constraints:
INFO - 02:29:45:       g(x) == 0


../../_images/xdsm.png

Visualize this study from command line#

We can create the same figures using command line inputs:

gemseo-study mdo_study.xlsx -o outputs -h 5 -w 5 -x -p

where gemseo-study is an executable provided by GEMSEO and the Excel file path mdo_study.xlsx is the specification of the MDO study. Here, we set some options of gemseo-study:

  • -o outputs is the output directory,

  • -h 5 is the height of the N2 chart in inches,

  • -w 5 is the width of the N2 chart in inches,

  • -x is an option to create of the XDSM (compatible only with the study type 'mdo'),

  • -p is an option to create a PDF file with the creation of the XDSM.

Total running time of the script: (0 minutes 0.300 seconds)

Gallery generated by Sphinx-Gallery