Skip to main content

Python interpreter for GEMS: modelling and simulation of complex energy systems under uncertainty

Project description

GemsPy, a Python interpreter for GEMS

CI PyPI version Python versions License: MPL-2.0 Documentation Code style: black

GemsPy is an open-source tool, developed in Python, for the modelling and the simulation of complex energy systems under uncertainty. This is a generic interpreter for the GEMS modelling framework.

Description

Online GemsPy documentation: gemspy.readthedocs.io.

The GEMS framework

The rationale behind GEMS

GEMS introduces a novel approach to model and simulate energy systems, centered around a simple principle: getting models out of the code.

To develop and test new models of energy system components, writing software code should not be a prerequisite. This is where the Gems framework excels, offering users a "no-code" modelling experience with unparalleled versatility.

Gems = a high-level modelling language + a data structure

The Gems framework consists of a high-level modelling language, close to mathematical syntax, and a data structure for describing energy systems.

The GemsPy package

This Python package features a generic interpreter of Gems capable of generating optimisation problems from any study case that adhere to the modelling language syntax. It then employs off-the-shelf optimisation solvers to solve these problems. The Python API facilitates reading case studies stored in YAML format, modifying them, or creating new ones from scratch by scripting.

The Getting started page of the online documentation introduce you to the Gems input file format and the basics of the GemsPy API.

Link with Antares Simulator software

The GemsPy package forms part of the Antares project, but its implementation is completely independent of that of the AntaresSimulator software. Although it was initially designed to prototype the next features of the Antares software (for more information, see Antares Simulator documentation, its structuring and development practices have resulted in high-quality, self-supporting code. It is currently maintained to offer the flexibility of the designed modelling language and interpreter to Python users and to continue exploring its potential.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gemspy-0.0.6.tar.gz (76.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gemspy-0.0.6-py3-none-any.whl (102.3 kB view details)

Uploaded Python 3

File details

Details for the file gemspy-0.0.6.tar.gz.

File metadata

  • Download URL: gemspy-0.0.6.tar.gz
  • Upload date:
  • Size: 76.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gemspy-0.0.6.tar.gz
Algorithm Hash digest
SHA256 a29c212ef139489f92c0ff8d0f86ec4b6994ab5091da131092646dbd2542de7f
MD5 72f64f68c9b0c4f75416293d4d8b55d0
BLAKE2b-256 fb9920ca5b2cde210e6397b68ad20e0c44e26d16d9cee887f3f6d5aa0f6a96f5

See more details on using hashes here.

File details

Details for the file gemspy-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: gemspy-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 102.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gemspy-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d5a21e5e44c2ed4ae7e2027c9fee0d9e7826f075f121e9b46b9275da5ef1b803
MD5 4a278419f693db2fd7d510093dccfded
BLAKE2b-256 61c6c917c178f567ec164f97ece9c846f2173e1590b6613f77998e1b17ec27df

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page