Code Monkey home page Code Monkey logo

OSeMOSYS - Open Source Energy Modelling System

Build Status Documentation Status

Welcome to OSeMOSYS - the Open Source energy MOdelling SYStem. This source code repository contains the Apache-2.0 licensed source-code for the different implementations of OSeMOSYS - GNU MathProg, Pyomo, PuLP and GAMS.

For an in-depth introduction to the underlying model and its structure, you can read the original paper (needs access to Elsevier ScienceDirect).

The different versions are contained in subfolders, together with readme files which provide information of how to install and run the code.

Getting the OSeMOSYS code

Modellers

The OSeMOSYS code packages you need for writing your own models are released on the website, along with a lot of useful information on how to get started.

Developers

OSeMOSYS consists of this repository and several submodules, which contain the different language implementations of the OSeMOSYS formulation.

To obtain all the OSeMOSYS code including the language implementations for development purposes, run the following commands from your command line:

cd <name_of_folder>
git clone https://github.com/OSeMOSYS/OSeMOSYS # obtain the OSeMOSYS repository code
git submodule init # initialize your local submodule configuration file
git submodule update # fetch all the data from project and check out correct commit

If successful, this should download all the code to the folder you specified in the first step.

Alternatively, use the --recurse-submodules argument to the git clone command:

cd <name_of_folder>
git clone https://github.com/OSeMOSYS/OSeMOSYS --recurse-submodules
# obtain the OSeMOSYS repository code and submodules all in one line

Contributing

Please view our separate contributing document to find out how to contribute to the OSeMOSYS community.

Background

OSeMOSYS is a full-fledged systems optimization model generator for long-term energy planning. Unlike long established energy systems models, such as MARKAL/TIMES (ETSAP, 2010), MESSAGE (IAEA, 2010), PRIMES (NTUA, 2010), EFOM (Van der Voort, 1982) and POLES (Enerdata, 2010), OSeMOSYS potentially requires a less significant learning curve and time commitment to build and operate. Additionally, by not using proprietary software or commercial programming languages and solvers, OSeMOSYS requires no upfront financial investment. These two advantages extend the availability of energy modeling to large communities of students, business analysts, government specialists and developing countries energy researchers.

Motivation

OSeMOSYS is designed to fill a gap in the analytical toolbox available to the energy research community and energy planners in developing countries. At present there exists a useful, but limited set of accessible energy system models. These tools often require significant investment in terms of human resources, training and software purchases in order to apply or further develop them. In addition, their structure is often such that integration with other tools, when possible, can be difficult.

Energy Specialists

The OSeMOSYS code is relatively straightforward and transparent and allows for simple refinements and the ability to conduct sophisticated analyses. As models are made to generate insights, OSeMOSYS allows a test-bed for new energy model developments.

Education

Enabling graduate students to build and iteratively develop formal energy models will impart this knowledge base to very wide range of energy market roles and positions. Extending the human capacity of private and public policy makers to use and understand energy models is a key step in the effective use and interpretation of formal analytical tools. And growing human capacity in energy modeling in developing countries – whose institutions have relatively fewer research resources – is particularly important, given the growth of developing countries in energy related emissions, resource use, and demand for energy services.

Community

OSeMOSYS community welcomes professionals and experts from different levels: decision makers, policy officers, energy planners, developers of new model functionalities, programmers.

The OpTIMUS Community, Practice 3

OSeMOSYS is part of the OpTIMUS Community, Practice 3: Open Software, together with other world class, peer reviewed open source tools and data.

OpTIMUS aims at promoting quantitative analysis to inform sustainable development policy, through the coordination of networks to advance open source software, knowledge development and capacity building. It is organized in three practices -modeling and capacity building for policy support, expert review and quality control, and software development. For more information on the OpTIMUS Community, please visit the related website: http://www.optimus.community/.

OSeMOSYS's Projects

amply icon amply

A Python package for AMPL/GMPL datafile parsing

clews icon clews

CLEWs - A framework for Climate, Land, Energy and Water systems modelling

clews_gaez icon clews_gaez

The GAEZ v4 land and water data processing for CLEWs modelling

clewsy icon clewsy

Tools for building CLEWs models

momani icon momani

Model Management Infrastructure

osemosys icon osemosys

OSeMOSYS - the Open Source Energy Modelling System

osemosys_gui icon osemosys_gui

A place to store ideas, code and specifications for an open-source OSeMOSYS GUI

osemosys_pulp icon osemosys_pulp

OSeMOSYS_PuLP: A Stochastic Modelling Framework for Long-Term Energy Systems Modeling

urbs icon urbs

A linear optimisation model for distributed energy systems

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.