Software for Co-Simulation


Co-simulation is a process where multiple specialized simulation models run simultaneously and exchange data to simulate a complex system from different perspectives.

This technique is used when a single simulation model is not sufficient to accurately represent all aspects of a system, or to (re)combine existing simulation models.

A illustrative example of co-simulation is the holistic simulation of a residential building. Various models are combined:

  1. A building model that represents the physical properties of the house, such as insulation standards or energy sources used for heating and electricity.

  2. A usage model that simulates the behavior of residents – from normal daily routines to scenarios with extended presence or absence.

  3. A weather model that simulates outdoor temperatures, solar radiation, and other climatic conditions.

Such models can be started in a coordinated manner and connected with each other by our software. This creates, for example, an integrated co-simulation that enables realistic predictions about energy consumption, indoor climate, and other important factors.

User Interface

The user-friendly web interface forms the core for all users. First, you select a suitable co-simulation type and then configure the desired simulation models.

Simulation Creation

In a second configuration step, users define central execution parameters. For example, the step size that determines what time period a single simulation step covers, or the total number of steps which defines the simulation duration.

These parameters are crucial for balancing the level of detail in the results and computation time.

Simulation Parameters

After starting the simulation, a comprehensive overview appears with four main areas:

  • Connection graph (top left): Visualizes all involved processes and their connections to each other. Active processes are highlighted by blinking, enabling intuitive real-time monitoring of the simulation progress.
  • Real-time dashboards (top right): Current measurements and key figures of all modules are displayed in clear diagrams via a Grafana integration.
  • Process outputs (bottom left): Shows log messages and status information of running processes, helpful for error diagnosis and technical monitoring.
  • Visualizations (bottom right): Presents dynamically generated graphics of the simulation models that automatically update with the progress of the simulation.

Simulation Run

After the simulation is completed, the connection graph automatically collapses, providing more screen space for displaying results. This space-saving view enables focused analysis of the simulation results. Users also have the option to activate this compact display during the ongoing simulation via a corresponding button.

Simulation Finished

The platform also offers central co-simulation management with three clear categories:

  1. Initialized co-simulations: Prepared but not yet started simulations
  2. Running simulations: Simulations currently being executed
  3. Completed simulations: Previously conducted simulations with available results or aborted simulations

Each simulation can be loaded into the work view with a click, where users can perform actions according to the current state. This central management enables an efficient workflow even for complex simulation studies with multiple variants.

Ended Simulations

Technologies and Architecture

The main technologies used are:

  • Python,
  • Angular,
  • Grafana and
  • PostgreSQL.

The system architecture consists of multiple components controlled by a central server. When needed, individual parts of the system are scaled to enable multiple simulation processes simultaneously. All server components are developed in Python and primarily use coroutines to achieve the necessary performance. The web interface described above was developed in Angular and is connected to the server via HTTP API and websockets.

Client

This software solution was developed for the Karlsruhe Institute of Technology (KIT), one of Germany’s leading technical research universities with outstanding expertise in engineering and natural sciences. Within KIT, the research group Energy System Analysis (ESA) at the Institute for Automation and Applied Informatics (IAI) served as the technical project partner.

The ESA group researches innovative methods for modeling, simulation and analysis of complex energy systems with a focus on the integration of renewable energies and energy efficiency in buildings and neighborhoods.

For more information on this research work and the application of this software, please feel free to contact Dr. Çakmak, who oversees the project on the KIT side.