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.1.1.tar.gz (81.1 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.1.1-py3-none-any.whl (106.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for gemspy-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0695405728fa66537552eb89941ebfbc57f9106fffe3300e020feb375d327af9
MD5 968785e8a2ca66f1ecf7f86f27b01f80
BLAKE2b-256 19d46ec37caef220e12d4e06df80256f1cf238021c7f0b35c2a2f4450f11e7e7

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for gemspy-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e55c914ab6e237a66b625b169c5ef50e9ae90530faa7b9bb8b2d33668088f73f
MD5 ad903740d709f06d87319a28cea97cbc
BLAKE2b-256 3ad565eb5bd5c944e8bde8c2bf608c2ea7e02fd79815167f344ded7e4db45f13

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