Getting started
Welcome to PyRAMSES documentation! PyRAMSES (Python-based RApid Multithreaded Simulation of Electric power Systems) is a time-domain, dynamic, simulator for future electric power systems. If you are interested in the inner workings of the simulator, head at the end of this page to find some papers explaining the algorithms.
This website is for the Python version of RAMSES, named PyRAMSES. If you are looking for the Java version, then please head to Java GUI interface.
Recommended installation
The recommended way to install PyRAMSES is through the Conda tool. So, first head to Anaconda and install Python 3 version for your computer.
We suggest you install PyRAMSES in a virtual environment to avoid conflicts with other packages. To install the latest version in a new virtual environment, run:
conda create --name ramenv python=3.7 matplotlib scipy numpy mkl jupyter ipython
conda activate ramenv
conda install -c apetros pyramses
Alternative installation
If you cannot use Conda for some reason, you can install PyRAMSES through pypi:
pip install matplotlib scipy numpy mkl jupyter ipython pyramses
MKL dependencies
The simulator depends on the Intel redistributable libraries for the MKL Lapack/BLAS and the openmp implementation. These should be automatically installed as dependencies when you install PyRAMSES with Conda. To make sure that you have the MKL libraries installed, you can use:
import numpy as np
np.__config__.show()
which should give something like:
blas_mkl_info:
libraries = ['mkl_rt']
library_dirs = ['C:/Users/eenpar/AppData/Local/Continuum/anaconda3\\Library\\lib']
define_macros = [('SCIPY_MKL_H', None), ('HAVE_CBLAS', None)]
include_dirs = ['C:\\Program Files (x86)\\IntelSWTools\\compilers_and_libraries_2016.4.246\\windows\\mkl', 'C:\\Program Files (x86)\\IntelSWTools\\compilers_and_libraries_2016.4.246\\windows\\mkl\\include', 'C:\\Program Files (x86)\\IntelSWTools\\compilers_and_libraries_2016.4.246\\windows\\mkl\\lib', 'C:/Users/eenpar/AppData/Local/Continuum/anaconda3\\Library\\include']
Installing Gnuplot (optional)
PyRAMSES has the ability to display in real-time (i.e., during the simulation) some outputs. This is useful especially in slow simulations to see that something is actually happening (check Runtime observables). For this, gnuplot should be installed and available in the path. You can install gnuplot from the official website.
Under Linux, you can install with your package manager. For example, under Ubuntu or Debian:
sudo apt-get install gnuplot-x11
Suggested References for RAMSES
- AFC14
P. Aristidou, D. Fabozzi, and T. Van Cutsem. Dynamic simulation of large-scale power systems using a parallel schur-complement-based decomposition method. IEEE Transactions on Parallel and Distributed Systems, 25(10):2561–2570, Oct 2014. URL: http://hdl.handle.net/2268/156230, doi:10.1109/TPDS.2013.252.
- ALC16
P. Aristidou, S. Lebeau, and T. Van Cutsem. Power system dynamic simulations using a parallel two-level schur-complement decomposition. IEEE Transactions on Power Systems, 31(5):3984–3995, Sept 2016. URL: http://orbi.ulg.ac.be/handle/2268/189192, doi:10.1109/TPWRS.2015.2509023.
- ALLVanCutsem16
P. Aristidou, S. Lebeau, L. Loud, and T. Van Cutsem. Prospects of a new dynamic simulation software for real-time applications on the hydro-quebec system. CIGRE Science & Engineering, 4(1):88–95, February 2016. URL: http://www.cigre.org/Menu-links/Publications/CIGRE-Science-Engineering.
- AVanCutsem15
P. Aristidou and T. Van Cutsem. A parallel processing approach to dynamic simulations of combined transmission and distribution systems. International Journal of Electrical Power & Energy Systems, 72:58–65, Nov 2015. URL: http://hdl.handle.net/2268/178765, doi:10.1016/j.ijepes.2015.02.011.