gemseo / problems

# disciplines_factory module¶

Factory to create disciplines.

class gemseo.problems.disciplines_factory.DisciplinesFactory[source]

Bases: object

The DisciplinesFactory is used to create MDODiscipline objects.

Three types of directories are scanned to import the MDODiscipline classes:

• the environment variable “GEMSEO_PATH” may contain the list of directories to scan,

• the present directory (gemseo.problems) contains some benchmark test cases,

The constructor initializes the factory by scanning the directories to search for subclasses of MDODiscipline objects.

Searches in “GEMSEO_PATH” and gemseo.problems.

create(discipline_name, **options)[source]

Create a MDODiscipline from its name.

Parameters
• discipline_name – The name of the discipline

• **options – The options of the discipline, both the options to be passed to the constructor and the options that are generic to all the disciplines.

Returns

The discipline.

get_options_grammar(name, write_schema=False, schema_path=None)[source]

Get the options default values for the given class name.

Parameters
• name – The name of the class.

• schema_path

the output json file path. If None: input.json or output.json depending on grammar type.

By default it is set to None.

• write_schema

Whether to write the schema files

By default it is set to False.

Returns

The JSON grammar of the options.

update()[source]

Update the paths, to be used if GEMSEO_PATH was changed.

property disciplines: list[str]

The names of the available disciplines.