mermaid_generator#

Mermaid flowchart generator for OpenMDAO models.

This module provides utilities for generating Mermaid flowchart diagrams from OpenMDAO problems, showing model connectivity and data flow.

Attributes#

Functions#

generate_problem_graph(prob[, output_path, ...])

Generate Mermaid flowchart from OpenMDAO problem with full introspection.

generate_model_graph(prob[, output_path, title])

Generate Mermaid flowchart from OpenMDAO problem.

generate_simple_graph(parameters, models, constraints)

Generate Mermaid flowchart from simple lists.

Module Contents#

mermaid_generator.generate_problem_graph(prob, output_path='problem_diagram.mmd', show_intermediates=True, title='Problem Architecture')#

Generate Mermaid flowchart from OpenMDAO problem with full introspection.

This function introspects the OpenMDAO problem structure to create an accurate visualization of parameters, models, intermediate variables, and constraints.

Parameters:
  • prob (om.Problem) – OpenMDAO problem instance (must be setup)

  • output_path (str) – Path to save .mmd file

  • show_intermediates (bool) – Whether to show intermediate variables between models

  • title (str) – Diagram title

Returns:

Path to generated file

Return type:

str

mermaid_generator.generate_model_graph(prob, output_path='model_diagram.mmd', title='Model Connectivity')#

Generate Mermaid flowchart from OpenMDAO problem.

Parameters:
  • prob (om.Problem) – OpenMDAO problem instance (must be setup)

  • output_path (str) – Path to save .mmd file

  • title (str) – Diagram title

Returns:

Path to generated file

Return type:

str

mermaid_generator.generate_simple_graph(parameters, models, constraints, output_path='model_diagram.mmd')#

Generate Mermaid flowchart from simple lists.

Parameters:
  • parameters (list of str) – List of parameter names

  • models (list of str) – List of model names

  • constraints (list of str) – List of constraint names

  • output_path (str) – Path to save .mmd file

Returns:

Path to generated file

Return type:

str

mermaid_generator.params = ['V (kV)', 'e (mm)', 'd_t (mm)', 'f (kHz)', 'E_p (mJ)']#