Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

SEAS Communication Engine: An Extensible, Flexible Wrapper for Co-Simulation Agents

Conference ·
When modeling and analyzing the power grid and other large scale systems, researchers often express scenarios as optimization problems and feed them into advanced software solvers. In order to allow multiple solvers to communicate with each other and share data from different domains, the National Renewable Energy Laboratory (NREL) and associated Department of Energy (DOE) labs have developed a software framework called the Hierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS). HELICS allows cosimulation via a collection of client libraries for different languages that can be called from the appropriate optimization software. However, these client libraries do not provide a higher level of abstraction beyond reading and writing data off of the shared HELICS bus. In this paper, we describe a new software library called the SEAS Communication Engine that exposes a higher-level API for running cosimulation problems. The SEAS Engine provides a class-based abstraction on top of the Python HELICS client, in order to allow users to implement their domain-specific cosimulations without needing to interact with core HELICS primitives. This will make adoption of HELICS and cosimulation in general easier, by exposing a simpler API. In the second part of the paper, we validate our library on a collection of different simulation examples, including the canonical IEEE 13 Bus Feeder. Lastly, we demonstrate using the SEAS Engine to directly call domain-specific code written in the Julia programming language. Our hope is that this will serve as a template for easily calling software in different programming languages via the SEAS Engine, thereby avoiding code duplication and complexity.
Research Organization:
National Renewable Energy Laboratory (NREL), Golden, CO (United States)
Sponsoring Organization:
USDOE National Renewable Energy Laboratory (NREL), Laboratory Directed Research and Development (LDRD) Program
DOE Contract Number:
AC36-08GO28308; AC36-08GO28308
OSTI ID:
2447808
Report Number(s):
NREL/PO-2C00-88607; MainId:89386; UUID:d4f122a1-676e-4673-a1ce-01b2369fc82c; MainAdminId:73764
Country of Publication:
United States
Language:
English

Similar Records

SEAS Communication Engine: An Extensible, Flexible Wrapper for Cosimulation Agents
Conference · Sun Mar 03 23:00:00 EST 2024 · OSTI ID:2332743

Domain Aware Deep-learning Algorithms Integrated with Scientific-computing Technologies (DADAIST)
Technical Report · Tue Sep 26 00:00:00 EDT 2023 · OSTI ID:2331469

PvaPy: Python API for EPICS PV Access
Conference · Thu Dec 31 23:00:00 EST 2015 · OSTI ID:1336186