GEOframe is a system for doing hydrology by computer that aims to implement the DARTHs paradigm [Rigon et al., 2022]. By saying that it is a system, we emphasize that it is not a model but an infrastructure that can contain many differentiated modelling solutions (some tens of that) that are built upon model components [Argent et al., 2004]. This is because GEOframe leverages theObject Modelling system-framework (v3)[David et al., 2013] that allows to connect modelling components to solve a specific hydrological issue together and having many alternatives for its mathematical/numerical description. This infrastructure allows adapting the tools to the problems and not vice versa [Rigon et al., 2022]. In GEOframe particular attention has been dedicated to allow enhancements and additions writing the least code possible. The core code has been designed to open to addition and closed to modifications [Gamma et al, 1995], thus allowing stability of the code base over time. GEOframe contains tens of components that cover rainfall-runoff [Formetta et al., 2011], snow modelling [Formetta et al., 2014] evaporation and transpiration[Bottazzi et al., 2021], infiltration [Tubini and Rigon, 2022], terrain analysis tools [Abera et al., 2014], interpolation models [Bancheri et al., 2018], calibrations tools [David et al., 2013], and so on. Every modelling paradigm is included, as, for instance process based modelling [Tubini and Rigon, 2022], lumped modelling [Formetta et al., 2014b], machine learning [Serafin et al., 2021], or can be included by adding appropriate components [Serafin, 2019]. Spatially disjoint catchments can be modelled separately and joined together in a bigger model by using a Groovy-based domain specific language. GEOframe has been applied to hydrological simulations from the point scale, to Alpine catchments [Abera et al., 2017], to large catchments as the Blue Nile [Abera et al., 2016], and among those is being deployed to the Po river. GEOframe is open source and built with open source tools including Eclipse, OpenJDK by Adoptium, Gradle, Github. Literate computing is pursued by extensively using Jupyter Notebooks for creating the input and the output of data.
- GEOframe-NewAGE [Formetta et al., 2014] for the modelling of hydrology as a set of systems of systems of ordinary differential equations called Hydrological Dynamical Systems [CITE];
- WHETGEO (Tubini and Rigon, 2022) that solves the Richards, heat and transport equations in soil and groundwater;
- GEOSPACE which deals with soil-plant-atmosphere interactions.
Many of the components, however, are shared among the various branches and "mixed" modelling solutions can be envisioned by choosing components from one or the other. In fact, for instance GEOSPACE is built upon WHETGEO and GEOframe ET components with the addition of a broker component that transmit and receive data from the to components subsets. For any of the sub-branches please refer to the respective blog pages.
No comments:
Post a Comment