1"""
2Created on 27 Jul. 2011
3
4This file illustrated the use the EMA classes for a model in Excel.
5
6It used the excel file provided by
7`A. Sharov <https://home.comcast.net/~sharov/PopEcol/lec10/fullmod.html>`_
8
9This excel file implements a simple predator prey model.
10
11.. codeauthor:: jhkwakkel <j.h.kwakkel (at) tudelft (dot) nl>
12"""
13
14from ema_workbench import RealParameter, TimeSeriesOutcome, ema_logging, perform_experiments
15
16from ema_workbench.connectors.excel import ExcelModel
17from ema_workbench.em_framework.evaluators import MultiprocessingEvaluator
18
19if __name__ == "__main__":
20 ema_logging.log_to_stderr(level=ema_logging.INFO)
21
22 model = ExcelModel("predatorPrey", wd="./models/excelModel", model_file="excel example.xlsx")
23 model.uncertainties = [
24 RealParameter("K2", 0.01, 0.2),
25 # we can refer to a cell in the normal way
26 # we can also use named cells
27 RealParameter("KKK", 450, 550),
28 RealParameter("rP", 0.05, 0.15),
29 RealParameter("aaa", 0.00001, 0.25),
30 RealParameter("tH", 0.45, 0.55),
31 RealParameter("kk", 0.1, 0.3),
32 ]
33
34 # specification of the outcomes
35 model.outcomes = [
36 TimeSeriesOutcome("B4:B1076"),
37 # we can refer to a range in the normal way
38 TimeSeriesOutcome("P_t"),
39 ] # we can also use named range
40
41 # name of the sheet
42 model.default_sheet = "Sheet1"
43
44 with MultiprocessingEvaluator(model) as evaluator:
45 results = perform_experiments(model, 100, reporting_interval=1, evaluator=evaluator)