Skip to content

Commit a95240c

Browse files
authored
Merge pull request #240 from openego/dev
Release 0.7.0
2 parents 7e53f95 + e144c98 commit a95240c

22 files changed

+2958
-676
lines changed

MANIFEST.in

+1
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@ include LICENSE
33
include MANIFEST.in
44
include etrago/tools/*.json
55
include *.txt
6+
include etrago/*.json

doc/about.rst

+75-8
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,17 @@
22
About eTraGo
33
============
44

5-
Optimization of flexibility options for transmission grids based on PyPSA.
5+
eTraGo stands for **e**\lectric **Tra**\nsmission **G**\rid **o**\ptimization.
66

7-
A speciality in this context is that transmission grids are described by the
8-
380, 220 and 110 kV in Germany. Conventionally the 110kV grid is part of the
9-
distribution grid. The integration of the transmission and 'upper' distribution
10-
grid is part of eTraGo.
7+
The python package eTraGo provides optimization strategies of flexibility options
8+
for transmission grids based on PyPSA. A peculiarity in this context is that
9+
the German transmission grid is described by the 380, 220 and 110 kV voltage levels.
10+
Conventionally the 110kV grid is part of the distribution grid. The integration of
11+
the transmission and ‘upper’ distribution grid is part of eTraGo.
1112

1213
The focus of optimization are flexibility options with a special focus on
13-
energy storages and grid expansion measures.
14+
energy storage and grid expansion measures.
15+
1416

1517

1618
The open_eGo project
@@ -21,11 +23,76 @@ This software project is part of the research project
2123

2224
The OpenEnergy Platform
2325
=======================
24-
With in this project we developted the OpenEnergy Platform which this software
26+
Within this project we developed the OpenEnergy Platform which this software
2527
is using in order to get and store the in- and output data. Before you start to
26-
calculate a registration on the platform is needed. For more see
28+
calculate a registration on the platform is needed. For more information see
2729
`openenergy-platform <https://openenergy-platform.org/>`_ and login.
2830

31+
The OpenEnergy platform mainly addresses students, researchers and scientists in
32+
the field of energy modelling and analytics as well as interested persons in
33+
those fields. The platform provides great tools to make your energy system
34+
modelling process transparent. All data of the open_eGo project are stored at
35+
this platform.
36+
`Learn more about the database access <https://oep-data-interface.readthedocs.io>`_.
37+
38+
39+
40+
41+
42+
Model overview
43+
==============
44+
45+
46+
47+
.. figure:: images/eTraGo_model.png
48+
:align: center
49+
:scale: 75%
50+
51+
52+
eDisGo
53+
======
54+
The python package eDisGo provides a toolbox for analysis and optimization
55+
of distribution grids. It is closely related to the python project Ding0 as this
56+
project is currently the single data source for eDisGo providing synthetic
57+
grid data for whole Germany. `Learn more here <http://edisgo.readthedocs.io/>`_.
58+
59+
60+
eGo
61+
===
62+
63+
The python package eGo is a toolbox and application which connects the tool eTraGo
64+
(optimization of flexibility options at transmission grid level)
65+
and eDisGo (optimization of distribution grids). All those python
66+
packages are part of the research project
67+
`open_eGo <https://openegoproject.wordpress.com>`_.
68+
`Learn more here <http://openego.readthedocs.io/>`_.
69+
70+
71+
Dataprocessing
72+
==============
73+
74+
For the open_eGo project several python packages are developed which are feeded
75+
by the input data of the data processing. The Dataprocessing is writen in
76+
SQL and Python. `Learn more here <https://data-processing.readthedocs.io/>`_.
77+
78+
ego.io
79+
======
80+
81+
The ego.io serves as a SQLAlchemy Interface to the OpenEnergy database (oedb). The
82+
oedb table ORM objects are defined here and small helpers for io tasks are contained.
83+
`Learn more here <https://github.com/openego/ego.io>`_.
84+
85+
86+
Dingo
87+
=====
88+
89+
The DIstribution Network GeneratOr (Ding0) is a tool to generate synthetic
90+
medium and low voltage power distribution grids based on open
91+
(or at least accessible) data.
92+
`Learn more here <https://dingo.readthedocs.io/>`_.
93+
94+
95+
2996

3097
LICENSE
3198
=======

doc/developer_notes.rst

+12-27
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,19 @@ Developer notes
77
Installation for Developers
88
===========================
99

10-
The best way is to use a virtual environment. see:
1110

12-
Step 2) Clone the source code from github
11+
.. note::
12+
Installation is primarly tested on (Ubuntu like) linux OS.
13+
14+
1. If you like, create a virtual environment (where you like it) and activate it (if you do not use venv start with 2.):
15+
16+
.. code-block:: bash
17+
18+
$ virtualenv --clear -p python3.5 etrago``
19+
$ cd etrago/
20+
$ source bin/activate
21+
22+
2. Clone the source code from github
1323

1424
.. code-block::
1525
@@ -25,28 +35,3 @@ With your activated environment `cd` to the cloned directory and run:
2535
This will install all needed packages into your environment.
2636
Now you should be ready to go.
2737

28-
29-
Windows or Mac OSX users
30-
************************
31-
32-
33-
34-
- download and install github (https://desktop.github.com)
35-
36-
- open GitHubDesktop and clone eTraGo from open_eGo
37-
38-
- open an anaconda prompt as administrator and run:
39-
40-
```
41-
pip install -e path/to/Github/Folder/eTraGo
42-
```
43-
44-
```
45-
pip install pandas == 0.20.3 (version 0.21 is not working!)
46-
```
47-
48-
- to check if everything is installed run:
49-
50-
```
51-
pip freeze
52-
```

doc/howToUse.rst

+20-21
Original file line numberDiff line numberDiff line change
@@ -3,30 +3,29 @@
33
How to use eTraGo?
44
==================
55

6-
After you installed eTraGo you can run eTraGo via terminal with
7-
``$ cd../<your path>/eTrago/etrago/`` and ``python3 appl.py``.
8-
The program will execute following functions:
6+
After you installed eTraGo you would typically start optimization runs by
7+
executing the ‘appl.py’ wich is situated in
8+
``./eTrago/etrago/`` (e.g by ``python3 appl.py``).
99

10-
.. code-block:: python
11-
12-
# execute etrago function
13-
network = etrago(args)
14-
# plots
15-
# make a line loading plot
16-
plot_line_loading(network)
17-
# plot stacked sum of nominal power for each generator type and timestep
18-
plot_stacked_gen(network, resolution="MW")
19-
# plot to show extendable storages
20-
storage_distribution(network)
10+
The ‘appl.py’ is used as a simple user interface. Here
11+
parameters, calculation methods and scenario settings are set in a python
12+
dictionary called 'args'. It is crucial to understand these parameters.
13+
For example some of them contradict the usage of others.
14+
You find the documentation of all defined parameters from the 'args' here:
15+
:meth:`etrago.appl.etrago`.
2116

17+
The appl.py contains the etrago(args) function which uses the
18+
defined 'args' dictionary to start the desired calculation.
2219

23-
Overview of setting arguments
24-
=============================
20+
Afterwards a PyPSA network will contain all results. You can use
21+
several plotting functions from the :meth:`etrago.tools.plot` in order
22+
to visualize the results. For example
23+
the :meth:`etrago.tools.plot.plot_line_loading` plots
24+
the relative line loading in % of all AC lines and DC links of the network.
2525

26-
The tool eTraGo is using a main python script ‘appl.py’ in which your
27-
parameters, calculation methods and scenario settings are set in a python
28-
dictionary called args. The documentation of the program settings can you
29-
find here: :meth:`etrago.appl.etrago`.
26+
To save the results you can use an interface to the oedb or write them
27+
simply to csv files. These functionalites can be specified
28+
also in :meth:`etrago.appl.etrago`.
3029

3130

3231
.. _Examples:
@@ -38,4 +37,4 @@ Examples and tutorial notebooks
3837
.. toctree::
3938
:maxdepth: 7
4039

41-
OpenMod <https://github.com/openego/eGo/blob/features/tutorial/ego/examples/tutorials/etrago_OpenMod_Zuerich18.ipynb>
40+
OpenMod <https://github.com/openego/eGo/blob/master/ego/examples/tutorials/etrago_OpenMod_Zuerich18.ipynb>

doc/images/eTraGo_model.png

130 KB
Loading

doc/index.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Welcome to eTraGo's documentation!
1515
heavy development.
1616

1717
.. toctree::
18-
:maxdepth: 7
18+
:maxdepth: 2
1919

2020
about
2121
installation

doc/installation.rst

+52-32
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
============
22
Installation
33
============
4-
If you have a working Python3 environment, use pypi to install the latest
5-
eTraGo version. We highly recommend you to use a virtual environment.
6-
Use following pip command in order to install eTraGo:
4+
eTraGo is designed as a Python package therefore it is mandatory to have
5+
`Python 3 <https://www.python.org/downloads/.>`_ installed. If you have a
6+
working Python3 environment, use pypi to install the latest eTraGo version.
7+
We highly recommend you to use a virtual environment. Use following pip
8+
command in order to install eTraGo:
79

810
.. code-block:: bash
911
1012
$ pip3 install eTraGo --process-dependency-links
1113
1214
1315
14-
1516
Using virtual environment
1617
=========================
1718

@@ -29,63 +30,82 @@ Linux and Ubuntu
2930
================
3031

3132
The Package eTraGo is tested with Ubuntu 16.04 and 18.04 inside the virtual
32-
environments of *virtualenv*. The installation is shown above.
33+
environments of `virtualenv <https://virtualenv.pypa.io/en/stable/>`_.
34+
The installation is shown above.
3335

3436

3537

3638
Windows or Mac OSX users
3739
========================
3840

3941
For Windows and/or Mac OSX user we highly recommend to install and use Anaconda
40-
for you Python3 installation. First install anaconda inclusing python 3.x
41-
version from https://www.anaconda.com/download/ and open an anaconda prompt as
42-
administrator and run:
42+
for you Python3 installation. First install anaconda inclusing python 3.5 or
43+
higher version from https://www.anaconda.com/download/ and open an anaconda
44+
prompt as administrator and run:
4345

4446
.. code-block:: bash
4547
4648
$ conda install pip
4749
$ conda config --add channels conda-forge
4850
$ conda install shapely
51+
$ pip3 install eTraGo --process-dependency-links
4952
5053
The full Documentation can be found
51-
`on this page.<https://docs.anaconda.com/anaconda/install/>`_. We use Anaconda
54+
`on this page <https://docs.anaconda.com/anaconda/install/>`_ . We use Anaconda
5255
with an own environment in order to reduze problems with Packages and different
53-
versions on our system. Learn more about (`Anacona environments
54-
<https://conda.io/docs/user-guide/tasks/manage-environments.html>`_).
55-
56-
57-
56+
versions on our system. Learn more about
57+
`Anacona <https://conda.io/docs/user-guide/tasks/manage-environments.html>`_
58+
environments.
5859

5960

60-
Setup ego.io
61-
=============
6261

62+
Setup database connection
63+
=========================
64+
The package ``ego.io`` gives you a python SQL-Alchemy representations of
65+
the _OpenEnergy-Database_ (oedb) and access to it by using the
66+
`oedialect <https://github.com/openego/oedialect>`_ a SQL-Alchemy binding
67+
Python package for the REST-API used by the OpenEnergy Platform (OEP). Your API
68+
access / login data will be saved in the folder ``.egoio`` in the file
69+
``config.ini``. You can create a new account on
70+
`openenergy-platform.org/login <http://openenergy-platform.org/login/>`_.
6371

6472

65-
[oedb]
66-
67-
username = YourOEDBUserName
68-
69-
database = oedb
70-
71-
host = oe2.iws.cs.ovgu.de
73+
oedialect connection
74+
--------------------
7275

73-
port = 5432
76+
.. code-block:: desktop
7477
75-
pw = YourOEDBPassword
78+
[oedb]
79+
dialect = oedialect
80+
username = <username>
81+
database = oedb
82+
host = openenergy-platform.org
83+
port = 80
84+
password = <token>
7685
77-
[local]
7886
79-
username = YourLocalUserName
87+
Local database connection
88+
-------------------------
8089

81-
database = YourLocalDatabaseName
90+
.. code-block:: desktop
8291
83-
host = 127.0.0.1
92+
[local]
93+
username = YourOEDBUserName
94+
database = YourLocalDatabaseName
95+
host = localhost or 127.0.0.1
96+
port = 5433
97+
pw = YourLocalPassword
8498
85-
port = 5432
8699
87-
pw = YourLocalPassword
88100
101+
Old developer connection
102+
-------------------------
89103

104+
.. code-block:: desktop
90105
91-
when you just calculate local or on the oedb you just need this section
106+
[oedb]
107+
username = YourOEDBUserName
108+
database = oedb
109+
host = oe2.iws.cs.ovgu.de
110+
port = 5432
111+
pw = YourOEDBPassword

0 commit comments

Comments
 (0)