.. Copyright 2021 IRT Saint-Exupéry, https://www.irt-saintexupery.com This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. .. _gen_discipline_algos: Disciplines =========== .. warning:: Some capabilities may require the :ref:`installation ` of |g| with :ref:`all its features ` and some others may depend on :ref:`plugins `. .. note:: All the features of the wrapped libraries may not be exposed through |g|. .. raw:: html .. _Aerodynamics_options: Aerodynamics ------------ Module: :class:`gemseo.problems.mdo.aerostructure.aerostructure` .. raw:: html .. _AnalyticDiscipline_options: AnalyticDiscipline ------------------ Module: :class:`gemseo.disciplines.analytic` .. raw:: html
Required parameters
  • **expressions** : *Mapping[str, str | Expr]* The outputs expressed as functions of the inputs. .. raw:: html
Optional parameters
  • **fast_evaluation** : *bool, optional* Whether to apply ``sympy.lambdify`` to the expressions in order to accelerate their numerical evaluation; otherwise the expressions are evaluated with ``sympy.Expr.evalf``. By default it is set to True. .. raw:: html
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
.. _AutoPyDiscipline_options: AutoPyDiscipline ---------------- Module: :class:`gemseo.disciplines.auto_py` .. raw:: html
Required parameters
  • **py_func** : *Callable* The Python function to compute the outputs from the inputs. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the name of the Python function. By default it is set to None. .. raw:: html
  • **py_jac** : *Callable | None, optional* The Python function to compute the Jacobian from the inputs; its output value must be a 2D NumPy array with rows corresponding to the outputs and columns to the inputs. By default it is set to None. .. raw:: html
  • **use_arrays** : *bool, optional* Whether the function is expected to take arrays as inputs and give outputs as arrays. By default it is set to False. .. raw:: html
.. _BaseDiscipline_options: BaseDiscipline -------------- Module: :class:`gemseo.problems.mdo.scalable.parametric.disciplines.base_discipline` .. raw:: html
Required parameters
  • **core_discipline_parameters** : *Any* The parameters to instantiate the core discipline as ``CoreDiscipline(*core_discipline_parameters)``. .. raw:: html
Optional parameters
  • ****default_input_values** : *Any* The default values of the input variables. .. raw:: html
.. _CalibrationScenario_options: CalibrationScenario ------------------- .. note:: The plugin `gemseo_calibration `_ is required. Module: :class:`gemseo_calibration.scenario` .. raw:: html
Required parameters
  • **calibration_space** : *DesignSpace* The space of the parameters to be calibrated, whose current values are consider as a prior for calibration. .. raw:: html
  • **control_outputs** : *CalibrationMeasure | Sequence[CalibrationMeasure]* The names of the outputs used to calibrate the disciplines with the name of the calibration measure and the corresponding weight comprised between 0 and 1 (the weights must sum to 1). When the output is a 1D function discretized over an irregular mesh, the name of the mesh can be provided. E.g. ``CalibrationMeasure(output="z", measure="MSE")`` ``CalibrationMeasure(output="z", measure="MSE", weight=0.3)`` or ``CalibrationMeasure(output="z", measure="MSE", mesh="z_mesh")`` Lastly, ``CalibrationMeasure`` can be imported from :mod:`gemseo-calibration.scenario`. .. raw:: html
  • **disciplines** : *MDODiscipline | list[MDODiscipline]* The disciplines whose parameters must be calibrated from the reference data. .. raw:: html
  • **input_names** : *str | Iterable[str]* The names of the inputs to be considered for the calibration. .. raw:: html
  • **name** : *str* A name for this calibration scenario. If empty, use the name of the class. .. raw:: html
Optional parameters
  • **formulation** : *str, optional* The name of a formulation to manage the multidisciplinary coupling. By default it is set to MDF. .. raw:: html
  • ****formulation_options** : *Any* The options of the formulation. .. raw:: html
.. _Calibrator_options: Calibrator ---------- .. note:: The plugin `gemseo_calibration `_ is required. Module: :class:`gemseo_calibration.calibrator` .. raw:: html
Required parameters
  • **control_outputs** : *CalibrationMeasure | Sequence[CalibrationMeasure]* The names of the outputs used to calibrate the disciplines with the name of the calibration measure and the corresponding weight comprised between 0 and 1 (the weights must sum to 1). When the output is a 1D function discretized over an irregular mesh, the name of the mesh can be provided. E.g. ``CalibrationMeasure(output="z", measure="MSE")`` ``CalibrationMeasure(output="z", measure="MSE", weight=0.3)`` or ``CalibrationMeasure(output="z", measure="MSE", mesh="z_mesh")`` Lastly, ``CalibrationMeasure`` can be imported from :mod:`gemseo-calibration.scenario`. .. raw:: html
  • **disciplines** : *MDODiscipline | list[MDODiscipline]* The disciplines whose parameters must be calibrated from the reference data. .. raw:: html
  • **input_names** : *str | Iterable[str]* The names of the inputs to be considered for the calibration. .. raw:: html
  • **parameter_names** : *str | Iterable[str]* The names of the parameters to be calibrated. .. raw:: html
Optional parameters
  • **formulation** : *str, optional* The name of a formulation to manage the multidisciplinary coupling. By default it is set to MDF. .. raw:: html
  • ****formulation_options** : *Any* The options of the formulation. .. raw:: html
.. _Concatenater_options: Concatenater ------------ Module: :class:`gemseo.disciplines.concatenater` .. raw:: html
Required parameters
  • **input_variables** : *Sequence[str]* The input variables to concatenate. .. raw:: html
  • **output_variable** : *str* The output variable name. .. raw:: html
Optional parameters
  • **input_coefficients** : *dict[str, float] | None, optional* The coefficients related to the different input variables. By default it is set to None. .. raw:: html
.. _ConstraintAggregation_options: ConstraintAggregation --------------------- Module: :class:`gemseo.disciplines.constraint_aggregation` .. raw:: html
Required parameters
  • **aggregation_function** : *EvaluationFunction* The aggregation function or its name, e.g. IKS, lower_bound_KS,upper_bound_KS, POS_SUM and SUM. .. raw:: html
  • **constraint_names** : *Sequence[str]* The names of the constraints to aggregate, which must be discipline outputs. .. raw:: html
Optional parameters
  • **name** : *str | None, optional* The name of the discipline. By default it is set to None. .. raw:: html
  • ****options** : *Any* The options for the aggregation method. .. raw:: html
.. _DOEScenario_options: DOEScenario ----------- Module: :class:`gemseo.core.doe_scenario` .. raw:: html
Required parameters
  • **design_space** : *DesignSpace* The search space including at least the design variables (some formulations requires additional variables, e.g. :class:`.IDF` with the coupling variables). .. raw:: html
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines used to compute the objective, constraints and observables from the design variables. .. raw:: html
  • **formulation** : *str* The class name of the :class:`.MDOFormulation`, e.g. ``"MDF"``, ``"IDF"`` or ``"BiLevel"``. .. raw:: html
  • **objective_name** : *str | Sequence[str]* The name(s) of the discipline output(s) used as objective. If multiple names are passed, the objective will be a vector. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The grammar for the scenario and the MDO formulation. By default it is set to JSONGrammar. .. raw:: html
  • **maximize_objective** : *bool, optional* Whether to maximize the objective. By default it is set to False. .. raw:: html
  • **name** : *str | None, optional* The name to be given to this scenario. If ``None``, use the name of the class. By default it is set to None. .. raw:: html
  • ****formulation_options** : *Any* The options of the :class:`.MDOFormulation`. .. raw:: html
.. _DensityFilter_options: DensityFilter ------------- Module: :class:`gemseo.problems.topology_optimization.density_filter_disc` .. raw:: html
Optional parameters
  • **min_member_size** : *float, optional* The minimum structural member size. By default it is set to 1.5. .. raw:: html
  • **n_x** : *int, optional* The number of elements in the x-direction. By default it is set to 100. .. raw:: html
  • **n_y** : *int, optional* The number of elements in the y-direction. By default it is set to 100. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
.. _DiscFromExe_options: DiscFromExe ----------- Module: :class:`gemseo.wrappers.disc_from_exe` .. raw:: html
Required parameters
  • **executable_command** : *str* The command to run the executable. E.g. ``python my_script.py -i input.txt -o output.txt`` .. raw:: html
  • **input_filename** : *str | Path* The name of the input file to be generated in the output folder. E.g. ``"input.txt"``. .. raw:: html
  • **input_template** : *str | Path* The path to the input template file. The input locations in the file are marked by ``GEMSEO_INPUT{input_name::1.0}``, where ``input_name`` is the name of the input variable, and ``1.0`` is its default value. .. raw:: html
  • **output_filename** : *str | Path* The name of the output file to be generated in the output folder. E.g. ``"output.txt"``. .. raw:: html
  • **output_folder_basepath** : *str | Path* The base path of the execution directories. .. raw:: html
  • **output_template** : *str | Path* The path to the output template file. The output locations in the file are marked by ``GEMSEO_OUTPUT{output_name::1.0}``, where ``output_name`` is the name of the output variable, and ``1.0`` is its default value. .. raw:: html
Optional parameters
  • **clean_after_execution** : *bool, optional* Whether to clean the last created directory after execution. By default it is set to False. .. raw:: html
  • **folders_iter** : *DirectoryNamingMethod, optional* The method to create the execution directories. By default it is set to NUMBERED. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **parse_out_separator** : *str, optional* The separator used for the :attr:`~.Parser.KEY_VALUE` output parser. By default it is set to =. .. raw:: html
  • **parse_outfile_method** : *Parser | OutputParser, optional* The optional method that can be provided by the user to parse the output template file. If the :attr:`~.Parser.KEY_VALUE` is used as output parser, the user may specify the separator key. By default it is set to TEMPLATE. .. raw:: html
  • **use_shell** : *bool, optional* This argument is ignored and will be removed, the shell is not used. By default it is set to True. .. raw:: html
  • **write_input_file_method** : *InputWriter | None, optional* The method to write the input data file. If ``None``, use :func:`~.write_input_file`. By default it is set to None. .. raw:: html
.. _FilteringDiscipline_options: FilteringDiscipline ------------------- Module: :class:`gemseo.wrappers.filtering_discipline` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The original discipline. .. raw:: html
Optional parameters
  • **input_names** : *Iterable[str] | None, optional* The names of the inputs of interest. If ``None``, use all the inputs. By default it is set to None. .. raw:: html
  • **keep_in** : *bool, optional* Whether to the inputs of interest. Otherwise, remove them. By default it is set to True. .. raw:: html
  • **keep_out** : *bool, optional* Whether to the outputs of interest. Otherwise, remove them. By default it is set to True. .. raw:: html
  • **output_names** : *Iterable[str] | None, optional* The names of the outputs of interest. If ``None``, use all the outputs. By default it is set to None. .. raw:: html
.. _FininiteElementAnalysis_options: FininiteElementAnalysis ----------------------- Module: :class:`gemseo.problems.topology_optimization.fea_disc` .. raw:: html
Optional parameters
  • **f_amplitude** : *int | Sequence[int], optional* The force amplitude for each pair ``(f_node, f_direction)``. By default it is set to -1. .. raw:: html
  • **f_direction** : *int | Sequence[int], optional* The force direction for each ``f_node``, either 0 for x or 1 for y. By default it is set to 1. .. raw:: html
  • **f_node** : *int | Sequence[int], optional* The indices of the nodes where the forces are applied. By default it is set to 10200. .. raw:: html
  • **fixed_dir** : *int | Sequence[int] | None, optional* The clamped direction for each node, encode 0 for x and 1 for y. If ``None``, a default value is used. By default it is set to None. .. raw:: html
  • **fixed_nodes** : *int | Sequence[int] | None, optional* The indices of the nodes where the structure is clamped. If ``None``, a default value is used. By default it is set to None. .. raw:: html
  • **n_x** : *int, optional* The number of elements in the x-direction. By default it is set to 100. .. raw:: html
  • **n_y** : *int, optional* The number of elements in the y-direction. By default it is set to 100. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **nu** : *float, optional* The material Poisson's ratio. By default it is set to 0.3. .. raw:: html
.. _IshigamiDiscipline_options: IshigamiDiscipline ------------------ Module: :class:`gemseo.problems.uncertainty.ishigami.ishigami_discipline` .. raw:: html .. _JEPJavaDiscipline_options: JEPJavaDiscipline ----------------- .. note:: The plugin `gemseo_java `_ is required. Module: :class:`gemseo_java.jep_java_discipline` .. raw:: html .. _JavaDiscipline_options: JavaDiscipline -------------- .. note:: The plugin `gemseo_java `_ is required. Module: :class:`gemseo_java.jnius_java_discipline` .. raw:: html .. _JobSchedulerDisciplineWrapper_options: JobSchedulerDisciplineWrapper ----------------------------- Module: :class:`gemseo.wrappers.job_schedulers.scheduler_wrapped_disc` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The discipline to wrap in the job scheduler. .. raw:: html
  • **setup_cmd** : *str* The command used before running the executable. .. raw:: html
  • **workdir_path** : *Path* The path to the workdir where the files will be generated. .. raw:: html
Optional parameters
  • **job_out_filename** : *str, optional* The output job file name. By default it is set to batch.srun. .. raw:: html
  • **job_template_path** : *Path | str | None, optional* The path to the template to be used to make a submission to the job scheduler command. By default it is set to None. .. raw:: html
  • **scheduler_run_command** : *str, optional* The command to call the job scheduler and submit the generated script. By default it is set to sbatch --wait. .. raw:: html
  • **use_template** : *bool, optional* whether to use template based interface to the job scheduler. By default it is set to True. .. raw:: html
.. _LSF_options: LSF --- Module: :class:`gemseo.wrappers.job_schedulers.lsf` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The discipline to wrap in the job scheduler. .. raw:: html
  • **setup_cmd** : *str* The command used before running the executable. .. raw:: html
  • **user_email** : *str* The user email to send the run status. .. raw:: html
  • **workdir_path** : *Path* The path to the workdir where the files will be generated. .. raw:: html
Optional parameters
  • **job_out_filename** : *str, optional* The output job file name. By default it is set to batch.sh. .. raw:: html
  • **job_template_path** : *Path | str | None, optional* The path to the template to be used to make a submission to the job scheduler command. By default it is set to None. .. raw:: html
  • **mem_per_cpu** : *str, optional* The memory per CPU. By default it is set to 1G. .. raw:: html
  • **ntasks** : *int, optional* The number of tasks. By default it is set to 1. .. raw:: html
  • **ntasks_per_node** : *int, optional* The number of tasks per node. By default it is set to 1. .. raw:: html
  • **scheduler_run_command** : *str, optional* The command to call the job scheduler and submit the generated script. By default it is set to bsub -K. .. raw:: html
  • **wall_time** : *str, optional* The wall time. By default it is set to 24:00:00. .. raw:: html
  • ****options** : *dict[str:Any]* The job scheduler specific options to be used in the template. .. raw:: html
.. _LinearCombination_options: LinearCombination ----------------- Module: :class:`gemseo.disciplines.linear_combination` .. raw:: html
Required parameters
  • **input_names** : *Iterable[str]* The names of input variables. .. raw:: html
  • **output_name** : *str* The name of the output variable. .. raw:: html
Optional parameters
  • **input_coefficients** : *dict[str, float] | None, optional* The coefficients related to the input variables. If ``None``, use 1 for all the input variables. By default it is set to None. .. raw:: html
  • **input_size** : *int | None, optional* The size of the inputs. If ``None``, the default inputs are initialized with size 1 arrays. By default it is set to None. .. raw:: html
  • **offset** : *float, optional* The output value when all the input variables are equal to zero. By default it is set to 0.0. .. raw:: html
.. _LinearDiscipline_options: LinearDiscipline ---------------- Module: :class:`gemseo.problems.mdo.scalable.linear.linear_discipline` .. raw:: html
Required parameters
  • **input_names** : *Sequence[str]* The input data names. .. raw:: html
  • **name** : *str* The discipline name. .. raw:: html
  • **output_names** : *Sequence[str]* The output data names. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of grammars. By default it is set to JSONGrammar. .. raw:: html
  • **inputs_size** : *int, optional* The size of input data vectors, each input data is of shape (inputs_size,). By default it is set to 1. .. raw:: html
  • **matrix_density** : *float, optional* The percentage of non-zero elements when the matrix is sparse. By default it is set to 0.1. .. raw:: html
  • **matrix_format** : *MatrixFormat, optional* The format of the Jacobian matrix. By default it is set to dense. .. raw:: html
  • **matrix_free_jacobian** : *bool, optional* Whether the Jacobians are casted as linear operators. By default it is set to False. .. raw:: html
  • **outputs_size** : *int, optional* The size of output data vectors, each output data is of shape (outputs_size,). By default it is set to 1. .. raw:: html
.. _MDOAdditiveChain_options: MDOAdditiveChain ---------------- Module: :class:`gemseo.core.chain` .. raw:: html
Required parameters
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines. .. raw:: html
  • **outputs_to_sum** : *Iterable[str]* The names of the outputs to sum. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **n_processes** : *int | None, optional* The maximum simultaneous number of threads, if ``use_threading`` is True, or processes otherwise, used to parallelize the execution. If ``None``, uses the number of disciplines. By default it is set to None. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **use_threading** : *bool, optional* Whether to use threads instead of processes to parallelize the execution; multiprocessing will copy (serialize) all the disciplines, while threading will share all the memory. This is important to note if you want to execute the same discipline multiple times, you shall use multiprocessing. By default it is set to True. .. raw:: html
.. _MDOChain_options: MDOChain -------- Module: :class:`gemseo.core.chain` .. raw:: html
Required parameters
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
.. _MDODiscipline_options: MDODiscipline ------------- Module: :class:`gemseo.core.discipline` .. raw:: html
Optional parameters
  • **auto_detect_grammar_files** : *bool, optional* Whether to look for ``"ClassName_{input,output}.json"`` in the :attr:`.GRAMMAR_DIRECTORY` if any or in the directory of the discipline class module when ``{input,output}_grammar_file`` is ``None``. By default it is set to False. .. raw:: html
  • **cache_file_path** : *str | Path | None, optional* The HDF file path when ``grammar_type`` is :attr:`.MDODiscipline.CacheType.HDF5`. By default it is set to None. .. raw:: html
  • **cache_type** : *CacheType, optional* The type of cache. By default it is set to SimpleCache. .. raw:: html
  • **grammar_type** : *GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **input_grammar_file** : *str | Path | None, optional* The input grammar file path. If ``None`` and ``auto_detect_grammar_files=True``, look for ``"ClassName_input.json"`` in the :attr:`.GRAMMAR_DIRECTORY` if any or in the directory of the discipline class module. If ``None`` and ``auto_detect_grammar_files=False``, do not initialize the input grammar from a schema file. By default it is set to None. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **output_grammar_file** : *str | Path | None, optional* The output grammar file path. If ``None`` and ``auto_detect_grammar_files=True``, look for ``"ClassName_output.json"`` in the :attr:`.GRAMMAR_DIRECTORY` if any or in the directory of the discipline class module. If ``None`` and ``auto_detect_grammar_files=False``, do not initialize the output grammar from a schema file. By default it is set to None. .. raw:: html
.. _MDOObjectiveScenarioAdapter_options: MDOObjectiveScenarioAdapter --------------------------- Module: :class:`gemseo.disciplines.scenario_adapters.mdo_objective_scenario_adapter` .. raw:: html
Required parameters
  • **input_names** : *Sequence[str]* The inputs to overload at sub-scenario execution. .. raw:: html
  • **opt_history_file_prefix** : *str* The base name for the databases to be exported. The full names of the databases are built from the provided base name suffixed by ``"_i.h5"`` where ``i`` is replaced by the execution number, i.e the number of stored databases. If empty, the databases are not exported. The databases can be exported only is ``keep_opt_history=True``. .. raw:: html
  • **output_names** : *Sequence[str]* The outputs to get from the sub-scenario execution. .. raw:: html
  • **scenario** : *Scenario* The scenario to adapt. .. raw:: html
Optional parameters
  • **cache_type** : *MDODiscipline.CacheType, optional* The type of cache policy. By default it is set to SimpleCache. .. raw:: html
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **keep_opt_history** : *bool, optional* Whether to keep databases copies after each execution. By default it is set to False. .. raw:: html
  • **name** : *str | None, optional* The name of the scenario adapter. If ``None``, use the name of the scenario adapter suffixed by ``"_adapter"``. By default it is set to None. .. raw:: html
  • **output_multipliers** : *bool, optional* If ``True``, the Lagrange multipliers of the scenario optimal solution are computed and added to the outputs. By default it is set to False. .. raw:: html
  • **reset_x0_before_opt** : *bool, optional* If ``True``, reset the initial guess before running the sub optimization. By default it is set to False. .. raw:: html
  • **scenario_log_level** : *int | None, optional* The level of the root logger during the scenario execution. If ``None``, do not change the level of the root logger. By default it is set to None. .. raw:: html
  • **set_bounds_before_opt** : *bool, optional* If ``True``, set the bounds of the design space. This is useful for trust regions. By default it is set to False. .. raw:: html
  • **set_x0_before_opt** : *bool, optional* If ``True``, set the initial guess of the sub-scenario. This is useful for multi-start optimization. By default it is set to False. .. raw:: html
.. _MDOParallelChain_options: MDOParallelChain ---------------- Module: :class:`gemseo.core.chain` .. raw:: html
Required parameters
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **n_processes** : *int | None, optional* The maximum simultaneous number of threads, if ``use_threading`` is True, or processes otherwise, used to parallelize the execution. If ``None``, uses the number of disciplines. By default it is set to None. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **use_deep_copy** : *bool, optional* Whether to deepcopy the discipline input data. By default it is set to False. .. raw:: html
  • **use_threading** : *bool, optional* Whether to use threads instead of processes to parallelize the execution; multiprocessing will copy (serialize) all the disciplines, while threading will share all the memory. This is important to note if you want to execute the same discipline multiple times, you shall use multiprocessing. By default it is set to True. .. raw:: html
.. _MDOScenario_options: MDOScenario ----------- Module: :class:`gemseo.core.mdo_scenario` .. raw:: html
Required parameters
  • **design_space** : *DesignSpace* The search space including at least the design variables (some formulations requires additional variables, e.g. :class:`.IDF` with the coupling variables). .. raw:: html
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines used to compute the objective, constraints and observables from the design variables. .. raw:: html
  • **formulation** : *str* The class name of the :class:`.MDOFormulation`, e.g. ``"MDF"``, ``"IDF"`` or ``"BiLevel"``. .. raw:: html
  • **objective_name** : *str | Sequence[str]* The name(s) of the discipline output(s) used as objective. If multiple names are passed, the objective will be a vector. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The grammar for the scenario and the MDO formulation. By default it is set to JSONGrammar. .. raw:: html
  • **maximize_objective** : *bool, optional* Whether to maximize the objective. By default it is set to False. .. raw:: html
  • **name** : *str | None, optional* The name to be given to this scenario. If ``None``, use the name of the class. By default it is set to None. .. raw:: html
  • ****formulation_options** : *Any* The options of the :class:`.MDOFormulation`. .. raw:: html
.. _MDOScenarioAdapter_options: MDOScenarioAdapter ------------------ Module: :class:`gemseo.disciplines.scenario_adapters.mdo_scenario_adapter` .. raw:: html
Required parameters
  • **input_names** : *Sequence[str]* The inputs to overload at sub-scenario execution. .. raw:: html
  • **opt_history_file_prefix** : *str* The base name for the databases to be exported. The full names of the databases are built from the provided base name suffixed by ``"_i.h5"`` where ``i`` is replaced by the execution number, i.e the number of stored databases. If empty, the databases are not exported. The databases can be exported only is ``keep_opt_history=True``. .. raw:: html
  • **output_names** : *Sequence[str]* The outputs to get from the sub-scenario execution. .. raw:: html
  • **scenario** : *Scenario* The scenario to adapt. .. raw:: html
Optional parameters
  • **cache_type** : *MDODiscipline.CacheType, optional* The type of cache policy. By default it is set to SimpleCache. .. raw:: html
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **keep_opt_history** : *bool, optional* Whether to keep databases copies after each execution. By default it is set to False. .. raw:: html
  • **name** : *str | None, optional* The name of the scenario adapter. If ``None``, use the name of the scenario adapter suffixed by ``"_adapter"``. By default it is set to None. .. raw:: html
  • **output_multipliers** : *bool, optional* If ``True``, the Lagrange multipliers of the scenario optimal solution are computed and added to the outputs. By default it is set to False. .. raw:: html
  • **reset_x0_before_opt** : *bool, optional* If ``True``, reset the initial guess before running the sub optimization. By default it is set to False. .. raw:: html
  • **scenario_log_level** : *int | None, optional* The level of the root logger during the scenario execution. If ``None``, do not change the level of the root logger. By default it is set to None. .. raw:: html
  • **set_bounds_before_opt** : *bool, optional* If ``True``, set the bounds of the design space. This is useful for trust regions. By default it is set to False. .. raw:: html
  • **set_x0_before_opt** : *bool, optional* If ``True``, set the initial guess of the sub-scenario. This is useful for multi-start optimization. By default it is set to False. .. raw:: html
.. _MDOWarmStartedChain_options: MDOWarmStartedChain ------------------- Module: :class:`gemseo.core.chain` .. raw:: html
Required parameters
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines. .. raw:: html
  • **variable_names_to_warm_start** : *Sequence[str]* The names of the variables to be warm started. These names must be outputs of the disciplines in the chain. If the list is empty, no variables are warm started. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
.. _MainDiscipline_options: MainDiscipline -------------- Module: :class:`gemseo.problems.mdo.scalable.parametric.disciplines.main_discipline` .. raw:: html
Required parameters
  • **t_i** : *NDArray[float]* The threshold vectors :math:`t_1,\ldots,t_N`. .. raw:: html
Optional parameters
  • ****default_input_values** : *NDArray[float]* The default values of the input variables. .. raw:: html
.. _MaterialModelInterpolation_options: MaterialModelInterpolation -------------------------- Module: :class:`gemseo.problems.topology_optimization.material_model_interpolation_disc` .. raw:: html
Required parameters
  • **e0** : *float* The full material Young modulus. .. raw:: html
  • **empty_elements** : *Sequence[int]* The index of an empty element ids that are not part of the design space. .. raw:: html
  • **full_elements** : *Sequence[int]* The index of full element ids that are not part of the design space. .. raw:: html
  • **n_x** : *int* The number of elements in the x-direction. .. raw:: html
  • **n_y** : *int* The number of elements in the y-direction. .. raw:: html
  • **penalty** : *float* The SIMP penalty coefficient. .. raw:: html
Optional parameters
  • **contrast** : *float, optional* The ratio between the full material Young's modulus and void material Young's modulus. By default it is set to 1000000000.0. .. raw:: html
.. _MatlabDiscipline_options: MatlabDiscipline ---------------- .. note:: The plugin `gemseo_matlab `_ is required. Module: :class:`gemseo_matlab.matlab_discipline` .. raw:: html
Required parameters
  • **matlab_fct** : *str | Path* The path of the Matlab file or Name of the function. .. raw:: html
Optional parameters
  • **add_subfold_path** : *bool, optional* Whether to add all sub-folder to matlab engine path. By default it is set to False. .. raw:: html
  • **auto_detect_grammar_files** : *bool, optional* If no input and output grammar files are provided, auto_detect_grammar_files uses a naming convention to associate a grammar file to a discipline: searches in the "comp_dir" directory containing the discipline source file for files basenames self.name _input.json and self.name _output.json. By default it is set to False. .. raw:: html
  • **cache_file_path** : *str | None, optional* The file to store the data, mandatory when HDF caching is used. By default it is set to None. .. raw:: html
  • **cache_type** : *MDODiscipline.CacheType, optional* The type of cache. By default it is set to SimpleCache. .. raw:: html
  • **check_opt_data** : *bool, optional* Whether to check input and output data of discipline. By default it is set to True. .. raw:: html
  • **clean_cache_each_n** : *int | None, optional* Iteration interval at which matlab workspace is cleaned. By default it is set to None. .. raw:: html
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The type of the input and output grammars. By default it is set to JSONGrammar. .. raw:: html
  • **input_grammar_file** : *str | None, optional* The file for input grammar description, if None, name + "_input.json" is used. By default it is set to None. .. raw:: html
  • **input_names** : *Sequence[str] | None, optional* The input variables. By default it is set to None. .. raw:: html
  • **is_jac_returned_by_func** : *bool, optional* If True, the jacobian matrices should be returned of matlab function with standard outputs. Default is False. If True, the conventional name 'jac_dout_din' is used as jacobian term of any output 'out' with respect to input 'in'. By default it is set to False. .. raw:: html
  • **matlab_data_file** : *str | Path | None, optional* The .mat file or path containing default values of data. By default it is set to None. .. raw:: html
  • **matlab_engine_name** : *str, optional* The name of the singleton used for this discipline. By default it is set to matlab. .. raw:: html
  • **name** : *str | None, optional* The name of discipline. By default it is set to None. .. raw:: html
  • **output_grammar_file** : *str | None, optional* The file for output grammar description. By default it is set to None. .. raw:: html
  • **output_names** : *Sequence[str] | None, optional* The output variables. By default it is set to None. .. raw:: html
  • **search_file** : *str | None, optional* The root directory to launch the research of matlab file. By default it is set to None. .. raw:: html
.. _Mission_options: Mission ------- Module: :class:`gemseo.problems.mdo.aerostructure.aerostructure` .. raw:: html
Optional parameters
  • **lift_val** : *float, optional* The threshold to compute the lift constraint. By default it is set to 0.5. .. raw:: html
  • **r_val** : *float, optional* The threshold to compute the reserve factor constraint. By default it is set to 0.5. .. raw:: html
.. _PropaneComb1_options: PropaneComb1 ------------ Module: :class:`gemseo.problems.mdo.propane.propane` .. raw:: html .. _PropaneComb2_options: PropaneComb2 ------------ Module: :class:`gemseo.problems.mdo.propane.propane` .. raw:: html .. _PropaneComb3_options: PropaneComb3 ------------ Module: :class:`gemseo.problems.mdo.propane.propane` .. raw:: html .. _PropaneReaction_options: PropaneReaction --------------- Module: :class:`gemseo.problems.mdo.propane.propane` .. raw:: html .. _RemappingDiscipline_options: RemappingDiscipline ------------------- Module: :class:`gemseo.disciplines.remapping` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The original discipline. .. raw:: html
  • **input_mapping** : *NameMapping* The input names to the original input names. .. raw:: html
  • **output_mapping** : *NameMapping* The output names to the original output names. .. raw:: html
.. _RosenMF_options: RosenMF ------- Module: :class:`gemseo.problems.optimization.rosen_mf` .. raw:: html
Optional parameters
  • **dimension** : *int, optional* The dimension of the design space. By default it is set to 2. .. raw:: html
.. _SLURM_options: SLURM ----- Module: :class:`gemseo.wrappers.job_schedulers.slurm` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The discipline to wrap in the job scheduler. .. raw:: html
  • **setup_cmd** : *str* The command used before running the executable. .. raw:: html
  • **user_email** : *str* The user email to send the run status. .. raw:: html
  • **workdir_path** : *Path* The path to the workdir where the files will be generated. .. raw:: html
Optional parameters
  • **cpus_per_task** : *int, optional* The number of CPUS per task. By default it is set to 1. .. raw:: html
  • **job_out_filename** : *str, optional* The output job file name. By default it is set to batch.sh. .. raw:: html
  • **job_template_path** : *Path | str | None, optional* The path to the template to be used to make a submission to the job scheduler command. By default it is set to None. .. raw:: html
  • **mem_per_cpu** : *str, optional* The memory per CPU. By default it is set to 1G. .. raw:: html
  • **nodes_number** : *int, optional* The number nodes. By default it is set to 1. .. raw:: html
  • **ntasks** : *int, optional* The number of tasks. By default it is set to 1. .. raw:: html
  • **ntasks_per_node** : *int, optional* The number of tasks per node. By default it is set to 1. .. raw:: html
  • **scheduler_run_command** : *str, optional* The command to call the job scheduler and submit the generated script. By default it is set to sbatch --wait. .. raw:: html
  • **use_template** : *bool, optional* whether to use template based interface to the job scheduler. By default it is set to True. .. raw:: html
  • **wall_time** : *str, optional* The wall time. By default it is set to 24:00:00. .. raw:: html
  • ****options** : *dict[str:Any]* The job scheduler specific options to be used in the template. .. raw:: html
.. _ScalableDiscipline_options: ScalableDiscipline ------------------ Module: :class:`gemseo.problems.mdo.scalable.parametric.disciplines.scalable_discipline` .. raw:: html
Required parameters
  • **a_i** : *NDArray* The offset vector :math:`a_i`. .. raw:: html
  • **C_ij** : *Mapping[str, NDArray[float]]* The coefficient matrices :math:`\left(C_{i,j}\right)_{j=1\atop j\neq i}^N` where :math:`C_{i,j}` is used to multiply the coupling variable :math:`y_j`. .. raw:: html
  • **D_i0** : *NDArray* The coefficient matrix :math:`D_{i,0}` to multiply the shared design variable :math:`x_0`. .. raw:: html
  • **D_ii** : *NDArray* The coefficient matrix :math:`D_{i,i}` to multiply the local design variable :math:`x_i`. .. raw:: html
  • **index** : *int* The index :math:`i` of the scalable discipline. .. raw:: html
Optional parameters
  • ****default_input_values** : *NDArray[float]* The default values of the input variables. .. raw:: html
.. _Scenario_options: Scenario -------- Module: :class:`gemseo.core.scenario` .. raw:: html
Required parameters
  • **design_space** : *DesignSpace* The search space including at least the design variables (some formulations requires additional variables, e.g. :class:`.IDF` with the coupling variables). .. raw:: html
  • **disciplines** : *Sequence[MDODiscipline]* The disciplines used to compute the objective, constraints and observables from the design variables. .. raw:: html
  • **formulation** : *str* The class name of the :class:`.MDOFormulation`, e.g. ``"MDF"``, ``"IDF"`` or ``"BiLevel"``. .. raw:: html
  • **objective_name** : *str | Sequence[str]* The name(s) of the discipline output(s) used as objective. If multiple names are passed, the objective will be a vector. .. raw:: html
Optional parameters
  • **grammar_type** : *MDODiscipline.GrammarType, optional* The grammar for the scenario and the MDO formulation. By default it is set to JSONGrammar. .. raw:: html
  • **maximize_objective** : *bool, optional* Whether to maximize the objective. By default it is set to False. .. raw:: html
  • **name** : *str | None, optional* The name to be given to this scenario. If ``None``, use the name of the class. By default it is set to None. .. raw:: html
  • ****formulation_options** : *Any* The options of the :class:`.MDOFormulation`. .. raw:: html
.. _ScilabDiscipline_options: ScilabDiscipline ---------------- .. note:: The plugin `gemseo_scilab `_ is required. Module: :class:`gemseo_scilab.scilab_discipline` .. raw:: html
Required parameters
  • **function_name** : *str* The name of the scilab function to generate the discipline from. .. raw:: html
  • **script_dir_path** : *str* The path to the directory to scan for `.sci` files. .. raw:: html
.. _Sellar1_options: Sellar1 ------- Module: :class:`gemseo.problems.mdo.sellar.sellar` .. raw:: html .. _Sellar2_options: Sellar2 ------- Module: :class:`gemseo.problems.mdo.sellar.sellar` .. raw:: html .. _SellarSystem_options: SellarSystem ------------ Module: :class:`gemseo.problems.mdo.sellar.sellar` .. raw:: html .. _SobieskiAerodynamics_options: SobieskiAerodynamics -------------------- Module: :class:`gemseo.problems.mdo.sobieski.disciplines` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiAerodynamicsSG_options: SobieskiAerodynamicsSG ---------------------- Module: :class:`gemseo.problems.mdo.sobieski._disciplines_sg` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiChain_options: SobieskiChain ------------- Module: :class:`gemseo.problems.mdo.sobieski.process.mdo_chain` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The NumPy type for data arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiDiscipline_options: SobieskiDiscipline ------------------ Module: :class:`gemseo.problems.mdo.sobieski.disciplines` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiDisciplineWithSimpleGrammar_options: SobieskiDisciplineWithSimpleGrammar ----------------------------------- Module: :class:`gemseo.problems.mdo.sobieski._disciplines_sg` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiMDAGaussSeidel_options: SobieskiMDAGaussSeidel ---------------------- Module: :class:`gemseo.problems.mdo.sobieski.process.mda_gauss_seidel` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The NumPy type for data arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
  • ****mda_options** : *Any* The options of the MDA. .. raw:: html
.. _SobieskiMDAJacobi_options: SobieskiMDAJacobi ----------------- Module: :class:`gemseo.problems.mdo.sobieski.process.mda_jacobi` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The NumPy type for data arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
  • **n_processes** : *int, optional* The maximum simultaneous number of threads, if ``use_threading`` is True, or processes otherwise, used to parallelize the execution. By default it is set to 1. .. raw:: html
  • ****mda_options** : *Any* The options of the MDA. .. raw:: html
.. _SobieskiMission_options: SobieskiMission --------------- Module: :class:`gemseo.problems.mdo.sobieski.disciplines` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
  • **enable_delay** : *bool | float, optional* If ``True``, wait one second before computation. If a positive number, wait the corresponding number of seconds. If ``False``, compute directly. By default it is set to False. .. raw:: html
.. _SobieskiMissionSG_options: SobieskiMissionSG ----------------- Module: :class:`gemseo.problems.mdo.sobieski._disciplines_sg` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiPropulsion_options: SobieskiPropulsion ------------------ Module: :class:`gemseo.problems.mdo.sobieski.disciplines` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiPropulsionSG_options: SobieskiPropulsionSG -------------------- Module: :class:`gemseo.problems.mdo.sobieski._disciplines_sg` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiStructure_options: SobieskiStructure ----------------- Module: :class:`gemseo.problems.mdo.sobieski.disciplines` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _SobieskiStructureSG_options: SobieskiStructureSG ------------------- Module: :class:`gemseo.problems.mdo.sobieski._disciplines_sg` .. raw:: html
Optional parameters
  • **dtype** : *SobieskiBase.DataType, optional* The data type for the NumPy arrays, either "float64" or "complex128". By default it is set to float64. .. raw:: html
.. _Splitter_options: Splitter -------- Module: :class:`gemseo.disciplines.splitter` .. raw:: html
Required parameters
  • **input_name** : *str* The name of the input to split. .. raw:: html
  • **output_names_to_input_indices** : *dict[str, Iterable[int] | int]* The input indices associated with the output names. .. raw:: html
.. _Structure_options: Structure --------- Module: :class:`gemseo.problems.mdo.aerostructure.aerostructure` .. raw:: html .. _SurrogateDiscipline_options: SurrogateDiscipline ------------------- Module: :class:`gemseo.disciplines.surrogate` .. raw:: html
Required parameters
  • **surrogate** : *str | BaseMLRegressionAlgo* Either the name of a class deriving from :class:`.BaseMLRegressionAlgo` or the instance of an :class:`.BaseMLRegressionAlgo`. .. raw:: html
Optional parameters
  • **data** : *IODataset | None, optional* The learning dataset to train the regression model. If ``None``, the regression model is supposed to be trained. By default it is set to None. .. raw:: html
  • **default_inputs** : *dict[str, ndarray] | None, optional* The default values of the inputs. If ``None``, use the center of the learning input space. By default it is set to None. .. raw:: html
  • **disc_name** : *str | None, optional* The name to be given to the surrogate discipline. If ``None``, concatenate :attr:`.SHORT_ALGO_NAME` and ``data.name``. By default it is set to None. .. raw:: html
  • **input_names** : *Iterable[str] | None, optional* The names of the input variables. If ``None``, consider all input variables mentioned in the learning dataset. By default it is set to None. .. raw:: html
  • **output_names** : *Iterable[str] | None, optional* The names of the output variables. If ``None``, consider all input variables mentioned in the learning dataset. By default it is set to None. .. raw:: html
  • **transformer** : *TransformerType, optional* The strategies to transform the variables. The values are instances of :class:`.BaseTransformer` while the keys are the names of either the variables or the groups of variables, e.g. ``"inputs"`` or ``"outputs"`` in the case of the regression algorithms. If a group is specified, the :class:`.BaseTransformer` will be applied to all the variables of this group. If :attr:`~.BaseMLAlgo.IDENTITY, do not transform the variables. The :attr:`.BaseMLRegressionAlgo.DEFAULT_TRANSFORMER` uses the :class:`.MinMaxScaler` strategy for both input and output variables. By default it is set to {'inputs': , 'outputs': }. .. raw:: html
  • ****parameters** : *MLAlgoParameterType* The parameters of the machine learning algorithm. .. raw:: html
.. _TaylorDiscipline_options: TaylorDiscipline ---------------- Module: :class:`gemseo.disciplines.taylor` .. raw:: html
Required parameters
  • **discipline** : *MDODiscipline* The discipline to be approximated by a Taylor polynomial. .. raw:: html
  • **name** : *str* The name of the discipline. If ``None``, use the class name. .. raw:: html
Optional parameters
  • **input_data** : *Mapping[str, NDArray[float]], optional* The point of expansion. If empty, use the default inputs of ``discipline``. By default it is set to {}. .. raw:: html
.. _VolumeFraction_options: VolumeFraction -------------- Module: :class:`gemseo.problems.topology_optimization.volume_fraction_disc` .. raw:: html
Optional parameters
  • **empty_elements** : *Sequence[int] | None, optional* The index of the empty element ids that are not part of the design space. By default it is set to None. .. raw:: html
  • **full_elements** : *Sequence[int] | None, optional* The index of the full element ids that are not part of the design space. By default it is set to None. .. raw:: html
  • **n_x** : *int, optional* The number of elements in the x-direction. By default it is set to 100. .. raw:: html
  • **n_y** : *int, optional* The number of elements in the y-direction. By default it is set to 100. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
.. _XLSDiscipline_options: XLSDiscipline ------------- Module: :class:`gemseo.wrappers.xls_discipline` .. raw:: html
Required parameters
  • **xls_file_path** : *Path | str* The path to the Excel file. If the file is a XLSM, a macro named "execute" must exist and will be called by the :meth:`~.XLSDiscipline._run` method before retrieving the outputs. .. raw:: html
Optional parameters
  • **copy_xls_at_setstate** : *bool, optional* If ``True``, create a copy of the original Excel file for each of the pickled parallel processes. This option is required to be set to ``True`` for parallelization in Windows platforms. By default it is set to False. .. raw:: html
  • **macro_name** : *str | None, optional* The name of the macro to be executed for a XLSM file. If ``None`` is provided, do not run a macro. By default it is set to execute. .. raw:: html
  • **name** : *str | None, optional* The name of the discipline. If ``None``, use the class name. By default it is set to None. .. raw:: html
  • **recreate_book_at_run** : *bool, optional* Whether to rebuild the xls objects at each ``_run`` call. By default it is set to False. .. raw:: html