Skip to content
Snippets Groups Projects
Commit a301f67d authored by Stefano Borini's avatar Stefano Borini
Browse files

Merge branch 'master' into move-parameters-to-mco

parents 3f401862 eb61bec5
No related branches found
No related tags found
1 merge request!60Moved parameters into MCO
Showing
with 95 additions and 227 deletions
......@@ -2,4 +2,4 @@ __pycache__
*.egg-info
doc/build/
*.pyc
force_bdss/version.py
class DataSource():
"""Base class that performs calculation or extraction of information
"""
__metaclass__ = abc.ABCMeta
def __init__(self, name):
self.name = name
@abstractclassmethod
def provides(cls):
return [CUBA.key]
def execute(self, parameters):
"""Performs the evaluation and returns a list of Result.
"""
class Simulator(DataSource):
pass
class Database(DataSource):
pass
# Represents the result of a simulator.
# It contains the resulting cuba key, the associated uncertainty and the
# originating simulator.
# Difference between uncertainty and quality: uncertainty is a numerical value
# of the value, as in the case of an experimental simulation.
# quality is the level of accuracy of the (e.g.c omputational) method, as
# the importance and reliability of that value. It should be an enumeration
# value such as HIGH, MEDIUM, POOR
Result = namedtuple("Result", "cuba_key value uncertainty originator quality")
class KPICalculator():
"""Base class that defines the equaation to compute the KPIs values from
the results of the simulators
input: a list of SimulatorResult
output: a list of KPIs.
"""
__metaclass__ = abc.ABCMeta
def execute(self, datasource_results)
"""Returns the KPIResult"""
KPIResult = namedtuple("KPIResult", "name cuba_key value uncertainty quality")
from force_bdss import *
wf=Workflow()
wf.set_mco(Dakota())
wf.set_datasources([
ViscositySimulator(),
CostExtractor(),
])
wf.objectives([
Objective(),
Objective()
])
wf.set_parameters({
"material_1": {
CUBA.FORMULA: "H2O",
CUBA.CONCENTRATION: Range(0, 100)
},
"material_2": {
CUBA.FORMULA: "glycol",
CUBA.CONCENTRATION: Formula("material_1",
lambda material_1: 100 - material_1[CUBA.CONCENTRATION])
}
})
wf.set_result_callback(callback)
# constraints vs computed value
# e.g. constraint = value from 0 to 100
# computed value = 100 - other value
# TODO: Study dakota better to understand how it works and what kind of
# interface it expects
pareto_front = wf.execute()
plot(pareto_front)
class MCO():
"""Receives a list of KPIResult to decide the next step in the parameter
space"""
__metaclass__ = abc.ABCMeta
starting_point
variable_constraints
objectives
def get_next_parameters(kpi_results):
pass
class Dakota(MCO):
def __init__(self, options):
pass
class DakotaInput():
"""Read the parameters from the dakota input file and returns
the parameters for further consumption"""
def parse(filename):
"""Returns the parameters"""
class DakotaOutput():
"""Writes the KPIs to the file for consumption by Dakota"""
# This is a prototype for the Workflow in FORCE
import abc
class Workflow():
# calculates the KPIs from the list of the cuba keys coming from the
# simulators
mco = None
data_sources = None
class ViscosityCalculator(Simulator):
pass
class CostExtractor(Database):
provides_kpi = []
class Objective()
kpi = None
optimization_type = MAXIMIZE
force\_bdss\.cli package
========================
force_bdss.cli package
======================
Subpackages
-----------
......@@ -11,8 +11,8 @@ Subpackages
Submodules
----------
force\_bdss\.cli\.force\_bdss module
------------------------------------
force_bdss.cli.force_bdss module
--------------------------------
.. automodule:: force_bdss.cli.force_bdss
:members:
......
force\_bdss\.cli\.tests package
===============================
force_bdss.cli.tests package
============================
Submodules
----------
force\_bdss\.cli\.tests\.test\_execution module
-----------------------------------------------
force_bdss.cli.tests.test_execution module
------------------------------------------
.. automodule:: force_bdss.cli.tests.test_execution
:members:
......
force\_bdss\.core\_plugins\.dummy\.csv\_extractor package
=========================================================
force_bdss.core_plugins.dummy.csv_extractor package
===================================================
Subpackages
-----------
......@@ -11,24 +11,24 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.csv\_extractor\_bundle module
--------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_bundle module
-----------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.csv\_extractor\_data\_source module
--------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_data_source module
----------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_data_source
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.csv\_extractor\_model module
-------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_model module
----------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_model
:members:
......
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.tests package
================================================================
force_bdss.core_plugins.dummy.csv_extractor.tests package
=========================================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.tests\.test\_csv\_extractor\_bundle module
---------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.csv_extractor.tests.test_csv_extractor_bundle module
----------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.csv_extractor.tests.test_csv_extractor_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.csv\_extractor\.tests\.test\_csv\_extractor\_data\_source module
---------------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.csv_extractor.tests.test_csv_extractor_data_source module
---------------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.csv_extractor.tests.test_csv_extractor_data_source
:members:
......
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota package
========================================================
force_bdss.core_plugins.dummy.dummy_dakota package
==================================================
Subpackages
-----------
......@@ -11,32 +11,32 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.dakota\_bundle module
-----------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.dakota_bundle module
---------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.dakota_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.dakota\_communicator module
-----------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.dakota_communicator module
---------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.dakota_communicator
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.dakota\_model module
----------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.dakota_model module
--------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.dakota_model
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.dakota\_optimizer module
--------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.dakota_optimizer module
------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.dakota_optimizer
:members:
......
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.tests package
===============================================================
force_bdss.core_plugins.dummy.dummy_dakota.tests package
========================================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.tests\.test\_dakota\_bundle module
------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_bundle module
--------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_dakota\.tests\.test\_dakota\_communicator module
------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_communicator module
--------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_communicator
:members:
:undoc-members:
:show-inheritance:
force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_optimizer module
-----------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_dakota.tests.test_dakota_optimizer
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
......
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source package
==============================================================
force_bdss.core_plugins.dummy.dummy_data_source package
=======================================================
Subpackages
-----------
......@@ -11,24 +11,24 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.dummy\_data\_source module
----------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source module
------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.dummy\_data\_source\_bundle module
------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source_bundle module
-------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.dummy\_data\_source\_model module
-----------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source_model module
------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_data_source.dummy_data_source_model
:members:
......
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.tests package
=====================================================================
force_bdss.core_plugins.dummy.dummy_data_source.tests package
=============================================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.tests\.test\_dummy\_data\_source module
-----------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_data_source.tests.test_dummy_data_source module
-----------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_data_source.tests.test_dummy_data_source
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_data\_source\.tests\.test\_dummy\_data\_source\_bundle module
-------------------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_data_source.tests.test_dummy_data_source_bundle module
------------------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_data_source.tests.test_dummy_data_source_bundle
:members:
......
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator package
=================================================================
force_bdss.core_plugins.dummy.dummy_kpi_calculator package
==========================================================
Subpackages
-----------
......@@ -11,24 +11,24 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator\.dummy\_kpi\_calculator module
----------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator module
------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator\.dummy\_kpi\_calculator\_bundle module
------------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator_bundle module
-------------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator\.dummy\_kpi\_calculator\_model module
-----------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator_model module
------------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_kpi_calculator.dummy_kpi_calculator_model
:members:
......
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator\.tests package
========================================================================
force_bdss.core_plugins.dummy.dummy_kpi_calculator.tests package
================================================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_kpi\_calculator\.tests\.test\_dummy\_kpi\_calculator\_bundle module
-------------------------------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_kpi_calculator.tests.test_dummy_kpi_calculator_bundle module
------------------------------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_kpi_calculator.tests.test_dummy_kpi_calculator_bundle
:members:
......
force\_bdss\.core\_plugins\.dummy\.kpi\_adder package
=====================================================
force_bdss.core_plugins.dummy.kpi_adder package
===============================================
Subpackages
-----------
......@@ -11,24 +11,24 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.kpi\_adder\.kpi\_adder\_bundle module
------------------------------------------------------------------------
force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_bundle module
---------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_bundle
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.kpi\_adder\.kpi\_adder\_calculator module
----------------------------------------------------------------------------
force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_calculator module
-------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_calculator
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.kpi\_adder\.kpi\_adder\_model module
-----------------------------------------------------------------------
force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_model module
--------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.kpi_adder.kpi_adder_model
:members:
......
force\_bdss\.core\_plugins\.dummy\.kpi\_adder\.tests package
============================================================
force_bdss.core_plugins.dummy.kpi_adder.tests package
=====================================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.kpi\_adder\.tests\.test\_kpi\_adder\_bundle module
-------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.kpi_adder.tests.test_kpi_adder_bundle module
--------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.kpi_adder.tests.test_kpi_adder_bundle
:members:
......
force\_bdss\.core\_plugins\.dummy package
=========================================
force_bdss.core_plugins.dummy package
=====================================
Subpackages
-----------
......@@ -16,8 +16,8 @@ Subpackages
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.dummy\_plugin module
-------------------------------------------------------
force_bdss.core_plugins.dummy.dummy_plugin module
-------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.dummy_plugin
:members:
......
force\_bdss\.core\_plugins\.dummy\.tests package
================================================
force_bdss.core_plugins.dummy.tests package
===========================================
Submodules
----------
force\_bdss\.core\_plugins\.dummy\.tests\.data\_source\_bundle\_test\_mixin module
----------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.tests.data_source_bundle_test_mixin module
------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.tests.data_source_bundle_test_mixin
:members:
:undoc-members:
:show-inheritance:
force\_bdss\.core\_plugins\.dummy\.tests\.kpi\_calculator\_bundle\_test\_mixin module
-------------------------------------------------------------------------------------
force_bdss.core_plugins.dummy.tests.kpi_calculator_bundle_test_mixin module
---------------------------------------------------------------------------
.. automodule:: force_bdss.core_plugins.dummy.tests.kpi_calculator_bundle_test_mixin
:members:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment