.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples/doe/plot_doe_from_file.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_doe_plot_doe_from_file.py: Use a design of experiments from a file ======================================= .. GENERATED FROM PYTHON SOURCE LINES 24-28 .. code-block:: default from gemseo.api import create_design_space from gemseo.api import create_discipline from gemseo.api import create_scenario .. GENERATED FROM PYTHON SOURCE LINES 29-30 Let us consider a discipline implementing the function :math:`y=a*b` .. GENERATED FROM PYTHON SOURCE LINES 30-32 .. code-block:: default discipline = create_discipline("AnalyticDiscipline", expressions={"y": "a*b"}) .. GENERATED FROM PYTHON SOURCE LINES 33-34 where :math:`a,b\in\{1,2,\ldots,10\}`: .. GENERATED FROM PYTHON SOURCE LINES 34-38 .. code-block:: default design_space = create_design_space() design_space.add_variable("a", 1, design_space.INTEGER, 1, 10) design_space.add_variable("b", 1, design_space.INTEGER, 1, 10) .. GENERATED FROM PYTHON SOURCE LINES 39-41 We want to evaluate this discipline over this design space by using the input samples defined in the file "doe.txt": .. GENERATED FROM PYTHON SOURCE LINES 41-44 .. code-block:: default f = open("doe.txt") print(f.read()) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none 1,2 3,4 5,6 .. GENERATED FROM PYTHON SOURCE LINES 45-50 In this file, rows are points and columns are variables whose order must be consistent with that of the design space. In this example, we can see that the first input value is defined by :math:`a=1` and :math:`b=2`. .. GENERATED FROM PYTHON SOURCE LINES 52-55 For that, we can create a scenario and execute it with a :class:`.CustomDOE`, with the option "doe_file". We could also change the delimiter (default: ',') or skip the first rows in the file. .. GENERATED FROM PYTHON SOURCE LINES 55-60 .. code-block:: default scenario = create_scenario( [discipline], "DisciplinaryOpt", "y", design_space, scenario_type="DOE" ) scenario.execute({"algo": "CustomDOE", "algo_options": {"doe_file": "doe.txt"}}) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none {'eval_jac': False, 'algo': 'CustomDOE', 'algo_options': {'doe_file': 'doe.txt'}} .. GENERATED FROM PYTHON SOURCE LINES 61-64 We can display the content of the database as a dataframe and check the values of the output, which should be the product of :math:`a` and :math:`b`. .. GENERATED FROM PYTHON SOURCE LINES 64-67 .. code-block:: default opt_problem = scenario.formulation.opt_problem dataset = opt_problem.export_to_dataset(name="custom_sampling", opt_naming=False) print(dataset.export_to_dataframe()) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none inputs outputs a b y 0 0 0 0 1.0 2.0 2.0 1 3.0 4.0 12.0 2 5.0 6.0 30.0 .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.038 seconds) .. _sphx_glr_download_examples_doe_plot_doe_from_file.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_doe_from_file.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_doe_from_file.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_