![](https://amarex-projekt.de/media/pages/news/abimo-r-abimo/a13453c41b-1720095249/r.png)
Does it make sense to rewrite an existing model software from scratch to achieve the same results? We believe it does, so we translated the ABIMO water balance model from C++ into the R programming language. We gained a deeper understanding of the model's internal processes. R allows us to gain new insights and test extensions more easily.
Additionally, R is now widely used, with a large and active community. As an interpreted language, R offers more transparency and flexibility than a compiled language like C++, as we can test changes directly in the source code without compiling the entire program first. During the translation, we also identified and corrected inaccuracies in the model.
We call our R translation of the model "R-ABIMO" and the development in R is not the only innovation: we have added specific area types to simulate the effects of stormwater management applications. This is crucial for AMAREX's objectives, as it enables us to not only map the current state (such as existing green roofs and infiltration swales) but also virtually increase the implementation of these measures and demonstrate their positive effects on the local water balance—more evaporation, more infiltration and less surface runoff.
R-ABIMO is also more adaptable than its predecessor. The previous model required Berlin-specific input variables, such as structure type and land use categories like "school" and "hospital," as well as "gap closure after 1945" or "large housing estate after 1960." These were used to derive calculation parameters within the model, such as the amount of artificial irrigation or vegetation class. The new version is detached from these categories and requires these calculation variables as direct input data. This adaptation allowed us to apply R-ABIMO to the city of Cologne.
By taking this step, we believe we have made this water balance model more intuitive, accurate, and attractive to users outside of Berlin. However, Berlin users need not worry; we have written a function that converts old data formats into the new format required by R-ABIMO.