oemof – a framework
The framework oemof contains various packages for different tasks. Some are stand-alone libraries, others depend on the oemof core API.
- oemof.solph – linear optimisation library for energy systems
- oemof.outputlib and oemof-visio – collecting and plotting results
- feedinlib – time series of pv or wind power plants
- windpowerlib – time series of wind power plants and farms
- TESPy – thermal process simulation
oemof.solph – linear optimisation library for energy systems
The energy system modelling library solph is part of the oemof installation. This library is used to simulate or optimize multi-regional energy systems considering power, heat and mobility. Furthermore, it is possible to switch between a dispatch and an investment models.
Solph uses the python package pyomo to create linear problems which can be solved by known solvers such as coin-or, glpk, gurobi, cplex or others.
oemof.outputlib and oemof-visio – collecting and plotting results
The oemof.outputlib library is part of the oemof installation. The outputlib collects the results of an optimisation as a dictionary containing scalar values and pandas DataFrames. This makes it easy to process or plot the results using the capabilities of the pandas library.
Beside this, the package oemof_visio provides some basic plot methods to create nice plots. The oemof plot methods can be used additionally and are easily combined with the plot capabilities of pandas and matplotlib.
feedinlib – time series of pv or wind power plants
The modelling library feedinlib is not part of the oemof installation and can be used as a stand-alone application. Feed-in time series of volatile power plants are essential for most energy system models.
The feedinlib will be revised in the near future but the last stable release can still be used.
Clone or fork the ‘feedinlib’ at github and use it within your project. Don’t forget to play back your fixes and improvements. We are pleased to get your feedback.
windpowerlib – time series of wind power plants and farms
The windpowerlib is a library that provides a set of functions and classes to calculate the power output of wind turbines and wind farms. It was originally part of the feedinlib (windpower and pv) but was taken out to build up a community concentrating on wind power models. It is still used by the feedinlib to create wind power time series.
demandlib – create demand profiles
The demandlib library is not part of the oemof installation and can be used as a stand-alone application. It can be used to create time series given the annual demand.
TESPy – thermal process simulation
TESPy (Thermal Engineering Systems in Python) is a new software in the oemof cosmos. It supplies a large toolbox for simulation of thermal processes, such as heat pumps, thermal power plants or heating networks. You can use TESPy for the design of your plants and predict the offdesign performance. This way TESPy can provide characteristics, for instance the backpressure-line of a chp or temperature dependent COP of a heat pump, for your energy system optimization in oemof.solph.
TESPy is available at PyPI.org. You can find the online documentation at readthedocs. If you have any questions or issues, feel free to contact us or open an issue on the github repository.
oemof.db – a toolbox to use postgresql databases
The oemof.db extension is a toolbox to use databases with oemof. There are still parts the rely on the oemof postgis database. If you are interested to join the oemof database project please contact us.
It is planed to be an adapter for open databases (climate data, power plants, etc.).