Skip to content

rusty-s/GDX2py

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GDX2py

Documentation Status

Read and write GAMS Data eXchange (GDX) files using Python.

Requirements

  • GAMS: version 24.1 or higher
  • Python: 3.6 or higher
  • GAMS Data Exchange API (gdxcc): 7.0 or higher

Installing GAMS

Get GAMS from https://www.gams.com/download/ and install it to your system. No license is needed for the use of GDX libraries.

Installation

Install with

pip install gdx2py

Usage

>>> from gdx2py import GdxFile, GAMSSet, GAMSScalar, GAMSParameter
>>> with GdxFile('/path/to/gdx/file.gdx', mode='w') as gdx:
>>>     gdx['set1'] = ['a', 'b', 'c']  # Write a simple set
>>>     set1 = gdx['set1']  # Read a symbol
>>>     # Write a 2-dimensional set
>>>     gdx['set2'] = [('a', 'foo'), ('b', 'bar'), ('c', 'baz')]
>>>     # Write a scalar with explanatory text
>>>     gdx['scalar'] = GAMSScalar(3.14, expl_text="Value of pi")  
>>>     # Write a parameter with domain                                     
>>>     gdx['par1'] = GAMSParameter({'a': 1, 'b': 2,  
                                     'c': 3, 'd': 4 }, 
                                    domain=['set1'])  

Comparison to similar packages

Compared to other packages like PyGDX, gdx-pandas, gdxtools and gdxpy, GDX2py relies only on the Python standard library and the low-level GDX API gdxcc package which is available on PyPI.


EU emblem This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 774629.

About

Read and write GAMS Data eXchange (GDX) files using Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.4%
  • GAMS 2.6%