eGo

scenario_settings.json

With the scenario_settings.json file you set up your calcualtion. The file can be found on github.

scenario_setting.json

This file contains all input settings for the eGo tool.

Object Properties:
 
  • global (global) – Global (superordinate) settings that are valid for both, eTraGo and eDisGo.
  • eTraGo (eTraGo) – eTraGo settings, only valid for eTraGo runs.
  • eDisGo (eDisGo) – eDisGo settings, only valid for eDisGo runs.
global
Object Properties:
 
  • eTraGo (bool) – Decide if you want to run the eTraGo tool (HV/EHV grid optimization).
  • eDisGo (bool) – Decide if you want to run the eDisGo tool (MV grid optimiztaion). Please note: eDisGo requires eTraGo= true.
  • csv_import_eTraGo (string) – false or path to previously calculated eTraGo results (in order to reload the results instead of performing a new run).
  • csv_import_eDisGo (string) – false or path to previously calculated eDisGo results (in order to reload the results instead of performing a new run).
eTraGo

This section of scenario_setting.json contains all input parameters for the eTraGo tool. A description of the parameters can be found here.

eDisGo

This section of scenario_setting.json contains all input parameters for the eDisGo tool and the clustering of MV grids.

Object Properties:
 
  • db (string) – Name of your database (e.g.``’‘oedb’‘``). eDisGo queries generator data from this database. Please note that this parameters is automatically overwritten in eDisGo’s configuration files.
  • gridversion (string) – null or open_eGo dataset version (e.g. ''v0.4.5''). If null, open_eGo’s model_draft is used. Please note that this parameters is automatically overwritten in eDisGo’s configuration files.
  • ding0_files (string) – Path to the MV grid files (created by ding0) (e.g. ''data/MV_grids/20180713110719'')
  • choice_mode (string) – Mode that eGo uses to chose MV grids out of the files in ding0_files (e.g. ''manual'', ''cluster'' or ''all''). If ''manual'' is chosen, the parameter manual_grids must contain a list of the desired grids. If ''cluster'' is chosen, no_grids must specify the desired number of clusters and cluster_attributes must specify the applied cluster attributes. If ''all'' is chosen, all MV grids from ding0_files are calculated.
  • cluster_attributes (list) – List of strings containing the desired cluster attributes. Available attributes are: ''farthest_node'', ''wind_cap'', ''solar_cap'' and ''extended_storage'', thus an exemplary list looks like ["farthest_node", "wind_cap", "solar_cap", "extended_storage"]. ''farthest_node'' represents the longest path within each grid, ''wind_cap'' the installed wind capacity within each grid, ''solar_cap'' the installed solar capacity within each grid and ''extended_storage'' the installed storage units (as calculated by eTraGo). Please note that ''extended_storage'' is only available in combination with eTraGo datasets that optimized storage extension. Otherwise this attribute is ignored.
  • only_cluster (bool) – If true, eGo only identifies cluster results, but performs no eDisGo run. Please note that for only_cluster an eTraGo run or dataset must be provided.
  • manual_grids (list) – List of MV grid ID’s (open_eGo HV/MV substation ID’s) is case of choice_mode = ''manual'' (e.g. [1718,1719]). Ohterwise this parameter is ignored.
  • no_grids (int) – Number of MV grid clusters (from all files in ding0_files, a specified number of representative clusters is calculated) in case of choice_mode = ''cluster''. Otherwise this parameter is ignored.
  • parallelization (bool) – If false, eDisgo is used in a consecutive way (this may take very long time). In order to increase the performance of MV grid simulations, true allows the parallel calculation of MV grids. If parallelization = true, max_calc_time and max_workers must be specified.
  • max_calc_time (float) – Maximum calculation time in hours for eDisGo simulations. The calculation is terminated after this time and all costs are extrapolated based on the unfinished simulation. Please note that this parameter is only used if parallelization = true.
  • max_workers (ing) – Number of workers (cpus) that are allocated to the simulation. If the given value exceeds the number of available workers, it is reduced to the number of available workers. Please note that this parameter is only used if parallelization = true.
  • initial_reinforcement (bool) – This parameter must be set true.
  • apply_curtailment (bool) – If true, eDisGo applies and optimizes the curtailment (as calculated by eTraGo) within each MV grid.
  • curtailment_voltage_threshold (float) – p.u. overvoltage limit (e.g. 0.05). If this p.u. overvoltage is exceeded at any bus, curtailment is applied.
  • storage_distribution (bool) – If true, eDisGo attempts to integrate battery storages (as calculated by eTraGo) into MV grids in order to reduce grid reinforcement.
  • max_cos_phi_renewable (float) – Maximum power factor for wind and solar generators in MV grids (e.g. 0.9). If the reactive power (as calculated by eTraGo) exceeds this power factor, the reactive power is reduced in order to reach the power factor conditions.
  • solver (string) – Solver eDisGo uses to optimize the curtailment and storage integration (e.g. ''gurobi'').
  • timesteps_pfa (string) – Method eDisGo uses for the storage integration (e.g. ''snapshot_analysis'').
  • results (string) – Path to folder where eDisGo’s results will be saved.

appl.py

This is the application file for the tool eGo. The application eGo calculates the distribution and transmission grids of eTraGo and eDisGo.

Note

Note, the data source of eGo relies on the Open Energy Database. - The registration for the public accessible API can be found on openenergy-platform.org/login.

Run the appl.py file with:

>>> python3 -i appl.py
>>> ...
>>> INFO:ego:Start calculation
>>> ...

The eGo application works like:

>>> from ego.tools.io import eGo
>>> ego = eGo(jsonpath='scenario_setting.json')
>>> ego.etrago_line_loading()
>>> print(ego.etrago.storage_costs)
>>> ...
>>> INFO:ego:Start calculation
>>> ...