OSeMOSYS (Open Source energy MOdelling SYStem)

OSeMOSYS has been created by a community of leading institutions and is capable of powerful energy systems analysis and prototyping new energy model formulations. It is typically used for the analysis of energy systems looking over the medium (10-15yrs) and long (50-100yrs) term. It is used by experienced modellers as an exploratory tool, by developing country modellers where data limitations are an issue, and as a teaching tool.




Initial contribute: 2019-10-20


Is authorship not correct? Feed back


Application-focused categoriesHuman-perspectiveEconomic activities

Detailed Description

English {{currentDetailLanguage}} English

Quoted from: https://github.com/OSeMOSYS/OSeMOSYS 

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. 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


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.


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


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


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.


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.


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.


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/.



OpTIMUS Community (2019). OSeMOSYS (Open Source energy MOdelling SYStem), Model Item, OpenGMS, https://geomodeling.njnu.edu.cn/modelItem/0b0753e4-4370-4d34-95b4-a5eb5965e94d


Initial contribute : 2019-10-20



Is authorship not correct? Feed back

QR Code


{{curRelation.author.join('; ')}}



Drop the file here, orclick to upload.
Select From My Space
+ add


Cancel Submit
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Localizations}} + {{htmlJSON.Add}}
{{ item.label }} {{ item.value }}
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
名称 别名 {{tag}} +
系列名 版本号 目的 修改内容 创建/修改日期 作者
摘要 详细描述
{{tag}} + 添加关键字
* 时间参考系
* 空间参考系类型 * 空间参考系名称

起始日期 终止日期 进展 开发者
* 是否开源 * 访问方式 * 使用方式 开源协议 * 传输方式 * 获取地址 * 发布日期 * 发布者

编号 目的 修改内容 创建/修改日期 作者

时间分辨率 时间尺度 时间步长 时间范围 空间维度 格网类型 空间分辨率 空间尺度 空间范围
{{tag}} +
* 类型

* 名称 * 描述
示例描述 * 名称 * 类型 * 值/链接 上传

{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
Title Author Date Journal Volume(Issue) Pages Links Doi Operation
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Add}} {{htmlJSON.Cancel}}


Authors:  {{articleUploading.authors[0]}}, {{articleUploading.authors[1]}}, {{articleUploading.authors[2]}}, et al.

Journal:   {{articleUploading.journal}}

Date:   {{articleUploading.date}}

Page range:   {{articleUploading.pageRange}}

Link:   {{articleUploading.link}}

DOI:   {{articleUploading.doi}}

Yes, this is it Cancel

The article {{articleUploading.title}} has been uploaded yet.

{{htmlJSON.Cancel}} {{htmlJSON.Confirm}}