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#
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.
AutoJAXDiscipline#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.auto_jax_discipline
- Required settings
function : Callable[[NumberLike, ..., Any, ...], tuple[NumberLike]]
The JAX function.
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : JAXDiscipline.DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
name : str | None, optional
The name of the discipline. If empty, use the name of the class.
By default it is set to None.
static_args : Mapping[str, Any], optional
The names and values of the static arguments of the JAX function. These arguments are constant at discipline execution. The non-numeric arguments can also be included.
By default it is set to {}.
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_funcis expected to take arrays as inputs and give outputs as arrays.By default it is set to False.
BaseFMUDiscipline#
Note
The plugin gemseo_fmu is required.
Module: gemseo_fmu.disciplines.base_fmu_discipline
- Required settings
file_path : str | Path
The path to the FMU model file.
- Optional settings
add_time_to_output_grammar : bool, optional
Whether the time is added to the output grammar.
By default it is set to True.
delete_model_instance_directory : bool, optional
Whether to delete the directory of the FMU instance when deleting the discipline.
By default it is set to True.
do_step : bool, optional
Whether the model is simulated over only one time_step when calling [execute()][gemseo_fmu.disciplines.fmu_discipline.FMUDiscipline.execute]. Otherwise, simulate the model from current time to final time in one go.
By default it is set to False.
final_time : TimeDurationType | None, optional
The final time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the stop time defined in the FMU model if any; otherwise use the initial time.
By default it is set to None.
initial_time : TimeDurationType | None, optional
The initial time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the start time defined in the FMU model if any; otherwise use 0.
By default it is set to None.
input_names : Iterable[str] | None, optional
The names of the FMU model inputs; if empty, use all the inputs and parameters of the FMU model; if None, do not use inputs.
By default it is set to ().
model_instance_directory : str | Path
The directory of the FMU instance, containing the files extracted from the FMU model file; if empty, let fmpy create a temporary directory.
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 .
output_names : Iterable[str], optional
The names of the FMU model outputs. if empty, use all the outputs of the FMU model.
By default it is set to ().
restart : bool, optional
Whether the model is restarted at initial_time after execution.
By default it is set to True.
solver_name : Solver, optional
The name of the solver to simulate a model-exchange model.
By default it is set to CVode.
time_name : str, optional
The name of the time variable in the FMU model.
By default it is set to time.
time_step : TimeDurationType, optional
The time step of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if 0., use the stop time defined in the FMU model if any; otherwise use 0..
By default it is set to 0.0.
use_co_simulation : bool, optional
Whether the co-simulation FMI type is used. Otherwise, use model-exchange FMI type. When do_step is True, the co-simulation FMI type is required.
By default it is set to True.
validate : bool, optional
Whether the FMU file must be checked.
By default it is set to True.
variable_names : Mapping[str, str], optional
The names of the discipline inputs and outputs associated with the names of the FMU model inputs and outputs, passed as {fmu_model_variable_name: discipline_variable_name, ...}. When missing, use the names of the FMU model inputs and outputs.
By default it is set to {}.
**pre_instantiation_parameters : Any, optional
The parameters to be passed to _pre_instantiate().
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
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.
metric_settings_models : CalibrationMetricSettings | Sequence[CalibrationMetricSettings]
A collection of calibration settings, including the name of the observed output, the name of the calibration metric and the corresponding weight comprised between 0 and 1 (the weights must sum to 1). When the output is a 1D function discretized over a mesh, the name of the mesh can be provided. E.g. CalibrationMetricSettings(output_name="z", metric_name="MSE") CalibrationMetricSettings(output_name="z", metric_name="MSE", weight=0.3) or CalibrationMetricSettings(output_name="z", metric_name="MSE", mesh_name="z_mesh") Lastly, CalibrationMetric can be imported from [gemseo_calibration.calibrator][gemseo_calibration.calibrator].
parameter_names : str | Iterable[str]
The names of the parameters to be calibrated.
- Optional settings
formulation_settings_model : BaseFormulationSettings | None, optional
The MDO formulation settings as a Pydantic model. If
None, use**settings.By default it is set to None.
**formulation_settings : Any, optional
The MDO formulation settings, including the formulation name (use the keyword
"formulation_name"). These arguments are ignored whensettings_modelis notNone. If none andsettings_modelisNone, the calibrator uses the default MDF formulation.
CatalogueInterpolation#
Note
The plugin gemseo_bilevel_outer_approximation is required.
Module: gemseo_bilevel_outer_approximation.disciplines.catalogue_interpolation
- Required settings
catalogue : ndarray[Any]
The catalog used for the interpolation.
n_components : int
The number of component of the catalog design variables.
output_name : str
The name of discipline output.
variable_name : str
The name of the categorical variable in input.
- Optional settings
contrast : float, optional
The ratio between the ensured minimum and the minimum value in the catalog.
By default it is set to 1000.0.
ensure_minimum : bool, optional
True, if the interpolation on the catalog should ensure a minimum value.
By default it is set to False.
penalty : float, optional
The exponent adopted by the SIMP approach for intermediate choice penalization.
By default it is set to 1.0.
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.
ConvexificationCorrection#
Note
The plugin gemseo_bilevel_outer_approximation is required.
Module: gemseo_bilevel_outer_approximation.algos.convexification.convexification_correction
- Required settings
design_space : CatalogueDesignSpace
The catalogue design space of the optimization problem.
variables : Iterable[str]
The variables to be convexified.
- Optional settings
convexification : float, optional
The convexification constant.
By default it is set to 0.0.
ConvexificationDiscipline#
Note
The plugin gemseo_bilevel_outer_approximation is required.
Module: gemseo_bilevel_outer_approximation.algos.convexification.convexification_discipline
- Required settings
design_space : CatalogueDesignSpace
The catalogue design space of the optimization problem.
discipline : Discipline
The GEMSEO discipline that need to be convexified.
- Optional settings
convexification : float, optional
The convexification constant.
By default it is set to 0.0.
convexified_outputs : Iterable[str], optional
The outputs that need to be convexified. If empty, all discipline outputs are convexified.
By default it is set to ().
variables : Iterable[str], optional
The variables to be convexified. If empty, all categorical variables are convexified.
By default it is set to ().
DataDrivenScalableDiscipline#
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.
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.txtinput_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}, whereinput_nameis the name of the input variable, and1.0is 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}, whereoutput_nameis the name of the output variable, and1.0is 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_VALUEoutput 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_VALUEis 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, usewrite_input_file().By default it is set to None.
DoStepFMUDiscipline#
Note
The plugin gemseo_fmu is required.
Module: gemseo_fmu.disciplines.do_step_fmu_discipline
- Required settings
file_path : str | Path
The path to the FMU model file.
- Optional settings
add_time_to_output_grammar : bool, optional
Whether the time is added to the output grammar.
By default it is set to True.
delete_fmu_instance_directory : bool, optional
The description is missing.
By default it is set to True.
final_time : TimeType | None, optional
The final time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the stop time defined in the FMU model if any; otherwise use the initial time.
By default it is set to None.
fmu_instance_directory : str | Path
The description is missing.
By default it is set to .
initial_time : TimeType | None, optional
The initial time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the start time defined in the FMU model if any; otherwise use 0.
By default it is set to None.
input_names : Iterable[str] | None, optional
The names of the FMU model inputs; if empty, use all the inputs and parameters of the FMU model; if None, do not use inputs.
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 .
output_names : Iterable[str], optional
The names of the FMU model outputs. if empty, use all the outputs of the FMU model.
By default it is set to ().
restart : bool, optional
Whether the model is restarted at initial_time after execution.
By default it is set to False.
solver_name : FMUDiscipline.Solver, optional
The name of the solver to simulate a model-exchange model.
By default it is set to CVode.
time_step : TimeType, optional
The time step of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if 0., use the stop time defined in the FMU model if any; otherwise use 0..
By default it is set to 0.0.
validate : bool, optional
Whether the FMU file must be checked.
By default it is set to True.
variable_names : Mapping[str, str], optional
The names of the discipline inputs and outputs associated with the names of the FMU model inputs and outputs, passed as {fmu_model_variable_name: discipline_variable_name, ...}. When missing, use the names of the FMU model inputs and outputs.
By default it is set to {}.
**pre_instantiation_parameters : Any, optional
The parameters to be passed to _pre_instantiate().
EnumerativeToOneHot#
Note
The plugin gemseo_bilevel_outer_approximation is required.
Module: gemseo_bilevel_outer_approximation.disciplines.enumerative_to_one_hot
- Required settings
catalogue : ndarray
The catalogue of possible choices.
n_components : int
The size of the categorical design variable.
output_name : str
The output variable name.
variable_name : str
The input variable name.
- Optional settings
name : str
The name of the discipline. If empty, use the name of the class.
By default it is set to .
FMUDiscipline#
Note
The plugin gemseo_fmu is required.
Module: gemseo_fmu.disciplines.fmu_discipline
- Required settings
file_path : str | Path
The path to the FMU model file.
- Optional settings
add_time_to_output_grammar : bool, optional
Whether the time is added to the output grammar.
By default it is set to True.
delete_model_instance_directory : bool, optional
Whether to delete the directory of the FMU instance when deleting the discipline.
By default it is set to True.
do_step : bool, optional
Whether the model is simulated over only one time_step when calling [execute()][gemseo_fmu.disciplines.fmu_discipline.FMUDiscipline.execute]. Otherwise, simulate the model from current time to final time in one go.
By default it is set to False.
final_time : TimeDurationType | None, optional
The final time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the stop time defined in the FMU model if any; otherwise use the initial time.
By default it is set to None.
initial_time : TimeDurationType | None, optional
The initial time of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if None, use the start time defined in the FMU model if any; otherwise use 0.
By default it is set to None.
input_names : Iterable[str] | None, optional
The names of the FMU model inputs; if empty, use all the inputs and parameters of the FMU model; if None, do not use inputs.
By default it is set to ().
model_instance_directory : str | Path
The directory of the FMU instance, containing the files extracted from the FMU model file; if empty, let fmpy create a temporary directory.
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 .
output_names : Iterable[str], optional
The names of the FMU model outputs. if empty, use all the outputs of the FMU model.
By default it is set to ().
restart : bool, optional
Whether the model is restarted at initial_time after execution.
By default it is set to True.
solver_name : Solver, optional
The name of the solver to simulate a model-exchange model.
By default it is set to CVode.
time_name : str, optional
The name of the time variable in the FMU model.
By default it is set to time.
time_step : TimeDurationType, optional
The time step of the simulation; either a number in seconds or a string of characters (see [TimeDuration][gemseo_fmu.utils.time_duration.TimeDuration]); if 0., use the stop time defined in the FMU model if any; otherwise use 0..
By default it is set to 0.0.
use_co_simulation : bool, optional
Whether the co-simulation FMI type is used. Otherwise, use model-exchange FMI type. When do_step is True, the co-simulation FMI type is required.
By default it is set to True.
validate : bool, optional
Whether the FMU file must be checked.
By default it is set to True.
variable_names : Mapping[str, str], optional
The names of the discipline inputs and outputs associated with the names of the FMU model inputs and outputs, passed as {fmu_model_variable_name: discipline_variable_name, ...}. When missing, use the names of the FMU model inputs and outputs.
By default it is set to {}.
**pre_instantiation_parameters : Any, optional
The parameters to be passed to _pre_instantiate().
FilteringDiscipline#
Module: gemseo.disciplines.wrappers.filtering_discipline
- Required settings
discipline : Discipline
The original discipline.
- Optional settings
input_names : Iterable[str], optional
The names of the inputs of interest. If empty, use all the inputs.
By default it is set to ().
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], optional
The names of the outputs of interest. If empty, use all the outputs.
By default it is set to ().
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.
HypercubeToOneHot#
Note
The plugin gemseo_bilevel_outer_approximation is required.
Module: gemseo_bilevel_outer_approximation.disciplines.hypercube_to_one_hot
- Required settings
catalogue : ndarray[Any]
The catalog of the categorical design variable.
n_components : int
The number of component of the catalog design
output_name : str
The name of the variable in output.
variable_name : str
The name of the categorical variable in input.
- Optional settings
name : str
The name of the discipline. If empty, use the name of the class.
By default it is set to .
repeat_vertex : bool, optional
If True, repeat the vertices on unused catalog choices.
By default it is set to False.
IshigamiDiscipline#
Module: gemseo.problems.uncertainty.ishigami.ishigami_discipline
JAXChain#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.jax_chain
- Required settings
disciplines : Sequence[JAXDiscipline]
The JAX disciplines to create the chain over.
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
name : str | None, optional
The name of the discipline. If empty, use the name of the class.
By default it is set to None.
JAXDiscipline#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.jax_discipline
- Required settings
default_inputs : Mapping[str, NumberLike]
The default values of the input variables.
function : Callable[[DataType], DataType]
The JAX function that takes a dictionary
{input_name: input_value, ...}as argument and returns a dictionary{output_name: output_value, ...}.input_names : Sequence[str]
The names of the input variables.
output_names : Sequence[str]
The names of the output variables.
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
name : str | None, optional
The name of the discipline. If empty, use the name of the class.
By default it is set to None.
JAXSellar1#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sellar.sellar_1
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : BaseJAXSellar.DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
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.
static_args : Mapping[str, Any], optional
The names and values of the static arguments of the JAX function. These arguments are constant at discipline execution. The non-numeric arguments can also be included.
By default it is set to {}.
JAXSellar2#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sellar.sellar_2
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : BaseJAXSellar.DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
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.
static_args : Mapping[str, Any], optional
The names and values of the static arguments of the JAX function. These arguments are constant at discipline execution. The non-numeric arguments can also be included.
By default it is set to {}.
JAXSellarChain#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sellar.sellar_chain
- Optional settings
k : float, optional
The description is missing.
By default it is set to 1.0.
n : int, optional
The description is missing.
By default it is set to 1.
pre_run : bool, optional
Whether to pre run the jit.
By default it is set to True.
**kwargs : Any, optional
The arguments passed to JAXChain.
JAXSellarSystem#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sellar.sellar_system
- Optional settings
differentiate_at_execution : bool, optional
Whether to compute the Jacobian when executing the discipline.
By default it is set to False.
differentiation_method : BaseJAXSellar.DifferentiationMethod, optional
The method to compute the Jacobian.
By default it is set to auto.
n : int, optional
The size of the local design variables and coupling variables.
By default it is set to 1.
static_args : Mapping[str, Any], optional
The names and values of the static arguments of the JAX function. These arguments are constant at discipline execution. The non-numeric arguments can also be included.
By default it is set to {}.
JAXSobieskiAerodynamics#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sobieski.aerodynamics
JAXSobieskiChain#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sobieski.chain
JAXSobieskiMission#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sobieski.mission
JAXSobieskiPropulsion#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sobieski.propulsion
JAXSobieskiStructure#
Note
The plugin gemseo_jax is required.
Module: gemseo_jax.problems.sobieski.structure
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
The path to the template to be used to make a submission to the job scheduler command.
By default it is set to .
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
The path to the template to be used to make a submission to the job scheduler command.
By default it is set to .
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 the input variables.
output_name : str
The name of the output variable.
- Optional settings
average : bool, optional
Whether to average the inputs when
input_coefficientsis empty,By default it is set to False.
input_coefficients : Mapping[str, float], optional
The coefficients related to the input variables. If empty, use 1 for all the \(d\) input variables when
averageisFalse. or \(1/d\) whenaverageisTrue.By default it is set to {}.
input_size : int, optional
The size of the inputs.
By default it is set to 1.
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
compute_jac_at_run : bool, optional
Whether to compute the Jacobian in the
_run()method.By default it is set to False.
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.
LinearLinkDiscipline#
Module: gemseo.problems.mdo.opt_as_mdo_scenario
- Required settings
design_space : DesignSpace
The design space of the original optimization problem.
perform_mda_analytically : Callable[[RealArray], RealArray]
The function \(c\) performing the MDA analytically at a given design point \(x=(x_0,x_1,\ldots,x_N)\).
- Optional settings
differentiate_mda_analytically : Callable[[RealArray], RealArray] | None, optional
The function \(\nabla c\) differentiating the MDA analytically at a given design point \(x=(x_0,x_1,\ldots,x_N)\). If
None, the discipline will not be differentiable.By default it is set to None.
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_threadingis True, or processes otherwise, used to parallelize the execution. IfNone, 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 names of the inputs of the top-level disciplines to overload before executing the scenario. These are the adapter's input variables.
output_names : Sequence[str]
The names of the outputs of the top-level disciplines to get after executing the scenario. These are the adapter's output variables.
scenario : BaseScenario
The scenario to adapt.
- Optional settings
keep_opt_history : bool, optional
Whether to keep database copies after each execution. Depending on the size of the databases and the number of consecutive executions, this can be very memory consuming. If the adapter will be executed in parallel, the databases will not be saved to the main process by the sub-processes, so this argument should be set to
Falseto avoid unnecessary memory use in the sub-processes.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 .
naming : NameGenerator.Naming, optional
The way of naming the database files. When the adapter will be executed in parallel, this method shall be set to
UUIDbecause this method is multiprocess-safe.By default it is set to NUMBERED.
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
"_identifier.h5"whereidentifieris replaced by an identifier according to thenaming_method. If empty, useDEFAULT_DATABASE_FILE_PREFIX.By default it is set to .
output_multipliers : bool, optional
Whether to compute the Lagrange multipliers of the scenario optimal solution and add them to the outputs.
By default it is set to False.
reset_x0_before_opt : bool, optional
Whether to reset the initial guess of the optimization problem before executing the scenario.
By default it is set to False.
save_opt_history : bool, optional
Whether to save the optimization history to an HDF5 file after each execution.
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
Whether to 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
Whether to set the initial guess of the optimization problem before executing the 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_threadingis True, or processes otherwise, used to parallelize the execution. IfNone, 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 names of the inputs of the top-level disciplines to overload before executing the scenario. These are the adapter's input variables.
output_names : Sequence[str]
The names of the outputs of the top-level disciplines to get after executing the scenario. These are the adapter's output variables.
scenario : BaseScenario
The scenario to adapt.
- Optional settings
keep_opt_history : bool, optional
Whether to keep database copies after each execution. Depending on the size of the databases and the number of consecutive executions, this can be very memory consuming. If the adapter will be executed in parallel, the databases will not be saved to the main process by the sub-processes, so this argument should be set to
Falseto avoid unnecessary memory use in the sub-processes.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 .
naming : NameGenerator.Naming, optional
The way of naming the database files. When the adapter will be executed in parallel, this method shall be set to
UUIDbecause this method is multiprocess-safe.By default it is set to NUMBERED.
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
"_identifier.h5"whereidentifieris replaced by an identifier according to thenaming_method. If empty, useDEFAULT_DATABASE_FILE_PREFIX.By default it is set to .
output_multipliers : bool, optional
Whether to compute the Lagrange multipliers of the scenario optimal solution and add them to the outputs.
By default it is set to False.
reset_x0_before_opt : bool, optional
Whether to reset the initial guess of the optimization problem before executing the scenario.
By default it is set to False.
save_opt_history : bool, optional
Whether to save the optimization history to an HDF5 file after each execution.
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
Whether to 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
Whether to set the initial guess of the optimization problem before executing the 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 associatedrhs_disciplineoutputs, passed as{state_name: output_name, ...}. If empty, use all therhs_disciplineinputs.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_disciplineand 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#
PropaneComb2#
PropaneComb3#
PropaneReaction#
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 {}.
RetryDiscipline#
Module: gemseo.disciplines.wrappers.retry_discipline
- Required settings
discipline : Discipline
The discipline to wrap in the retry loop.
- Optional settings
fatal_exceptions : Iterable[type[Exception]], optional
The exceptions for which the code raises an exception and exit immediately without retrying a run.
By default it is set to ().
n_trials : int, optional
The number of trials of the discipline.
By default it is set to 5.
timeout : float, optional
The maximum duration, in seconds, that the discipline is allowed to run. If this time limit is exceeded, the execution is terminated. If
math.inf, the discipline is executed without timeout limit.By default it is set to inf.
timeout_with_process : bool, optional
Whether to use a process or a thread when using the timeout feature.
By default it is set to False.
wait_time : float, optional
The time to wait between 2 trials (in seconds).
By default it is set to 0.0.
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
The path to the template to be used to make a submission to the job scheduler command.
By default it is set to .
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.parametric.disciplines.scalable_discipline
- Required settings
a_i : NDArray
The offset vector \(a_i\).
C_ij : Mapping[str, RealArray]
The coefficient matrices \(\left(C_{i,j}\right)_{j=1\atop j\neq i}^N\) where \(C_{i,j}\) is used to multiply the coupling variable \(y_j\).
D_i0 : NDArray
The coefficient matrix \(D_{i,0}\) to multiply the shared design variable \(x_0\).
D_ii : NDArray
The coefficient matrix \(D_{i,i}\) to multiply the local design variable \(x_i\).
index : int
The index \(i\) of the scalable discipline.
- Optional settings
**default_input_values : RealArray, optional
The default values of the input variables.
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.
SignalGeneratorDiscipline#
Note
The plugin gemseo_calibration is required.
Module: gemseo_calibration.signal.signal_generator_discipline
- Required settings
output_names : Iterable[str]
The names of the variables in the signal generator used as discipline output variables.
parameter_names : Iterable[str]
The names of the parameters in the signal generator used as discipline input variables.
signal_generator : BaseSignalGenerator
The signal generator.
state_names : Iterable[str]
The names of the variables in the signal generator used as discipline input variables.
times : RealArray
The times of interest in ascending order, from initial time to final time.
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.
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. IfFalse, 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.
StaticFMUDiscipline#
Note
The plugin gemseo_fmu is required.
Module: gemseo_fmu.disciplines.static_fmu_discipline
- Required settings
file_path : str | Path
The path to the FMU model file.
- Optional settings
delete_model_instance_directory : bool, optional
Whether to delete the directory of the FMU instance when deleting the discipline.
By default it is set to True.
input_names : Iterable[str] | None, optional
The names of the FMU model inputs; if empty, use all the inputs and parameters of the FMU model; if None, do not use inputs.
By default it is set to ().
model_instance_directory : str | Path
The directory of the FMU instance, containing the files extracted from the FMU model file; if empty, let fmpy create a temporary directory.
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 .
output_names : Iterable[str], optional
The names of the FMU model outputs. if empty, use all the outputs of the FMU model.
By default it is set to ().
use_co_simulation : bool, optional
Whether the co-simulation FMI type is used. Otherwise, use model-exchange FMI type. When do_step is True, the co-simulation FMI type is required.
By default it is set to True.
validate : bool, optional
Whether the FMU file must be checked.
By default it is set to True.
variable_names : Mapping[str, str], optional
The names of the discipline inputs and outputs associated with the names of the FMU model inputs and outputs, passed as {fmu_model_variable_name: discipline_variable_name, ...}. When missing, use the names of the FMU model inputs and outputs.
By default it is set to {}.
**pre_instantiation_parameters : Any, optional
The parameters to be passed to _pre_instantiate().
Structure#
SurrogateDiscipline#
Module: gemseo.disciplines.surrogate
- Required settings
surrogate : str | BaseRegressor | BaseRegressorSettings
Either a regressor class name, a regressor instance or regressor settings.
- Optional settings
data : IODataset | None, optional
The 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, the center of the learning input space is used.
By default it is set to {}.
disc_name : str
The name of the discipline. If empty, the concatenation of the short name of the surrogate algorithm and the name of the training dataset is used.
By default it is set to .
input_names : Sequence[str], optional
The names of the input variables of the discipline. If empty and
surrogateis a regressor instance, all input variables of the regressor are used. If empty andsurrogateis not a regressor instance, all input variables mentioned in the training dataset are used. If the type ofsurrogateisBaseRegressorSettings,surrogate.input_namesis ignored and replaced byinput_names.By default it is set to ().
output_names : Sequence[str], optional
The names of the output variables of the discipline. If empty and
surrogateis a regressor instance, all output variables of the regressor are used. If empty andsurrogateis not a regressor instance, all output variables mentioned in the training dataset are used. If the type ofsurrogateisBaseRegressorSettings,surrogate.output_namesis ignored and replaced byoutput_names.By default it is set to ().
transformer : TransformerType, optional
The strategies to transform the variables. This argument is ignored when
surrogateis aBaseRegressor; in this case, these strategies are defined with thetransformerargument of thisBaseRegressor, whose default value isBaseMLAlgo.IDENTITY, which means no transformation. In the other cases, the values of the dictionary are instances ofBaseTransformerwhile the keys can be variable names, the group name"inputs"or the group name"outputs". If a group name is specified, theBaseTransformerwill be applied to all the variables of this group. IfBaseMLAlgo.IDENTITY, do not transform the variables. TheBaseRegressor.DEFAULT_TRANSFORMERuses theMinMaxScalerstrategy for both input and output variables. This argument is ignored when the type ofsurrogateisBaseRegressorSettings.By default it is set to {'inputs': <gemseo.mlearning.transformers.scaler.min_max_scaler.MinMaxScaler object at 0x7c2f95294ad0>, 'outputs': <gemseo.mlearning.transformers.scaler.min_max_scaler.MinMaxScaler object at 0x7c2f952c13d0>}.
**settings : Any, optional
The settings of the machine learning algorithm. These arguments are ignored when the type of
surrogateisBaseRegressorSettings.
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 {}.
input_names : Iterable[str], optional
The names of the input variables of interest. If empty, use all the input variables 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 .
output_names : Iterable[str], optional
The names of the output variables of interest. If empty, use all the output variables of
discipline.By default it is set to ().
TimeSteppingSystem#
Note
The plugin gemseo_fmu is required.
Module: gemseo_fmu.disciplines.time_stepping_system
- Required settings
disciplines : Iterable[str | Path | Discipline]
The static and time-stepping disciplines. The disciplines will be executed circularly according to the order of their definition.
final_time : float
The final time of the simulation (the initial time is 0).
time_step : float
The time step of the system.
- Optional settings
apply_time_step_to_disciplines : bool, optional
Whether the time-stepping disciplines should use time_step as time step. Otherwise, their own time steps.
By default it is set to True.
do_step : bool, optional
Whether the model is simulated over only one time_step when calling the execution method. Otherwise, simulate the model from initial time to final_time.
By default it is set to False.
mda_max_iter_at_t0 : int, optional
The maximum number of iterations of the MDA algorithm at initial time, to find a multidisciplinary feasible configuration.
By default it is set to 0.
mda_name : str, optional
The MDA class name.
By default it is set to MDAJacobi.
mda_options : Mapping[str, Any], optional
The options of the MDA.
By default it is set to {}.
restart : bool, optional
Whether the system is restarted at initial time after each execution.
By default it is set to True.
**fmu_options : Any, optional
The options to instantiate the FMU disciplines.
TrussDiscipline#
Note
The plugin gemseo_umdo is required.
Module: gemseo_umdo.use_cases.truss.discipline
- Optional settings
use_different_bars : bool, optional
Whether the bars are different. Otherwise, use identical oblical bars and identical horizontal bars.
By default it is set to False.
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 .
WingWeightDiscipline#
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 toTruefor parallelization in Windows platforms.By default it is set to False.
macro_name : str, optional
The name of the macro to be executed for a XLSM file. If empty, 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
_runcall.By default it is set to False.