gemseo.algos.doe.base_doe_settings module#

Settings for the DOE library.

Settings BaseDOESettings(*, enable_progress_bar=None, eq_tolerance=0.01, ineq_tolerance=0.0001, log_problem=True, max_time=0.0, normalize_design_space=False, reset_iteration_counters=True, round_ints=True, use_database=True, use_one_line_progress_bar=False, store_jacobian=True, eval_jac=False, n_processes=1, wait_time_between_samples=0.0, callbacks=())[source]#

Bases: BaseDriverSettings

The settings for the DOELibrary.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • enable_progress_bar (bool | None)

  • eq_tolerance (Annotated[float, Ge(ge=0)]) --

    By default it is set to 0.01.

  • ineq_tolerance (Annotated[float, Ge(ge=0)]) --

    By default it is set to 0.0001.

  • log_problem (bool) --

    By default it is set to True.

  • max_time (Annotated[float, Ge(ge=0)]) --

    By default it is set to 0.0.

  • normalize_design_space (bool) --

    By default it is set to False.

  • reset_iteration_counters (bool) --

    By default it is set to True.

  • round_ints (bool) --

    By default it is set to True.

  • use_database (bool) --

    By default it is set to True.

  • use_one_line_progress_bar (bool) --

    By default it is set to False.

  • store_jacobian (bool) --

    By default it is set to True.

  • eval_jac (bool) --

    By default it is set to False.

  • n_processes (Annotated[int, Gt(gt=0)]) --

    By default it is set to 1.

  • wait_time_between_samples (Annotated[float, Ge(ge=0)]) --

    By default it is set to 0.0.

  • callbacks (Sequence[Annotated[Callable[[int, tuple[dict[str, float | ndarray[Any, dtype[floating[Any]]]], dict[str, ndarray[Any, dtype[floating[Any]]]]]], Any], WithJsonSchema(json_schema={}, mode=None)]]) --

    By default it is set to ().

Return type:

None

callbacks: Sequence[Annotated[Callable[[int, EvaluationType], Any], WithJsonSchema({})]] = ()#

The functions to be evaluated after each functions evaluation.

The functions evaluation is done by OptimizationProblem.evaluate_functions() and the callback must be called as callback(index, (output, Jacobian)).

eval_jac: bool = False#

Whether to evaluate the Jacobian function.

n_processes: PositiveInt = 1#

The maximum number of processes to parallelize the execution.

Constraints:
  • gt = 0

normalize_design_space: bool = False#

Whether to normalize the design space variables between 0 and 1.

wait_time_between_samples: NonNegativeFloat = 0.0#

The time to wait between each sample evaluation, in seconds.

Constraints:
  • ge = 0