The OpenFLUID software platform is a fully featured environment for spatial modelling of dynamics in landscapes (Fabre et al., 2013 ; Fabre et al., 2010). It relies on the following modelling concepts:
Applying these concepts, landscapes are represented as a set of spatial units. Each spatial unit represents one or more landscape objects or sub-objects, is assigned to a spatial unit class, and holds relevant associated attributes (such as morphology, physical properties, …). The complete spatial representation is managed using a graph (Rabotin et al., 2013), where the spatial units are the graph nodes and the relations between spatial units and the graph edges. Every node of the graph can also bring a sub-graph in order to represent different spatial scales.
The modeled dynamics are spatio-temporal computation codes, named simulators. They are coupled through the simulation variables they use and produce on the spatial graph.
The OpenFLUID platform is based on a software framework for spatial modeling, providing functionalities
for time and space management, for automatic coupling of models, for simulation execution and other software features.
Over this software framework, the software applications can be used to parameterize and perform simulations.
Software plugins are plugged into the platform as computation code of models to be coupled (simulators) or to explore simulations during their execution (observers).
A simulator integrates a computation code representing one or more dynamic processes. The simulators can be developed de novo or encapsulate existing codes.
Thanks to an original signature system, each simulator is self-described. It declares its parameters, the input variables it requires the output variables it produces, the spatial attributes it needs,… A signature also includes meta-information such as the list of authors, a description, its version, its development status, … This signature is automatically used by the modeling framework to perform the coupling and to control the consistency of the coupled model.
Using plugged observers, a simulation can be monitored and the data produced during the simulation can be extracted into various data format (csv, vtk, …) or exported to various graphical rendering softwares (GNUplot, GoogleEarth, …).
The OpenFLUID software is mainly developped in C++. The simulators and observers are developped in C++ or a compatible language (C, Fortran, …), using the OpenFLUID-DevStudio application or any other development environment.
OpenFLUID can be used in different contexts, through various dedicated applications.
As it is fully embeddable, the OpenFLUID modeling framework can be integrated in third-party software applications such as web services, user interfaces and much more.
The OpenFLUID platform can also be used as a support for collaborative works involving modelling of complex landscapes.
Using an OpenFLUID-WaresHub service for collaboration, it is easier to develop, capitalize, share and reuse models as simulators, inside workgroups, scientific research teams, collaborative networks, …