Poster Open Access
van den Oord, Gijs; Verhoeven, Stefan; Pelupessy, Inti; Aerts, Jerom; Hut, Rolf; van de Giesen, Nick; van Werkhoven, Ben; Weel, Berend; de Vos, Martine; Dzigan, Yifat; van Haren, Ronald; van der Zwaan, Janneke; van Meersbergen, Maarten
We introduce GRPC4BMI, a software package that exposes earth system models (ESM) as remote services, provided these models implement the basic modeling interface (BMI). BMI is a library interface, predominantly used within the hydrological and hydraulic modeling domains, that allows an external component to initialize the model, control it’s time-stepping and retrieve or manipulate its state data at any given moment. The key feature of BMI for this work is that BMI is defined in many different programing languages. Our software wraps a BMI-enabled model into a server process, possibly executed within a docker container or on different hardware, and transfers client site BMI calls to the running model instance. We use Google's protocol buffer framework GRPC to establish the communication between a python client and server. In this way, GRPC4BMI allows the user to address ESM's via a standard python BMI, irrespective of the model language and installation environment. The package can therefore serve as a valuable tool for open and reproducible analysis and coupling of ESM's.