Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/GMLC-TDC/HELICS/llms.txt

Use this file to discover all available pages before exploring further.

HELICS (Hierarchical Engine for Large-scale Infrastructure Co-Simulation) is a general-purpose, modular co-simulation framework that lets you connect existing simulation tools into a unified federation. Rather than building monolithic simulators, HELICS coordinates data exchange and time synchronization between independent simulation tools — each called a federate — so they collectively model complex systems of systems.

Introduction

Learn what HELICS is, how it works, and when to use it.

Installation

Install HELICS via package managers, pre-compiled binaries, or from source.

Quickstart

Build and run your first two-federate co-simulation in minutes.

Core Concepts

Understand federates, brokers, timing, and data interfaces.

Why HELICS?

HELICS solves the hard problems of co-simulation: keeping heterogeneous simulators synchronized in time, routing data between them efficiently, and scaling from a developer laptop to a national lab supercomputer — without modifying the simulators themselves.

Multi-language

C++, C, Python, Java, MATLAB, Julia, Octave, and more.

Massively scalable

Two federates to 100,000+ across distributed computing environments.

Domain-agnostic

Energy, communications, buildings, transportation, and beyond.

Explore the documentation

Simulator integration guide

Step-by-step guidance for connecting your simulation tool to HELICS.

Federation configuration

Configure federates with JSON files, command-line flags, or direct API calls.

HELICS apps

Use the Broker, Player, Recorder, and other built-in helper applications.

C++ API reference

Browse the full public API surface for the C++ application library.

Get started in 3 steps

1

Install HELICS

Use conda, pip, or a pre-built package for your platform. See Installation.
2

Define your federation

Create JSON configuration files for each federate, specifying publications, subscriptions, and timing. See Configuration.
3

Run the co-simulation

Launch a broker and your federates. HELICS handles time synchronization and data routing automatically. See Quickstart.
HELICS is developed by the Grid Modernization Laboratory Consortium (GMLC) with support from the U.S. Department of Energy. It is open source under the BSD-3-Clause license.

Build docs developers (and LLMs) love