Disciplines#

Warning

Some capabilities may require the installation of GEMSEO with all its features and some others may depend on plugins.

Warning

All the features of the wrapped libraries may not be exposed through GEMSEO.

AdditiveNoiser#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.disciplines.additive_noiser

Required settings
  • noised_variable_name : str

    The name of the variable once noised.

  • uncertain_variable_name : str

    The name of the uncertain variable.

  • variable_name : str

    The name of the variable to be noised.

Aerodynamics#

Module: gemseo.problems.mdo.aerostructure.aerostructure

AnalyticDiscipline#

Module: gemseo.disciplines.analytic

Required settings
  • expressions : Mapping[str, str | Expr]

    The outputs expressed as functions of the inputs.

Optional settings
  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

ArrayBasedFunctionDiscipline#

Module: gemseo.disciplines.array_based_function

Required settings
  • function : Callable[[RealArray], RealArray]

    The function of interest whose both the unique argument and the output are NumPy arrays.

  • input_names_to_sizes : dict[str, int]

    The mapping from the names to the sizes for the input.

  • output_names_to_sizes : dict[str, int]

    The mapping from the names to the sizes for the output.

Optional settings
  • jac_function : Callable[[RealArray], RealArray] | None, optional

    The function computing the derivatives of the function of interest; both its unique argument and its output (i.e. a Jacobian matrix) are NumPy arrays. If None, the derivatives will have to be approximated if required.

    By default it is set to None.

AutoPyDiscipline#

Module: gemseo.disciplines.auto_py

Required settings
  • py_func : Callable

    The Python function to compute the outputs from the inputs.

Optional settings
  • name : str

    The name of the discipline. If empty, use the name of the Python function.

    By default it is set to .

  • 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.

  • use_arrays : bool, optional

    Whether the function py_func is expected to take arrays as inputs and give outputs as arrays.

    By default it is set to False.

BaseDiscipline#

Module: gemseo.problems.mdo.scalable.parametric.disciplines.base_discipline

Required settings
  • core_discipline_parameters : Any

    The parameters to instantiate the core discipline as CoreDiscipline(*core_discipline_parameters).

Optional settings
  • **default_input_values : Any, optional

    The default values of the input variables.

BaseNoiser#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.disciplines.base_noiser

Required settings
  • noised_variable_name : str

    The name of the variable once noised.

  • uncertain_variable_name : str

    The name of the uncertain variable.

  • variable_name : str

    The name of the variable to be noised.

BaseSellar#

Module: gemseo.problems.mdo.sellar.base_sellar

Optional settings
  • n : int, optional

    The size of the local design variables and coupling variables.

    By default it is set to 1.

Beam#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.use_cases.beam_model.discipline

Optional settings
  • n_y : int, optional

    The number of discretization points in the y-direction.

    By default it is set to 3.

  • n_z : int, optional

    The number of discretization points in the z-direction.

    By default it is set to 3.

BeamConstraints#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.use_cases.beam_model.constraints

BraninDiscipline#

Note

The plugin gemseo_mlearning is required.

Module: gemseo_mlearning.problems.branin.branin_discipline

Calibrator#

Note

The plugin gemseo_calibration is required.

Module: gemseo_calibration.calibrator

Required settings
  • 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 [gemseo-calibration.calibrator][gemseo-calibration.calibrator].

  • disciplines : Discipline | list[Discipline]

    The disciplines whose parameters must be calibrated from the reference data.

  • input_names : str | Iterable[str]

    The names of the inputs to be considered for the calibration.

  • parameter_names : str | Iterable[str]

    The names of the parameters to be calibrated.

Optional settings
  • formulation : str, optional

    The name of a formulation to manage the multidisciplinary coupling.

    By default it is set to MDF.

  • **formulation_options : Any, optional

    The options of the formulation.

Concatenater#

Module: gemseo.disciplines.concatenater

Required settings
  • input_variables : Sequence[str]

    The input variables to concatenate.

  • output_variable : str

    The output variable name.

Optional settings
  • input_coefficients : dict[str, float] | None, optional

    The coefficients related to the different input variables.

    By default it is set to None.

ConstraintAggregation#

Module: gemseo.disciplines.constraint_aggregation

Required settings
  • aggregation_function : EvaluationFunction

    The aggregation function or its name, e.g. IKS, lower_bound_KS,upper_bound_KS, POS_SUM and SUM.

  • constraint_names : Sequence[str]

    The names of the constraints to aggregate, which must be discipline outputs.

Optional settings
  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • **options : Any, optional

    The options for the aggregation method.

DensityFilter#

Module: gemseo.problems.topology_optimization.density_filter_disc

Optional settings
  • min_member_size : float, optional

    The minimum structural member size.

    By default it is set to 1.5.

  • n_x : int, optional

    The number of elements in the x-direction.

    By default it is set to 100.

  • n_y : int, optional

    The number of elements in the y-direction.

    By default it is set to 100.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

DiscFromExe#

Module: gemseo.disciplines.wrappers.disc_from_exe

Required settings
  • command_line : str

    The command line to run the executable. E.g. python my_script.py -i input.txt -o output.txt

  • input_filename : str | Path

    The name of the input file to be generated in the output folder. E.g. "input.txt".

  • 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.

  • output_filename : str | Path

    The name of the output file to be generated in the output folder. E.g. "output.txt".

  • 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.

  • root_directory : str | Path

    The base path of the execution directories.

Optional settings
  • clean_after_execution : bool, optional

    Whether to clean the last created directory after execution.

    By default it is set to False.

  • directory_naming_method : DirectoryNamingMethod, optional

    The method to create the execution directories.

    By default it is set to NUMBERED.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • parse_out_separator : str, optional

    The separator used for the KEY_VALUE output parser.

    By default it is set to =.

  • parse_outfile_method : Parser | OutputParser, optional

    The optional method that can be provided by the user to parse the output template file. If the KEY_VALUE is used as output parser, the user may specify the separator key.

    By default it is set to TEMPLATE.

  • write_input_file_method : InputWriter | None, optional

    The method to write the input data file. If None, use write_input_file().

    By default it is set to None.

Discipline#

Module: gemseo.core.discipline.discipline

Optional settings
  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

FilteringDiscipline#

Module: gemseo.disciplines.wrappers.filtering_discipline

Required settings
  • discipline : Discipline

    The original discipline.

Optional settings
  • 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.

  • keep_in : bool, optional

    Whether to keep the inputs of interest. Otherwise, remove them.

    By default it is set to True.

  • keep_out : bool, optional

    Whether to keep the outputs of interest. Otherwise, remove them.

    By default it is set to True.

  • 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.

FiniteElementAnalysis#

Module: gemseo.problems.topology_optimization.fea_disc

Optional settings
  • f_amplitude : int | Sequence[int], optional

    The force amplitude for each pair (f_node, f_direction).

    By default it is set to -1.

  • 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.

  • f_node : int | Sequence[int], optional

    The indices of the nodes where the forces are applied.

    By default it is set to 10200.

  • 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.

  • 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.

  • n_x : int, optional

    The number of elements in the x-direction.

    By default it is set to 100.

  • n_y : int, optional

    The number of elements in the y-direction.

    By default it is set to 100.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • nu : float, optional

    The material Poisson's ratio.

    By default it is set to 0.3.

HeatEquation#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.use_cases.heat_equation.discipline

Optional settings
  • final_time : float, optional

    The time of interest.

    By default it is set to 0.5.

  • mesh_size : int, optional

    The number of equispaced spatial nodes.

    By default it is set to 100.

  • n_modes : int, optional

    The number of modes of the truncated Fourier expansion.

    By default it is set to 21.

  • nu_bounds : tuple[float, float], optional

    The bounds of the thermal diffusivity.

    By default it is set to (0.001, 0.009).

  • rod_length : float, optional

    The length of the rod.

    By default it is set to 1.0.

IshigamiDiscipline#

Module: gemseo.problems.uncertainty.ishigami.ishigami_discipline

JobSchedulerDisciplineWrapper#

Module: gemseo.disciplines.wrappers.job_schedulers.discipline_wrapper

Required settings
  • discipline : Discipline

    The discipline to wrap in the job scheduler.

  • workdir_path : Path

    The path to the workdir where the files will be generated.

Optional settings
  • job_out_filename : str, optional

    The output job file name.

    By default it is set to batch.srun.

  • 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.

  • 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.

  • setup_cmd : str

    The command used before running the executable.

    By default it is set to .

  • use_template : bool, optional

    whether to use template based interface to the job scheduler.

    By default it is set to True.

LSF#

Module: gemseo.disciplines.wrappers.job_schedulers.lsf

Required settings
  • discipline : Discipline

    The discipline to wrap in the job scheduler.

  • workdir_path : Path

    The path to the workdir where the files will be generated.

Optional settings
  • job_out_filename : str, optional

    The output job file name.

    By default it is set to batch.sh.

  • 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.

  • mem_per_cpu : str, optional

    The memory per CPU.

    By default it is set to 1G.

  • ntasks : int, optional

    The number of tasks.

    By default it is set to 1.

  • ntasks_per_node : int, optional

    The number of tasks per node.

    By default it is set to 1.

  • 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.

  • setup_cmd : str

    The command used before running the executable.

    By default it is set to .

  • user_email : str

    The user email to send the run status.

    By default it is set to .

  • wall_time : str, optional

    The wall time.

    By default it is set to 24:00:00.

  • **options : dict[str:Any], optional

    The job scheduler specific options to be used in the template.

LinearCombination#

Module: gemseo.disciplines.linear_combination

Required settings
  • input_names : Iterable[str]

    The names of input variables.

  • output_name : str

    The name of the output variable.

Optional settings
  • 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.

  • 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.

  • offset : float, optional

    The output value when all the input variables are equal to zero.

    By default it is set to 0.0.

LinearDiscipline#

Module: gemseo.problems.mdo.scalable.linear.linear_discipline

Required settings
  • input_names : Sequence[str]

    The input data names.

  • name : str

    The discipline name.

  • output_names : Sequence[str]

    The output data names.

Optional settings
  • 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.

  • matrix_density : float, optional

    The percentage of non-zero elements when the matrix is sparse.

    By default it is set to 0.1.

  • matrix_format : MatrixFormat, optional

    The format of the Jacobian matrix.

    By default it is set to dense.

  • matrix_free_jacobian : bool, optional

    Whether the Jacobians are casted as linear operators.

    By default it is set to False.

  • 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.

MDOAdditiveChain#

Module: gemseo.core.chains.additive_chain

Required settings
  • disciplines : Sequence[Discipline]

    The disciplines.

  • outputs_to_sum : Iterable[str]

    The names of the outputs to sum.

Optional settings
  • 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.

  • name : str

    The name of the discipline. If None, use the class name.

    By default it is set to .

  • 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.

MDOChain#

Module: gemseo.core.chains.chain

Required settings
  • disciplines : Sequence[Discipline]

    The disciplines.

Optional settings
  • name : str

    The name of the discipline. If None, use the class name.

    By default it is set to .

MDOInitializationChain#

Module: gemseo.core.chains.initialization_chain

Required settings
  • disciplines : Sequence[Discipline]

    The disciplines.

Optional settings
  • available_data_names : Iterable[str], optional

    The data names that are assumed to be available at runtime, in addition to the default_input_data.

    By default it is set to ().

  • name : str

    The name of the discipline. If None, use the class name.

    By default it is set to .

MDOObjectiveScenarioAdapter#

Module: gemseo.disciplines.scenario_adapters.mdo_objective_scenario_adapter

Required settings
  • input_names : Sequence[str]

    The inputs to overload at sub-scenario execution.

  • output_names : Sequence[str]

    The outputs to get from the sub-scenario execution.

  • scenario : BaseScenario

    The scenario to adapt.

Optional settings
  • keep_opt_history : bool, optional

    Whether to keep databases copies after each execution.

    By default it is set to False.

  • name : str

    The name of the scenario adapter. If empty, use the name of the scenario adapter suffixed by "_adapter".

    By default it is set to .

  • 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.

    By default it is set to .

  • 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.

  • reset_x0_before_opt : bool, optional

    If True, reset the initial guess before running the sub optimization.

    By default it is set to False.

  • 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.

  • 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.

  • 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.

MDOParallelChain#

Module: gemseo.core.chains.parallel_chain

Required settings
  • disciplines : Sequence[Discipline]

    The disciplines.

Optional settings
  • 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.

  • name : str

    The name of the discipline. If None, use the class name.

    By default it is set to .

  • use_deep_copy : bool, optional

    Whether to deepcopy the discipline input data.

    By default it is set to False.

  • 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.

MDOScenarioAdapter#

Module: gemseo.disciplines.scenario_adapters.mdo_scenario_adapter

Required settings
  • input_names : Sequence[str]

    The inputs to overload at sub-scenario execution.

  • output_names : Sequence[str]

    The outputs to get from the sub-scenario execution.

  • scenario : BaseScenario

    The scenario to adapt.

Optional settings
  • keep_opt_history : bool, optional

    Whether to keep databases copies after each execution.

    By default it is set to False.

  • name : str

    The name of the scenario adapter. If empty, use the name of the scenario adapter suffixed by "_adapter".

    By default it is set to .

  • 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.

    By default it is set to .

  • 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.

  • reset_x0_before_opt : bool, optional

    If True, reset the initial guess before running the sub optimization.

    By default it is set to False.

  • 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.

  • 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.

  • 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.

MDOWarmStartedChain#

Module: gemseo.core.chains.warm_started_chain

Required settings
  • disciplines : Sequence[Discipline]

    The disciplines.

  • 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.

Optional settings
  • name : str

    The name of the discipline. If None, use the class name.

    By default it is set to .

MainDiscipline#

Module: gemseo.problems.mdo.scalable.parametric.disciplines.main_discipline

Required settings
  • t_i : RealArray

    The threshold vectors \(t_1,\ldots,t_N\).

Optional settings
  • **default_input_values : RealArray, optional

    The default values of the input variables.

MaterialModelInterpolation#

Module: gemseo.problems.topology_optimization.material_model_interpolation_disc

Required settings
  • e0 : float

    The full material Young modulus.

  • empty_elements : Sequence[int]

    The index of an empty element ids that are not part of the design space.

  • full_elements : Sequence[int]

    The index of full element ids that are not part of the design space.

  • n_x : int

    The number of elements in the x-direction.

  • n_y : int

    The number of elements in the y-direction.

  • penalty : float

    The SIMP penalty coefficient.

Optional settings
  • 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.

MatlabDiscipline#

Note

The plugin gemseo_matlab is required.

Module: gemseo_matlab.matlab_discipline

Required settings
  • matlab_function_path : str | Path

    The path of the Matlab file or Name of the function.

Optional settings
  • add_subfold_path : bool, optional

    Whether to add all sub-folder to matlab engine path.

    By default it is set to False.

  • check_opt_data : bool, optional

    Whether to check input and output data of discipline.

    By default it is set to True.

  • cleaning_interval : int, optional

    The iteration interval at which matlab workspace is cleaned.

    By default it is set to 0.

  • input_names : Sequence[str], optional

    The input variables.

    By default it is set to ().

  • is_jac_returned_by_func : bool, optional

    Wether the jacobian matrices should be returned of matlab function with standard outputs, 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.

  • matlab_data_path : str | Path

    The .mat path containing the default values of data.

    By default it is set to .

  • matlab_engine_name : str, optional

    The name of the matlab engine used for this discipline.

    By default it is set to matlab.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • output_names : Sequence[str], optional

    The output variables.

    By default it is set to ().

  • root_search_path : str | Path

    The root directory to launch the research of matlab file.

    By default it is set to .

Mission#

Module: gemseo.problems.mdo.aerostructure.aerostructure

Optional settings
  • lift_val : float, optional

    The threshold to compute the lift constraint.

    By default it is set to 0.5.

  • r_val : float, optional

    The threshold to compute the reserve factor constraint.

    By default it is set to 0.5.

MultiplicativeNoiser#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.disciplines.multiplicative_noiser

Required settings
  • noised_variable_name : str

    The name of the variable once noised.

  • uncertain_variable_name : str

    The name of the uncertain variable.

  • variable_name : str

    The name of the variable to be noised.

ODEDiscipline#

Module: gemseo.disciplines.ode.ode_discipline

Required settings
  • rhs_discipline : Discipline

    The discipline defining the right-hand side function of the ODE.

  • times : RealArray

    Either the initial and final times or the times of interest where the state must be stored, including the initial and final times. When only initial and final times are provided, the times of interest are the instants chosen by the ODE solver to compute the state trajectories.

Optional settings
  • final_state_names : Mapping[str, str], optional

    The names of the state variables bound to their names at final time. If empty, use "state_final" for a state variable named "state".

    By default it is set to {}.

  • final_time_name : str

    The name of the variable for the final time. If empty, use f"final_{time_name}".

    By default it is set to .

  • initial_state_names : Mapping[str, str], optional

    The names of the state variables bound to the names of the variables denoting the initial conditions. If empty, use "state_initial" for a state variable named "state".

    By default it is set to {}.

  • initial_time_name : str

    The name of the variable for the initial time. If empty, use f"initial_{time_name}".

    By default it is set to .

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • ode_solver_name : str, optional

    The name of the ODE solver.

    By default it is set to RK45.

  • return_trajectories : bool, optional

    Whether to output both the trajectories of the state variables and their values at final time. Otherwise, output only their values at final time.

    By default it is set to False.

  • solve_at_algorithm_times : bool, optional

    Whether to solve the ODE chosen by the algorithm.

    By default it is set to False.

  • state_names : Iterable[str] | Mapping[str, str], optional

    Either the names of the state variables, passed as (state_name, ...), or the names of the state variables bound to the associated rhs_discipline outputs, passed as {state_name: output_name, ...}. If empty, use all the rhs_discipline inputs.

    By default it is set to ().

  • state_trajectory_names : Mapping[str, str], optional

    The names of the state variables bound to the names of their trajectories. If empty, use "state" for a state variable named "state".

    By default it is set to {}.

  • termination_event_disciplines : Iterable[Discipline], optional

    The disciplines encoding termination events. Each discipline must have the same inputs as rhs_discipline and only one output defined as an arrays of size 1 indicating the value of an event function. The resolution of the ODE problem stops when one of the event functions crosses the threshold 0. If empty, the integration covers the entire time interval.

    By default it is set to ().

  • time_name : str, optional

    The name of the time variable.

    By default it is set to time.

  • **ode_solver_settings : Any, optional

    The settings of the ODE solver.

OscillatorDiscipline#

Module: gemseo.problems.ode.oscillator_discipline

Required settings
  • omega : float

    The positive angular velocity of the oscillator.

  • times : RealArray

    Either the initial and final times or the times of interest where the state must be stored, including the initial and final times. When only initial and final times are provided, the times of interest are the instants chosen by the ODE solver to compute the state trajectories.

Optional settings
  • final_state_names : Mapping[str, str], optional

    The names of the state variables bound to their names at final time. If empty, use "state_final" for a state variable named "state".

    By default it is set to {}.

  • return_trajectories : bool, optional

    Whether to output both the trajectories of the state variables and their values at final time. Otherwise, output only their values at final time.

    By default it is set to False.

PropaneComb1#

Module: gemseo.problems.mdo.propane.propane

PropaneComb2#

Module: gemseo.problems.mdo.propane.propane

PropaneComb3#

Module: gemseo.problems.mdo.propane.propane

PropaneReaction#

Module: gemseo.problems.mdo.propane.propane

RemappingDiscipline#

Module: gemseo.disciplines.remapping

Required settings
  • discipline : Discipline

    The original discipline.

Optional settings
  • input_mapping : NameMapping, optional

    The input names to the original input names.

    By default it is set to {}.

  • output_mapping : NameMapping, optional

    The output names to the original output names.

    By default it is set to {}.

RosenMF#

Module: gemseo.problems.optimization.rosen_mf

Optional settings
  • dimension : int, optional

    The dimension of the design space.

    By default it is set to 2.

RosenbrockDiscipline#

Note

The plugin gemseo_mlearning is required.

Module: gemseo_mlearning.problems.rosenbrock.rosenbrock_discipline

SLURM#

Module: gemseo.disciplines.wrappers.job_schedulers.slurm

Required settings
  • discipline : Discipline

    The discipline to wrap in the job scheduler.

  • workdir_path : Path

    The path to the workdir where the files will be generated.

Optional settings
  • cpus_per_task : int, optional

    The number of CPUS per task.

    By default it is set to 1.

  • job_out_filename : str, optional

    The output job file name.

    By default it is set to batch.sh.

  • 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.

  • mem_per_cpu : str, optional

    The memory per CPU.

    By default it is set to 1G.

  • nodes_number : int, optional

    The number nodes.

    By default it is set to 1.

  • ntasks : int, optional

    The number of tasks.

    By default it is set to 1.

  • ntasks_per_node : int, optional

    The number of tasks per node.

    By default it is set to 1.

  • 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.

  • setup_cmd : str

    The command used before running the executable.

    By default it is set to .

  • use_template : bool, optional

    whether to use template based interface to the job scheduler.

    By default it is set to True.

  • user_email : str

    The user email to send the run status.

    By default it is set to .

  • wall_time : str, optional

    The wall time.

    By default it is set to 24:00:00.

  • **options : dict[str:Any], optional

    The job scheduler specific options to be used in the template.

ScalableDiscipline#

Module: gemseo.problems.mdo.scalable.data_driven.discipline

Required settings
  • data : IODataset

    The training dataset.

  • name : str

    The name of the class of the scalable model.

Optional settings
  • sizes : Mapping[str, int], optional

    The sizes of the input and output variables. If empty, use the original sizes.

    By default it is set to {}.

  • **parameters : Any, optional

    The parameters for the model.

Sellar1#

Module: gemseo.problems.mdo.sellar.sellar_1

Optional settings
  • k : float, optional

    The shared coefficient controlling the coupling strength.

    By default it is set to 1.0.

  • n : int, optional

    The size of the local design variables and coupling variables.

    By default it is set to 1.

Sellar2#

Module: gemseo.problems.mdo.sellar.sellar_2

Optional settings
  • k : float, optional

    The shared coefficient controlling the coupling strength

    By default it is set to 1.0.

  • n : int, optional

    The size of the local design variables and coupling variables.

    By default it is set to 1.

SellarSystem#

Module: gemseo.problems.mdo.sellar.sellar_system

Optional settings
  • n : int, optional

    The size of the local design variables and coupling variables.

    By default it is set to 1.

SobieskiAerodynamics#

Module: gemseo.problems.mdo.sobieski.disciplines

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiAerodynamicsSG#

Module: gemseo.problems.mdo.sobieski._disciplines_sg

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiChain#

Module: gemseo.problems.mdo.sobieski.process.mdo_chain

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The NumPy type for data arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiDiscipline#

Module: gemseo.problems.mdo.sobieski.disciplines

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiDisciplineWithSimpleGrammar#

Module: gemseo.problems.mdo.sobieski._disciplines_sg

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiMDAGaussSeidel#

Module: gemseo.problems.mdo.sobieski.process.mda_gauss_seidel

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The NumPy type for data arrays, either "float64" or "complex128".

    By default it is set to float64.

  • settings_model : MDAGaussSeidel_Settings | None, optional

    The MDA settings as a Pydantic model. If None, use **settings.

    By default it is set to None.

  • **settings : Any, optional

    The settings of the MDA.

SobieskiMDAJacobi#

Module: gemseo.problems.mdo.sobieski.process.mda_jacobi

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The NumPy type for data arrays, either "float64" or "complex128".

    By default it is set to float64.

  • **settings : Any, optional

    The settings of the MDA.

SobieskiMission#

Module: gemseo.problems.mdo.sobieski.disciplines

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

  • 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.

SobieskiMissionSG#

Module: gemseo.problems.mdo.sobieski._disciplines_sg

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiPropulsion#

Module: gemseo.problems.mdo.sobieski.disciplines

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiPropulsionSG#

Module: gemseo.problems.mdo.sobieski._disciplines_sg

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiStructure#

Module: gemseo.problems.mdo.sobieski.disciplines

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

SobieskiStructureSG#

Module: gemseo.problems.mdo.sobieski._disciplines_sg

Optional settings
  • dtype : SobieskiBase.DataType, optional

    The data type for the NumPy arrays, either "float64" or "complex128".

    By default it is set to float64.

Splitter#

Module: gemseo.disciplines.splitter

Required settings
  • input_name : str

    The name of the input to split.

  • output_names_to_input_indices : dict[str, Iterable[int] | int]

    The input indices associated with the output names.

SpringMassDiscipline#

Note

The plugin gemseo_umdo is required.

Module: gemseo_umdo.use_cases.spring_mass_model.discipline

Optional settings
  • final_time : float, optional

    The final time.

    By default it is set to 10.0.

  • gravity : float, optional

    The gravity acceleration.

    By default it is set to 9.8.

  • initial_state : tuple[float, float], optional

    The initial position and velocity of the object.

    By default it is set to (0, 0).

  • initial_time : float, optional

    The initial time.

    By default it is set to 0.0.

  • mass : float, optional

    The mass of the object.

    By default it is set to 1.5.

  • time_step : float, optional

    The time step.

    By default it is set to 0.1.

SpringODEDiscipline#

Module: gemseo.problems.ode.springs.spring_ode_discipline

Required settings
  • left_stiffness : float

    The stiffness of the spring on the left-hand side.

  • mass : float

    The value of the mass.

  • right_stiffness : float

    The stiffness of the spring on the right-hand side.

  • times : RealArray

    The times at which the solution must be evaluated.

Optional settings
  • is_left_position_fixed : bool, optional

    Whether the other end of the spring to the left is fixed.

    By default it is set to False.

  • is_right_position_fixed : bool, optional

    Whether the other end of the spring to the right is fixed.

    By default it is set to False.

  • left_position : float, optional

    The position of the other extremity of the spring to the left.

    By default it is set to 0.0.

  • left_position_name : str, optional

    The names of the variable describing the motion of the mass to the left.

    By default it is set to left_position.

  • right_position : float, optional

    The position of the other extremity of the spring to the right.

    By default it is set to 0.0.

  • right_position_name : str, optional

    The names of the variable describing the motion of the mass to the right.

    By default it is set to right_position.

  • state_dot_names : Sequence[str], optional

    The names of the derivatives of the state variables relative to time.

    By default it is set to ('position_dot', 'velocity_dot').

  • state_names : Sequence[str], optional

    The names of the state variables.

    By default it is set to ('position', 'velocity').

  • **ode_solver_options : Any, optional

    The options of the ODE solver.

SpringsDynamicsDiscipline#

Module: gemseo.problems.ode.springs.springs_dynamics_discipline

Required settings
  • left_stiffness : float

    The stiffness of the spring on the left-hand side.

  • mass : float

    The value of the mass.

  • right_stiffness : float

    The stiffness of the spring on the right-hand side.

Optional settings
  • left_position : RealArray | float, optional

    The position of the other extremity of the spring to the left.

    By default it is set to 0.0.

  • left_position_name : str

    Name of the input describing the position of the mass on the left, if is_left_position_fixed is False.

    By default it is set to .

  • right_position : RealArray | float, optional

    The position of the other extremity of the spring to the right.

    By default it is set to 0.0.

  • right_position_name : str

    Name of the input describing the position of the mass on the right, if is_right_position_fixed is False.

    By default it is set to .

  • state_dot_var_names : Sequence[str], optional

    The names of the time derivatives of the state variables (by default 'position_dot' and 'velocity_dot').

    By default it is set to ('position_dot', 'velocity_dot').

  • state_names : Sequence[str], optional

    The names of the state variables (by default 'position' and 'velocity').

    By default it is set to ('position', 'velocity').

  • times : RealArray | None, optional

    the time vector for the evaluation of the left and right positions.

    By default it is set to None.

Structure#

Module: gemseo.problems.mdo.aerostructure.aerostructure

SurrogateDiscipline#

Module: gemseo.disciplines.surrogate

Required settings
  • surrogate : str | BaseRegressor

    Either the name of a subclass of BaseRegressor or an instance of this subclass.

Optional settings
  • data : IODataset | None, optional

    The training dataset to train the regression model. If None, the regression model is supposed to be trained.

    By default it is set to None.

  • default_input_data : dict[str, ndarray], optional

    The default values of the input variables. If empty, use the center of the learning input space.

    By default it is set to {}.

  • disc_name : str

    The name to be given to the surrogate discipline. If empty, the name will be f"{surrogate.SHORT_ALGO_NAME}_{data.name}.

    By default it is set to .

  • input_names : Iterable[str], optional

    The names of the input variables. If empty, consider all input variables mentioned in the training dataset.

    By default it is set to ().

  • output_names : Iterable[str], optional

    The names of the output variables. If empty, consider all input variables mentioned in the training dataset.

    By default it is set to ().

  • transformer : TransformerType, optional

    The strategies to transform the variables. This argument is ignored when surrogate is a BaseRegressor; in this case, these strategies are defined with the transformer argument of this BaseRegressor, whose default value is BaseMLAlgo.IDENTITY, which means no transformation. In the other cases, the values of the dictionary are instances of BaseTransformer while the keys can be variable names, the group name "inputs" or the group name "outputs". If a group name is specified, the BaseTransformer will be applied to all the variables of this group. If BaseMLAlgo.IDENTITY, do not transform the variables. The BaseRegressor.DEFAULT_TRANSFORMER uses the MinMaxScaler strategy for both input and output variables.

    By default it is set to {'inputs': <gemseo.mlearning.transformers.scaler.min_max_scaler.MinMaxScaler object at 0x7f9c3ac2da00>, 'outputs': <gemseo.mlearning.transformers.scaler.min_max_scaler.MinMaxScaler object at 0x7f9c3ac2dfd0>}.

  • **settings : MLAlgoSettingsType, optional

    The settings of the machine learning algorithm.

TaylorDiscipline#

Module: gemseo.disciplines.taylor

Required settings
  • discipline : Discipline

    The discipline to be approximated by a Taylor polynomial.

Optional settings
  • 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 {}.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

VolumeFraction#

Module: gemseo.problems.topology_optimization.volume_fraction_disc

Optional settings
  • 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.

  • 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.

  • n_x : int, optional

    The number of elements in the x-direction.

    By default it is set to 100.

  • n_y : int, optional

    The number of elements in the y-direction.

    By default it is set to 100.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

XLSDiscipline#

Module: gemseo.disciplines.wrappers.xls_discipline

Required settings
  • 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 _run() method before retrieving the outputs.

Optional settings
  • 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.

  • 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.

  • name : str

    The name of the discipline. If empty, use the name of the class.

    By default it is set to .

  • recreate_book_at_run : bool, optional

    Whether to rebuild the xls objects at each _run call.

    By default it is set to False.

_LinkDiscipline#

Module: gemseo.problems.mdo.opt_as_mdo_scenario

Required settings
  • design_space : DesignSpace

    The design space of the original optimization problem, whose first design variable will be the shared global design variable of the MDO problem.

  • perform_mda_analytically : Callable[[RealArray], RealArray]

    The function performing the MDA analytically at a given design point.