IESO Setup Guide
This article provides a guide on how to set up and run the Integrated Energy Systems Optimiser (IESO). The guide covers installation, building, running a simulation, and generating a report.
IESO is implemented in Python 3 and doesn’t require direct installation itself. However, it relies on external libraries: OR-Tools, NumPy, and Matplotlib, which need to be pre-installed.
Creating a virtual environment for IESO
We highly recommend creating a virtual environment for IESO to isolate project dependencies and avoid conflicts with other Python projects on your system.
macOS and Ubuntu Linux
1. On macOS, the python3-venv
package should be available by default. On Ubuntu Linux, the package is installed using the command line:
2. Create the IESO virtual environment:
3. Activate the virtual environment:
4. Installing IESO dependencies:
Windows
2. Open the Anaconda prompt and create the IESO virtual environment:
3. Activate the virtual environment:
4. Installing IESO dependencies:
Getting IESO
The initial step required to run an IESO simulation is to fetch the tool from GitHub.
Building the IESO-embedded thermodynamic calculations tool
IESO includes a thermodynamic calculations tool within its “thermo” folder. This tool needs to be compiled before use:
- On macOS or Ubuntu Linux systems: Run the script
build.sh
. - On Windows systems: Run the script
build.bat
.
This process assumes that a C++ compiler is already installed on your device. If not, you can install it following the instructions provided below.
macOS
On macOS, you can install the GNU Compiler Collection (GCC), which includes the GNU C++ compiler, using the Xcode Command Line Tools:
Ubuntu Linux
To install the GNU C++ compiler and other essential build tools, you can run the following command in your terminal:
Windows
- Download MinGW and install it, ensuring that the GNU C++ compiler is included in the package.
- After installation, find the binary folder of MinGW. Usually, it is located at a path such as
C:\MinGW\bin
. - Add the path of the MinGW binary folder to your system’s PATH environment variable.
Running an IESO simulation
IESO is called with one or two arguments:
- The first argument (mandatory) is a JSON file (we will denote it as
input.json
) that describes the integrated energy system optimisation problem. - The secondary argument (optional) specifies the carbon constraint.
The output of IESO materialises as a JSON file named input.ieso.json
, structured identically to input.json
but inclusive of the simulation results.
Before running IESO, the environment needs to be set up, as described by the examples below.
macOS and Ubuntu Linux
Open a Terminal window and run the following commands:
Windows
Open the Anaconda prompt and run the following commands:
Generating a simulation report
IESO’s simulation results are compiled in a JSON file named input.ieso.json
. To convert this raw JSON file into a comprehensive report, execute the command:
The report elements, including graphs, CSV files, and “report.tex” (LaTeX document), are generated within the “report” directory. Compile report.tex
to generate the simulation report in the PDF format:
This command assumes that LaTeX is already installed on your computer. If not, you can install it following the instructions provided below.
macOS
The MacTeX package is available on the TeX Users Group’s website.
Ubuntu Linux
TeX Live is available in the Ubuntu repositories. Here’s how to install it:
Windows
TeX Live for Windows is available for download at this link.
Examples of IESO data sets and simulation reports
Examples of IESO data sets and simulation reports are available at this link. They include: