.. 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 26-30 .. code-block:: default from __future__ import division, unicode_literals from gemseo.api import create_design_space, create_discipline, create_scenario .. GENERATED FROM PYTHON SOURCE LINES 31-32 Let us consider a discipline implementing the function :math:`y=a+b` .. GENERATED FROM PYTHON SOURCE LINES 32-34 .. code-block:: default discipline = create_discipline("AnalyticDiscipline", expressions_dict={"y": "a*b"}) .. GENERATED FROM PYTHON SOURCE LINES 35-36 where :math:`a,b\in\{1,2,\ldots,10\}`: .. GENERATED FROM PYTHON SOURCE LINES 36-40 .. 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 41-43 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 43-46 .. code-block:: default f = open("doe.txt", "r") print(f.read()) .. rst-class:: sphx-glr-script-out Out: .. code-block:: none 1,2 3,4 5,6 .. GENERATED FROM PYTHON SOURCE LINES 47-52 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 54-57 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 57-62 .. 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 63-66 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 66-69 .. 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.047 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 `_