Skip to content

Commit

Permalink
adjusted examples to new top lvl api
Browse files Browse the repository at this point in the history
  • Loading branch information
marvin-steinke committed May 22, 2024
1 parent b35cecf commit 6360208
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 47 deletions.
21 changes: 8 additions & 13 deletions examples/basic_example.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,7 @@
"metadata": {},
"outputs": [],
"source": [
"from vessim.actor import ComputingSystem, Generator\n",
"from vessim.controller import Monitor\n",
"from vessim.cosim import Environment\n",
"from vessim.power_meter import MockPowerMeter\n",
"from vessim.signal import HistoricalSignal\n",
"from vessim.storage import SimpleBattery\n",
"import vessim as vs\n",
"\n",
"# Hotfix to execute asyncio in Jupyter\n",
"import nest_asyncio\n",
Expand Down Expand Up @@ -60,19 +55,19 @@
}
],
"source": [
"environment = Environment(sim_start=\"2022-06-09 00:00:00\")\n",
"environment = vs.Environment(sim_start=\"2022-06-09 00:00:00\")\n",
"\n",
"monitor = Monitor() # stores simulation result on each step\n",
"monitor = vs.Monitor() # stores simulation result on each step\n",
"environment.add_microgrid(\n",
" actors=[\n",
" ComputingSystem(power_meters=[MockPowerMeter(p=200), MockPowerMeter(p=250)], pue=1.6),\n",
" Generator(\n",
" signal=HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 5000}),\n",
" vs.ComputingSystem(power_meters=[vs.MockPowerMeter(p=200), vs.MockPowerMeter(p=250)], pue=1.6),\n",
" vs.Generator(\n",
" signal=vs.HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 5000}),\n",
" column=\"Berlin\",\n",
" ),\n",
" ],\n",
" controllers=[monitor],\n",
" storage=SimpleBattery(capacity=100 * 3600, charge_level=80 * 3600),\n",
" storage=vs.SimpleBattery(capacity=100 * 3600, charge_level=80 * 3600),\n",
" step_size=60, # global step size (can be overridden by actors or controllers)\n",
")\n",
"\n",
Expand Down Expand Up @@ -147,7 +142,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.2"
"version": "3.12.3"
}
},
"nbformat": 4,
Expand Down
29 changes: 12 additions & 17 deletions examples/controller_example.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,7 @@
"outputs": [],
"source": [
"from __future__ import annotations\n",
"from vessim.actor import ComputingSystem, Generator\n",
"from vessim.controller import Controller, Monitor\n",
"from vessim.cosim import Environment\n",
"from vessim.power_meter import MockPowerMeter\n",
"from vessim.signal import HistoricalSignal\n",
"from vessim.storage import SimpleBattery\n",
"import vessim as vs\n",
"\n",
"# Hotfix to execute asyncio in Jupyter\n",
"import nest_asyncio\n",
Expand All @@ -49,8 +44,8 @@
"metadata": {},
"outputs": [],
"source": [
"class SimpleLoadBalancingController(Controller):\n",
" def __init__(self, power_meters: list[MockPowerMeter]):\n",
"class SimpleLoadBalancingController(vs.Controller):\n",
" def __init__(self, power_meters: list[vs.MockPowerMeter]):\n",
" super().__init__()\n",
" self.power_meters = power_meters\n",
" # save original meter power consumption\n",
Expand Down Expand Up @@ -95,23 +90,23 @@
}
],
"source": [
"environment = Environment(sim_start=\"2022-06-09 00:00:00\")\n",
"environment = vs.Environment(sim_start=\"2022-06-09 00:00:00\")\n",
"\n",
"power_meters: list = [\n",
" MockPowerMeter(p=200),\n",
" MockPowerMeter(p=250),\n",
" vs.MockPowerMeter(p=200),\n",
" vs.MockPowerMeter(p=250),\n",
"]\n",
"monitor = Monitor() # Stores simulation result on each step\n",
"monitor = vs.Monitor() # Stores simulation result on each step\n",
"load_balancer = SimpleLoadBalancingController(power_meters=power_meters)\n",
"environment.add_microgrid(\n",
" actors=[\n",
" ComputingSystem(power_meters=power_meters, pue=1.6),\n",
" Generator(\n",
" signal=HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 5000}),\n",
" vs.ComputingSystem(power_meters=power_meters, pue=1.6),\n",
" vs.Generator(\n",
" signal=vs.HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 5000}),\n",
" column=\"Berlin\",\n",
" ),\n",
" ],\n",
" storage=SimpleBattery(capacity=100 * 3600, charge_level=80 * 3600),\n",
" storage=vs.SimpleBattery(capacity=100 * 3600, charge_level=80 * 3600),\n",
" controllers=[monitor, load_balancer],\n",
" step_size=60, # Global step size (can be overridden by actors or controllers)\n",
")\n",
Expand Down Expand Up @@ -183,7 +178,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.2"
"version": "3.12.3"
}
},
"nbformat": 4,
Expand Down
8 changes: 4 additions & 4 deletions examples/signal_example.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
"outputs": [],
"source": [
"import pandas as pd\n",
"from vessim.signal import HistoricalSignal"
"import vessim as vs"
]
},
{
Expand All @@ -47,7 +47,7 @@
" [\"2020-01-01T01:00:00\", 105, 398],\n",
"], columns=[\"timestamp\", \"solar\", \"wind\"])\n",
"actual = actual.set_index([\"timestamp\"])\n",
"signal = HistoricalSignal(actual)"
"signal = vs.HistoricalSignal(actual)"
]
},
{
Expand Down Expand Up @@ -92,7 +92,7 @@
" [\"2020-01-01T01:00:00\", \"2020-01-01T02:00:00\", 88, 398],\n",
"], columns=[\"req_time\", \"forecast_time\", \"solar\", \"wind\"])\n",
"forecast = forecast.set_index([\"req_time\", \"forecast_time\"])\n",
"signal = HistoricalSignal(actual, forecast)"
"signal = vs.HistoricalSignal(actual, forecast)"
]
},
{
Expand Down Expand Up @@ -156,7 +156,7 @@
}
],
"source": [
"dataset_signal = HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 2.0, \"start_time\":\"2020-06-12T00:00:00\"})\n",
"dataset_signal = vs.HistoricalSignal.from_dataset(\"solcast2022_global\", params={\"scale\": 2.0, \"start_time\":\"2020-06-12T00:00:00\"})\n",
"dataset_signal.at(\"2020-06-27T13:46:53\", column=\"Berlin\")"
]
},
Expand Down
20 changes: 7 additions & 13 deletions examples/sil_example.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,7 @@
"import time\n",
"import requests\n",
"\n",
"from vessim.actor import ComputingSystem, Generator\n",
"from vessim.controller import Monitor\n",
"from vessim.cosim import Environment, Microgrid\n",
"from vessim.power_meter import PowerMeter\n",
"from vessim.signal import Signal, HistoricalSignal\n",
"from vessim.sil import SilController, Broker, get_latest_event\n",
"from vessim.storage import SimpleBattery\n",
"import vessim as vs\n",
"\n",
"# Jupyter async bug fix\n",
"import nest_asyncio\n",
Expand All @@ -71,8 +65,8 @@
"source": [
"def api_routes(\n",
" app: FastAPI,\n",
" broker: Broker,\n",
" grid_signals: dict[str, Signal],\n",
" broker: vs.Broker,\n",
" grid_signals: dict[str, vs.Signal],\n",
"):\n",
" @app.put(\"/battery/min-soc\")\n",
" async def put_battery_min_soc(min_soc: float):\n",
Expand Down Expand Up @@ -115,8 +109,8 @@
"source": [
"def battery_min_soc_collector(events: dict, microgrid: Microgrid, **kwargs):\n",
" print(f\"Received battery.min_soc events: {events}\")\n",
" assert isinstance(microgrid.storage, SimpleBattery)\n",
" microgrid.storage.min_soc = get_latest_event(events)"
" assert isinstance(microgrid.storage, vs.SimpleBattery)\n",
" microgrid.storage.min_soc = vs.get_latest_event(events)"
]
},
{
Expand All @@ -137,7 +131,7 @@
"metadata": {},
"outputs": [],
"source": [
"class HttpPowerMeter(PowerMeter):\n",
"class HttpPowerMeter(vs.PowerMeter):\n",
" def __init__(\n",
" self,\n",
" name: str,\n",
Expand Down Expand Up @@ -274,7 +268,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.12"
"version": "3.12.3"
}
},
"nbformat": 4,
Expand Down

0 comments on commit 6360208

Please sign in to comment.