Coupling structure#

from gemseo import create_discipline
from gemseo import generate_coupling_graph
from gemseo import generate_n2_plot
from gemseo.disciplines.utils import get_all_inputs
from gemseo.disciplines.utils import get_all_outputs

Save or show the N2 chart:

discipline_names = ("disc1", "disc2", "disc3")
disciplines = create_discipline(discipline_names)
generate_n2_plot(disciplines, save=True, show=False)

Save the coupling graph:

discipline_names = ("disc1", "disc2", "disc3")
disciplines = create_discipline(discipline_names)
generate_coupling_graph(disciplines)

Get all the inputs or outputs:

get_all_inputs(disciplines)
get_all_outputs(disciplines, skip_scenarios=False)