.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples/mdo/plot_aerostructure.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_mdo_plot_aerostructure.py: MDO formulations for a toy example in aerostructure =================================================== .. GENERATED FROM PYTHON SOURCE LINES 24-59 .. code-block:: Python from __future__ import annotations from gemseo import configure_logger from gemseo import create_discipline from gemseo import create_scenario from gemseo import generate_n2_plot from gemseo.algos.opt.nlopt.settings.nlopt_cobyla_settings import NLOPT_COBYLA_Settings from gemseo.algos.opt.nlopt.settings.nlopt_slsqp_settings import NLOPT_SLSQP_Settings from gemseo.problems.mdo.aerostructure.aerostructure_design_space import ( AerostructureDesignSpace, ) configure_logger() # Passed to algo settings cobyla_settings = NLOPT_COBYLA_Settings( max_iter=7, xtol_rel=1e-8, xtol_abs=1e-8, ftol_rel=1e-8, ftol_abs=1e-8, ineq_tolerance=1e-5, eq_tolerance=1e-3, ) slsqp_settings = NLOPT_SLSQP_Settings( max_iter=10, xtol_rel=1e-8, xtol_abs=1e-8, ftol_rel=1e-8, ftol_abs=1e-8, ineq_tolerance=1e-5, eq_tolerance=1e-3, ) .. GENERATED FROM PYTHON SOURCE LINES 60-64 Create discipline ----------------- First, we create disciplines (aero, structure, mission) with dummy formulas using the :class:`.AnalyticDiscipline` class. .. GENERATED FROM PYTHON SOURCE LINES 64-88 .. code-block:: Python aero_formulas = { "drag": "0.1*((sweep/360)**2 + 200 + thick_airfoils**2-thick_airfoils -4*displ)", "forces": "10*sweep + 0.2*thick_airfoils-0.2*displ", "lift": "(sweep + 0.2*thick_airfoils-2.*displ)/3000.", } aerodynamics = create_discipline( "AnalyticDiscipline", name="Aerodynamics", expressions=aero_formulas ) struc_formulas = { "mass": "4000*(sweep/360)**3 + 200000 + 100*thick_panels +200.0*forces", "reserve_fact": "-3*sweep -6*thick_panels+0.1*forces+55", "displ": "2*sweep + 3*thick_panels-2.*forces", } structure = create_discipline( "AnalyticDiscipline", name="Structure", expressions=struc_formulas ) mission_formulas = {"range": "8e11*lift/(mass*drag)"} mission = create_discipline( "AnalyticDiscipline", name="Mission", expressions=mission_formulas ) disciplines = [aerodynamics, structure, mission] .. GENERATED FROM PYTHON SOURCE LINES 89-90 We can see that structure and aerodynamics are strongly coupled: .. GENERATED FROM PYTHON SOURCE LINES 90-92 .. code-block:: Python generate_n2_plot(disciplines, save=False, show=True) .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_001.png :alt: plot aerostructure :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_001.png :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 93-96 Create an MDO scenario with MDF formulation ------------------------------------------- Then, we create an MDO scenario based on the MDF formulation .. GENERATED FROM PYTHON SOURCE LINES 96-109 .. code-block:: Python design_space = AerostructureDesignSpace() scenario = create_scenario( disciplines, "range", design_space, maximize_objective=True, formulation_name="MDF", ) scenario.add_constraint("reserve_fact", constraint_type="ineq", value=0.5) scenario.add_constraint("lift", value=0.5) scenario.execute(slsqp_settings) scenario.post_process(post_name="OptHistoryView", save=False, show=True) .. rst-class:: sphx-glr-horizontal * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_002.png :alt: Evolution of the optimization variables :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_002.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_003.png :alt: Evolution of the objective value :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_003.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_004.png :alt: Evolution of the distance to the optimum :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_004.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_005.png :alt: Evolution of the inequality constraints :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_005.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_006.png :alt: Evolution of the equality constraints :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_006.png :class: sphx-glr-multi-img .. rst-class:: sphx-glr-script-out .. code-block:: none /home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/design_space.py:424: ComplexWarning: Casting complex values to real discards the imaginary part self.__current_value[name] = array_value.astype( INFO - 08:36:30: Variable reserve_fact was removed from the Design Space, it is not an input of any discipline. INFO - 08:36:30: INFO - 08:36:30: *** Start MDOScenario execution *** INFO - 08:36:30: MDOScenario INFO - 08:36:30: Disciplines: Aerodynamics Mission Structure INFO - 08:36:30: MDO formulation: MDF INFO - 08:36:30: Optimization problem: INFO - 08:36:30: minimize -range(thick_airfoils, thick_panels, sweep) INFO - 08:36:30: with respect to sweep, thick_airfoils, thick_panels INFO - 08:36:30: subject to constraints: INFO - 08:36:30: reserve_fact(thick_airfoils, thick_panels, sweep) <= 0.5 INFO - 08:36:30: lift(thick_airfoils, thick_panels, sweep) == 0.5 INFO - 08:36:30: over the design space: INFO - 08:36:30: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:30: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:30: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:30: | thick_airfoils | 5 | 15 | 25 | float | INFO - 08:36:30: | thick_panels | 1 | 3 | 20 | float | INFO - 08:36:30: | sweep | 10 | 25 | 35 | float | INFO - 08:36:30: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:30: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:30: 10%|█ | 1/10 [00:00<00:00, 76.36 it/sec, obj=-4.25e+3] INFO - 08:36:30: 20%|██ | 2/10 [00:00<00:00, 26.79 it/sec, obj=-4.51e+3] INFO - 08:36:30: 30%|███ | 3/10 [00:00<00:00, 30.89 it/sec, obj=-4.51e+3] INFO - 08:36:30: 40%|████ | 4/10 [00:00<00:00, 40.80 it/sec, obj=Not evaluated] INFO - 08:36:30: Optimization result: INFO - 08:36:30: Optimizer info: INFO - 08:36:30: Status: None INFO - 08:36:30: Message: Successive iterates of the design variables are closer than xtol_rel or xtol_abs. GEMSEO stopped the driver. INFO - 08:36:30: Number of calls to the objective function by the optimizer: 4 INFO - 08:36:30: Solution: INFO - 08:36:30: The solution is feasible. INFO - 08:36:30: Objective: -4509.505446934416 INFO - 08:36:30: Standardized constraints: INFO - 08:36:30: [lift-0.5] = 8.881784197001252e-15 INFO - 08:36:30: [reserve_fact-0.5] = 6.464347279688809e-09 INFO - 08:36:30: Design space: INFO - 08:36:30: +----------------+-------------+-------------------+-------------+-------+ INFO - 08:36:30: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:30: +----------------+-------------+-------------------+-------------+-------+ INFO - 08:36:30: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:30: | thick_panels | 1 | 3.225589224567829 | 20 | float | INFO - 08:36:30: | sweep | 10 | 24.99326599309897 | 35 | float | INFO - 08:36:30: +----------------+-------------+-------------------+-------------+-------+ INFO - 08:36:30: *** End MDOScenario execution (time: 0:00:00.105435) *** .. GENERATED FROM PYTHON SOURCE LINES 110-113 Create an MDO scenario with bilevel formulation ----------------------------------------------- Then, we create an MDO scenario based on the bilevel formulation .. GENERATED FROM PYTHON SOURCE LINES 113-115 .. code-block:: Python design_space_ref = AerostructureDesignSpace() .. rst-class:: sphx-glr-script-out .. code-block:: none /home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/design_space.py:424: ComplexWarning: Casting complex values to real discards the imaginary part self.__current_value[name] = array_value.astype( .. GENERATED FROM PYTHON SOURCE LINES 116-120 Create the aeronautics sub-scenario ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ For this purpose, we create a first sub-scenario to maximize the range with respect to the thick airfoils, based on the aerodynamics discipline. .. GENERATED FROM PYTHON SOURCE LINES 120-129 .. code-block:: Python aero_scenario = create_scenario( [aerodynamics, mission], "range", design_space_ref.filter(["thick_airfoils"], copy=True), maximize_objective=True, formulation_name="DisciplinaryOpt", ) aero_scenario.set_algorithm(slsqp_settings) .. GENERATED FROM PYTHON SOURCE LINES 130-134 Create the structure sub-scenario ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ We create a second sub-scenario to maximize the range with respect to the thick panels, based on the structure discipline. .. GENERATED FROM PYTHON SOURCE LINES 134-143 .. code-block:: Python struct_scenario = create_scenario( [structure, mission], "range", design_space_ref.filter(["thick_panels"], copy=True), maximize_objective=True, formulation_name="DisciplinaryOpt", ) struct_scenario.set_algorithm(slsqp_settings) .. GENERATED FROM PYTHON SOURCE LINES 144-148 Create the system scenario ^^^^^^^^^^^^^^^^^^^^^^^^^^ Lastly, we build a system scenario to maximize the range with respect to the sweep, which is a shared variable, based on the previous sub-scenarios. .. GENERATED FROM PYTHON SOURCE LINES 148-162 .. code-block:: Python design_space_system = design_space_ref.filter(["sweep"], copy=True) system_scenario = create_scenario( [aero_scenario, struct_scenario, mission], "range", design_space_system, formulation_name="BiLevel", maximize_objective=True, main_mda_settings={"inner_mda_name": "MDAJacobi", "tolerance": 1e-8}, ) system_scenario.add_constraint("reserve_fact", constraint_type="ineq", value=0.5) system_scenario.add_constraint("lift", value=0.5) system_scenario.execute(cobyla_settings) system_scenario.post_process(post_name="OptHistoryView", save=False, show=True) .. rst-class:: sphx-glr-horizontal * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_007.png :alt: Evolution of the optimization variables :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_007.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_008.png :alt: Evolution of the objective value :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_008.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_009.png :alt: Evolution of the distance to the optimum :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_009.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_010.png :alt: Evolution of the inequality constraints :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_010.png :class: sphx-glr-multi-img * .. image-sg:: /examples/mdo/images/sphx_glr_plot_aerostructure_011.png :alt: Evolution of the equality constraints :srcset: /examples/mdo/images/sphx_glr_plot_aerostructure_011.png :class: sphx-glr-multi-img .. rst-class:: sphx-glr-script-out .. code-block:: none INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: MDOScenario MDOScenario Mission INFO - 08:36:31: MDO formulation: BiLevel INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(sweep) INFO - 08:36:31: with respect to sweep INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(sweep) <= 0.5 INFO - 08:36:31: lift(sweep) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: | sweep | 10 | 25 | 35 | float | INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_COBYLA: INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 15 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1032.32 it/sec, obj=-4.27e+3] WARNING - 08:36:31: Optimization found no feasible point; the least infeasible point is selected. INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 284.59 it/sec, obj=-4.51e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: 5 INFO - 08:36:31: Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached INFO - 08:36:31: Number of calls to the objective function by the optimizer: 16 INFO - 08:36:31: Solution: WARNING - 08:36:31: The solution is not feasible. INFO - 08:36:31: Objective: -4513.429203824652 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 0.008666666666666822 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.010399) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 989.69 it/sec, obj=-4.51e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 361.00 it/sec, obj=-4.5e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 3 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4504.955637332531 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = 1.062133492268913e-09 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.266666666489645 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.008853) *** INFO - 08:36:31: 14%|█▍ | 1/7 [00:00<00:00, 31.79 it/sec, obj=-4.51e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1521.33 it/sec, obj=-4.27e+3] WARNING - 08:36:31: Optimization found no feasible point; the least infeasible point is selected. INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: 5 INFO - 08:36:31: Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached INFO - 08:36:31: Number of calls to the objective function by the optimizer: 16 INFO - 08:36:31: Solution: WARNING - 08:36:31: The solution is not feasible. INFO - 08:36:31: Objective: -4267.910320106269 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 0.12708333333392363 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.007220) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.266666666489645 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1824.40 it/sec, obj=-4.27e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 381.32 it/sec, obj=-4.27e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 414.16 it/sec, obj=-4.27e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 533.73 it/sec, obj=-4.27e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 5 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4270.047650046897 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = 1.5540514652911952e-08 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 1.764999997412866 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.010854) *** INFO - 08:36:31: 29%|██▊ | 2/7 [00:00<00:00, 32.33 it/sec, obj=-4.27e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1512.01 it/sec, obj=-4.53e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 419.51 it/sec, obj=-3.83e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 597.88 it/sec, obj=-4.43e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 639.23 it/sec, obj=-4.5e+3] INFO - 08:36:31: 50%|█████ | 5/10 [00:00<00:00, 658.32 it/sec, obj=-4.51e+3] INFO - 08:36:31: 60%|██████ | 6/10 [00:00<00:00, 677.23 it/sec, obj=-4.52e+3] INFO - 08:36:31: 70%|███████ | 7/10 [00:00<00:00, 691.72 it/sec, obj=-4.52e+3] INFO - 08:36:31: 80%|████████ | 8/10 [00:00<00:00, 699.62 it/sec, obj=-4.52e+3] INFO - 08:36:31: 90%|█████████ | 9/10 [00:00<00:00, 709.03 it/sec, obj=-4.53e+3] INFO - 08:36:31: 100%|██████████| 10/10 [00:00<00:00, 716.55 it/sec, obj=-4.53e+3] WARNING - 08:36:31: Optimization found no feasible point; the least infeasible point is selected. INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: Maximum number of iterations reached. GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 12 INFO - 08:36:31: Solution: WARNING - 08:36:31: The solution is not feasible. INFO - 08:36:31: Objective: -3831.807218275781 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = -0.0023374064594913757 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 25 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.018177) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 1.764999997412866 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1251.66 it/sec, obj=-3.82e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 372.73 it/sec, obj=-3.82e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 414.01 it/sec, obj=-3.82e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 4 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -3818.5902856031416 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = 2.8144597763457568e-11 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.414591822896584 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.010139) *** INFO - 08:36:31: 43%|████▎ | 3/7 [00:00<00:00, 29.19 it/sec, obj=-3.82e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 25 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1516.93 it/sec, obj=-3.82e+3] WARNING - 08:36:31: Optimization found no feasible point; the least infeasible point is selected. INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 322.50 it/sec, obj=-4.49e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: 5 INFO - 08:36:31: Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached INFO - 08:36:31: Number of calls to the objective function by the optimizer: 16 INFO - 08:36:31: Solution: WARNING - 08:36:31: The solution is not feasible. INFO - 08:36:31: Objective: -4490.54017449428 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 0.00918103190482844 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.009193) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.414591822896584 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1223.90 it/sec, obj=-4.5e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 403.09 it/sec, obj=-4.5e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 3 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4503.594576633829 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = 1.1323209037072957e-10 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.256301558340416 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.007852) *** INFO - 08:36:31: 57%|█████▋ | 4/7 [00:00<00:00, 30.45 it/sec, obj=-4.51e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1278.36 it/sec, obj=-4.51e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 391.66 it/sec, obj=-3.85e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 559.94 it/sec, obj=-4.48e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 564.57 it/sec, obj=-4.51e+3] INFO - 08:36:31: 50%|█████ | 5/10 [00:00<00:00, 573.18 it/sec, obj=-4.51e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 60%|██████ | 6/10 [00:00<00:00, 464.41 it/sec, obj=-3.85e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 8 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -3854.0819929120544 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 0.0 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 24.3567703351527 | 25 | float | INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.015879) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.256301558340416 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1252.40 it/sec, obj=-3.84e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 410.40 it/sec, obj=-3.84e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 3 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -3843.382025541499 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = -1.1290524071227992e-10 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.303233590674794 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.007817) *** INFO - 08:36:31: 71%|███████▏ | 5/7 [00:00<00:00, 30.00 it/sec, obj=-3.85e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 24.3567703351527 | 25 | float | INFO - 08:36:31: +----------------+-------------+------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1513.10 it/sec, obj=-3.85e+3] WARNING - 08:36:31: Optimization found no feasible point; the least infeasible point is selected. INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 323.63 it/sec, obj=-4.49e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: 5 INFO - 08:36:31: Message: NLOPT_MAXEVAL_REACHED: Optimization stopped because maxeval (above) was reached INFO - 08:36:31: Number of calls to the objective function by the optimizer: 16 INFO - 08:36:31: Solution: WARNING - 08:36:31: The solution is not feasible. INFO - 08:36:31: Objective: -4492.38920700084 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 0.00858587320790527 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.009178) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.303233590674794 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1138.21 it/sec, obj=-4.5e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 367.21 it/sec, obj=-4.5e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 407.33 it/sec, obj=-4.5e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 525.17 it/sec, obj=-4.5e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: Successive iterates of the objective function are closer than ftol_rel or ftol_abs. GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 5 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4504.850158478924 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = 5.3804996014150674e-09 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.264536834765667 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.011248) *** INFO - 08:36:31: 86%|████████▌ | 6/7 [00:00<00:00, 30.06 it/sec, obj=-4.51e+3] INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Aerodynamics Mission INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_airfoils) INFO - 08:36:31: with respect to thick_airfoils INFO - 08:36:31: subject to constraints: INFO - 08:36:31: lift(thick_airfoils) == 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1512.01 it/sec, obj=-4.51e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 415.42 it/sec, obj=-4.48e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 592.05 it/sec, obj=-4.51e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 592.63 it/sec, obj=-4.51e+3] INFO - 08:36:31: 50%|█████ | 5/10 [00:00<00:00, 595.39 it/sec, obj=-4.51e+3] ERROR - 08:36:31: NLopt run failed: NLopt roundoff-limited, RoundoffLimited Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/gemseo/algos/opt/nlopt/nlopt.py", line 384, in _run nlopt_problem.optimize(x_0.real) File "/home/docs/checkouts/readthedocs.org/user_builds/gemseo/envs/stable/lib/python3.9/site-packages/nlopt/nlopt.py", line 335, in optimize return _nlopt.opt_optimize(self, *args) nlopt.RoundoffLimited: NLopt roundoff-limited INFO - 08:36:31: 60%|██████ | 6/10 [00:00<00:00, 456.78 it/sec, obj=-4.48e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 8 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4509.519641910682 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = -0.0001369125207841826 INFO - 08:36:31: Design space: INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: | thick_airfoils | 5 | 5 | 25 | float | INFO - 08:36:31: +----------------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.016110) *** INFO - 08:36:31: INFO - 08:36:31: *** Start MDOScenario execution *** INFO - 08:36:31: MDOScenario INFO - 08:36:31: Disciplines: Mission Structure INFO - 08:36:31: MDO formulation: DisciplinaryOpt INFO - 08:36:31: Optimization problem: INFO - 08:36:31: minimize -range(thick_panels) INFO - 08:36:31: with respect to thick_panels INFO - 08:36:31: subject to constraints: INFO - 08:36:31: reserve_fact(thick_panels) <= 0.5 INFO - 08:36:31: over the design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.264536834765667 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: Solving optimization problem with algorithm NLOPT_SLSQP: INFO - 08:36:31: 10%|█ | 1/10 [00:00<00:00, 1342.18 it/sec, obj=-4.51e+3] INFO - 08:36:31: 20%|██ | 2/10 [00:00<00:00, 376.75 it/sec, obj=-4.51e+3] INFO - 08:36:31: 30%|███ | 3/10 [00:00<00:00, 393.19 it/sec, obj=-4.51e+3] INFO - 08:36:31: 40%|████ | 4/10 [00:00<00:00, 474.11 it/sec, obj=Not evaluated] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: Successive iterates of the design variables are closer than xtol_rel or xtol_abs. GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 4 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4509.583287345491 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [reserve_fact-0.5] = -2.105693397425057e-10 INFO - 08:36:31: Design space: INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: | thick_panels | 1 | 3.225021426834291 | 20 | float | INFO - 08:36:31: +--------------+-------------+-------------------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.011317) *** INFO - 08:36:31: 100%|██████████| 7/7 [00:00<00:00, 29.13 it/sec, obj=-4.51e+3] INFO - 08:36:31: Optimization result: INFO - 08:36:31: Optimizer info: INFO - 08:36:31: Status: None INFO - 08:36:31: Message: Maximum number of iterations reached. GEMSEO stopped the driver. INFO - 08:36:31: Number of calls to the objective function by the optimizer: 9 INFO - 08:36:31: Solution: INFO - 08:36:31: The solution is feasible. INFO - 08:36:31: Objective: -4509.243708600623 INFO - 08:36:31: Standardized constraints: INFO - 08:36:31: [lift-0.5] = 5.903055821931957e-13 INFO - 08:36:31: [reserve_fact-0.5] = -0.2599999989201578 INFO - 08:36:31: Design space: INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: | Name | Lower bound | Value | Upper bound | Type | INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: | sweep | 10 | 25 | 35 | float | INFO - 08:36:31: +-------+-------------+-------+-------------+-------+ INFO - 08:36:31: *** End MDOScenario execution (time: 0:00:00.245404) *** .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 3.154 seconds) .. _sphx_glr_download_examples_mdo_plot_aerostructure.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_aerostructure.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_aerostructure.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_aerostructure.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_