OpenGeoSys: An Open-Source Initiative for Numerical Simulation of Thermo-Hydro-Mechanical/Chemical (THM/C) Processes in Porous Media

Thursday, 18 December 2014: 4:30 PM
Norihiro Watanabe1, Lars Bilke1, Thomas Fischer1, Thomas Kalbacher1, Thomas Nagel1, Dmitri Naumov1, Karsten Rink1, Haibing Shao1,2, Wenqing Wang1 and Olaf Kolditz1,3, (1)Helmholtz Centre for Environmental Research UFZ Leipzig, Leipzig, Germany, (2)Freiberg University of Mining and Technology, Freiberg, Germany, (3)Dresden University of Technology, Dresden, Germany
In this paper we describe the OpenGeoSys (OGS) project, which is a scientific open-source initiative for numerical simulations of thermo-hydro-mechanical/chemical processes in fractured porous media. The basic concept is to provide a flexible numerical framework (using primarily the Finite Element Method (FEM)) for solving multi-field problems in porous and fractured media for applications in geoscience, hydrology and energy conversion. To this purpose OGS is based on an object-oriented (OO) FEM concept including a broad spectrum of interfaces for pre- and post-processing. OGS has been developed since the mid-eighties, has been continuously improved in concept and evolved through Fortran, C, and C++ implementations. The idea behind OGS is to provide an open platform to the scientific community featuring professional software-engineering tools such as platform-independent compiling and automated benchmarking. Comprehensive benchmarking books (Kolditz et al. 2012, 2014) and tutorials (Sachse et al. 2014) are being published. Benchmarking has proven to be a valuable tool for cooperation between different developer teams, for example, for code comparison and validation purposes (DEVOVALEX, CO2 BENCH and SSBENCH projects). The computational efficiency of OO codes is very important in scientific computing (Wang et al. 2009). We have already parallelized the OO codes by using both custom schemes and the PETSc library (Wang et al. 2014). Meanwhile the 6th version, ogs6, is under construction to further foster various parallel computing techniques and to improve code modularity for enhancing collaborative development by several researchers. The code is openly accessible via GitHub (https://github.com/ufz/ogs) and our development workflow extensively builds on Git features such as branching, merging automatic compiling, executing unit tests and code review to improve communication among developers and maintain code quality. OGS also provides a graphical user interface (DataExplorer)to visualize and construct complex hydrological models together with measured data (Rink et al. 2014). Thus, the OpenGeoSys project provides a powerful means for the analysis, simulation and visualization of coupled problems across different scales and scientific disciplines.