Abstract
By its very nature, research into multi-physical processes occurring in porous and fractured media requires a collaborative approach. An interdisciplinary approach has led to the adoption of collaborative software development paradigms in this field relying on software for scientific computing as research infrastructures. The development of open-source software has become a cornerstone of computational approaches in academia and has even spawned successful business models in the commercial world. This article is geared toward readers who want to learn more about potential benefits of open-source software in porous media research and who want to familiarize themselves with typical workflows required to become an active contributor to or user of open-source solutions for porous media simulation. The article puts general principles, motivations and concepts into the specific context of experiences and lessons learned from the authors developing the open-source software projects OpenGeoSys and DuMu\(^{\text {x}}\).
Similar content being viewed by others
Notes
Often called thermo-hydro-mechanical/chemical-biological coupled problems, THM/CB.
References
Aavatsmark, I.: An introduction to multipoint flux approximations for quadrilateral grids. Comput. Geosci. 6, 405–432 (2002). https://doi.org/10.1023/A:1021291114475
Ambrosi, D., Ateshian, G.A., Arruda, E.M., Cowin, S.C., Dumais, J., Goriely, A., Holzapfel, G.A., Humphrey, J.D., Kemkemer, R., Kuhl, E., Olberding, J.E., Taber, L.A., Garikipati, K.: Perspectives on biological growth and remodeling. J. Mech. Phys. Solids 59(4), 863–883 (2011). https://doi.org/10.1016/j.jmps.2010.12.011
Bangerth, W., Hartmann, R., Kanschat, G.: deal. ii—a general-purpose object-oriented finite element library. CM Trans. Math. Softw. (TOMS) 33(4), 24 (2007)
Bastian, P., Birken, K., Johannsen, K., Lang, S., Neuß, N., Rentz-Reichert, H., Wieners, C.: Ug—a flexible software toolbox for solving partial differential equations. Comput. Vis. Sci. 1(1), 27–40 (1997). https://doi.org/10.1007/s007910050003
Bastian, P., Blatt, M., Dedner, A., Engwer, C., Klöfkorn, R., Kornhuber, R., Ohlberger, M., Sander, O.: A generic grid interface for adaptive and parallel scientific computing. Part II Implement. tests DUNE 82(2–3), 121–138 (2008)
Baxendale, D., Rasmussen, A., Rustad, A.B., Skille, T., Sandve, T.H.: Open Porous Media Flow Documentation Manual. (2018). https://opm-project.org/wp-content/uploads/2018/11/OPM-Flow-Documentation-2018-10-Rev-1.pdf
de Bayser, M., Azevedo, L.G., Cerqueira, R.: Researchops: The case for devops in scientific applications. In: PROCEEDINGS, IFIP/IEEE International Symposium on Integrated Network Management, pp. 1398–1404 (2015)
Bazant, Z.P., Gattu, M., Vorel, J.: Work conjugacy error in commercial finite-element codes: its magnitude and how to compensate for it. Proc. R. Soc. A Math. Phys. Eng. Sci. 468(2146), 3047–3058 (2012). https://doi.org/10.1098/rspa.2012.0167
Boehm, B.: Software Engineering Economics. Prentice-Hall, Englewood Cliffs (1981)
Bradley, C., Bowery, A., Britten, R., Budelmann, V., Camara, O., Christie, R., Cookson, A., Frangi, A.F., Gamage, T.B., Heidlauf, T., et al.: OpenCMISS: a multi-physics & multi-scale computational infrastructure for the VPH/Physiome project. Prog. Biophys. Mol. Biol. 107(1), 32–47 (2011)
BSD (2018) Bsd licenses — Wikipedia, the free encyclopedia. https://en.wikipedia.org/w/index.php?title=BSD_licenses&oldid=873127188, [Online; Accessed 12 Dec 2018]
Carrel, M., Morales, V.L., Beltran, M.A., Derlon, N., Kaufmann, R., Morgenroth, E., Holzner, M.: Biofilms in 3D porous media: Delineating the influence of the pore network geometry, flow and mass transfer on biofilm development. Water Res. 134, 280–291 (2018). https://doi.org/10.1016/j.watres.2018.01.059
Class, H., Ebigbo, A., Helmig, R., Dahle, H.K., Nordbotten, J.M., Celia, M.A., Audigane, P., Darcis, M., Ennis-King, J., Fan, Y., Flemisch, B., Gasda, S.E., Jin, M., Krug, S., Labregere, D., Naderi Beni, A., Pawar, R.J., Sbai, A., Thomas, S.G., Trenty, L., Wei, L.: A benchmark study on problems related to CO2 storage in geologic formations. Comput. Geosci. 13(4), 409–434 (2009). https://doi.org/10.1007/s10596-009-9146-x
Coussy, O.: Mechanics and Physics of Porous Solids. Wiley, Chichester (2010). https://doi.org/10.1002/9780470710388
Forschungsgemeinschaft, Deutsche: Proposals for Safeguarding Good Scientific Practice. Wiley-VCH, Weinheim (1998)
Diersch, H.: Modellierung und numerische Simulation gehydrodynamischer Transportprozesse. Akademie der Wissenschaften der DDR, Habilitationsschrift, Berlin (1984)
Diersch, H.J.: FEFLOW: Finite element modeling of flow, mass and heat transport in porous and fractured media. Springer, (2014). https://doi.org/10.1007/978-3-642-38739-5, cited By 156
Ehlers, W.: Foundations of multiphasic and porous materials. In: Ehlers, W., Bluhm, J. (eds.) Porous Media: Theory, Experiments and Numerical Applications, pp. 4–86. Springer, Berlin (2002)
Ehlers, W., Häberle, K.: Interfacial mass transfer during gas–liquid phase change in deformable porous media with heat transfer. Transp. Porous Media 114(2), 525–556 (2016). https://doi.org/10.1007/s11242-016-0674-2
European Commission (2018) Commission recommendation (eu) 2018/790 of 25 april 2018 on access to and preservation of scientific information c/2018/2375. http://data.europa.eu/eli/reco/2018/790/oj
Fetzer, T., Becker, B., Flemisch, B., Gläser, D., Heck, K., Koch, T., Schneider, M., Scholz, S., Weishaupt, K.: Dumux 2.12.0. (2017). https://doi.org/10.5281/zenodo.1115500
Fischer, T., Naumov, D.Y., Bilke, L., Rink, K., Lehmann, C., Watanabe, N., Wang, W., Huang, Y., Miao, X., Walther, M., Zheng, T., Parisio, F., Helbig, C., English, M.: ufz/ogs: 6.1.0. (2018). https://doi.org/10.5281/zenodo.1145843
Flemisch, B., Darcis, M., Erbertseder, K., Faigle, B., Lauser, A., Mosthaf, K., Müthing, S., Nuske, P., Tatomir, A., Wolff, M., Helmig, R.: DuMuX: DUNE for Multi-\(\{\)phase, component, scale, physics, \(\ldots \}\) flow and transport in porous media. Adv. Water Resour. 34(9), 1102–1112 (2011)
Flemisch, B., Berre, I., Boon, W., Fumagalli, A., Schwenck, N., Scotti, A., Stefansson, I., Tatomir, A.: Benchmarks for single-phase flow in fractured porous media. Adv. Water Resour. 111, 239–258 (2017). https://doi.org/10.1016/j.advwatres.2017.10.036
Fomel, S., Claerbout, J.F.: Reproducible research. Comput. Sci. Eng. 11(1), 5–7 (2009)
Fuggetta, A.: Open source software—an evaluation. J. Syst. Softw. 66, 77–90 (2003)
Gaston, D., Newman, C., Hansen, G., Lebrun-Grandié, D.: Moose: a parallel computational framework for coupled systems of nonlinear equations. Nucl. Eng. Des. 239, 1768–1778 (2009)
González-Barahona, J.M., Pascual, J.S., Robles, G.: Introduction to Free Software. Free Technology Academy, Amsterdam (2013)
GPL (1991) GNU General Public License, version 2. https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
Gray, W., Hassanizadeh, S.: Macroscale continuum mechanics for multiphase porous-media flow including phases, interfaces, common lines and common points. Adv. Water Resour. 21(4), 261–281 (1998)
Görke, U.J., Günther, H., Nagel, T., Wimmer, M.A.: A large strain material model for soft tissues with functionally graded properties. J. Biomech. Eng. 132(7), 074,502 (2010). https://doi.org/10.1115/1.4001312
Helmig, R., et al.: Multiphase Flow and Transport Processes in the Subsurface: A Contribution to the Modeling of Hydrosystems. Springer, Berlin (1997)
Helmig, R., Class, H., Huber, R., Sheta, H., Ewing, R., Hinkelmann, R., Jakobs, H., Bastian, P.: Architecture of the modular program system MUFTE-UG for simulating multiphase flow and transport processes in heterogeneous porous media. Math. Geol. 2(123–131), 64 (1998)
Huber, R., Helmig, R.: Node-centered finite volume discretizations for the numerical simulation of multiphase flow in heterogeneous porous media. Comput. Geosci. 4(2), 141–164 (2000). https://doi.org/10.1023/A:1011559916309
Hutter, K., Jöhnk, K.: Continuum Methods of Physical Modeling: Continuum Mechanics, Dimensional Analysis, Turbulence. Springer, Berlin (2004)
Huyghe, J., Janssen, J.: Quadriphasic mechanics of swelling incompressible porous media. Int. J. Eng. Sci. 35(8), 793–802 (1997)
Islam, A.W., Sepehrnoori, K.: A review on SPE’s comparative solution projects (CSPs). J. Pet. Sci. Res. 2(4), 167–180 (2013)
Ji, W., Waas, A.M., Bazant, Z.P.: On the importance of work-conjugacy and objective stress rates in finite deformation incremental finite element analysis. J. Appl. Mech. 80(4), 041,024 (2013). https://doi.org/10.1115/1.4007828
Keilegavlen, E., Fumagalli, A., Berge, R., Stefansson, I., Berre, I.: PorePy: An Open-Source Simulation Tool for Flow and Transport in Deformable Fractured Rocks. (2017). arXivorg http://arxiv.org/abs/1712.00460
Kelly, D.F.: A software chasm: software engineering and scientific computing. IEEE Softw. 24(6), 119–120 (2007). https://doi.org/10.1109/MS.2007.155
Kelly, D.F., Sanders, R.: Assessing the quality of scientific software. In: PROCEEDINGS, First International Workshop on Software Engineering in Computational Science and Engineering (2008)
Kempf, D., Koch, T.: System testing in scientific numerical software frameworks using the example of dune. Arch. Numer. Softw. 5(1), 151–168 (2017). https://doi.org/10.11588/ans.2017.1.27447
Kim, G., Humble, J., Debois, P., Willis, J.: The DevOps Handbook. IT Revolution Press, Portland (2016)
Kitzes, J., Turek, D., Deniz, F.: The Practice of Reproducible Research: Case Studies and Lessons from the Data-intensive Sciences. Univ of California Press, Berkeley (2017)
Kolditz, O.: Computational Methods in Environmental Fluid Mechanics. Springer, Berlin (2002). https://doi.org/10.1007/978-3-662-04761-3
Kolditz, O., Görke, U.J., Shao, H., Wang, W.: Thermo-Hydro-Mechanical-Chemical Processes in Fractured Porous Media: Benchmarks and Examples, vol. 86. Springer, Berlin (2012)
Kolditz, O., Nagel, T., Shao, H., Wang, W., Bauer, S. (eds.): Thermo-Hydro-Mechanical-Chemical Processes in Fractured Porous Media: Modelling and Benchmarking. Terrestrial Environmental Sciences, Springer International Publishing, Cham, (2018a). https://doi.org/10.1007/978-3-319-68225-9
Kolditz, O., Nagel, T., Shao, H., Wang, W., Bauer, S. (eds.): Thermo-Hydro-Mechanical-Chemical Processes in Fractured Porous Media: Modelling and Benchmarking: From Benchmarking to Tutoring. Springer (2018b). https://doi.org/10.1007/978-3-319-68225-9
Kurtzer, G.M., Sochat, V., Bauer, M.W.: Singularity: scientific containers for mobility of compute. PLOS ONE 12(5), e0177,459 (2017). https://doi.org/10.1371/journal.pone.0177459
Lauser, A.: Theory and numerical applications of compositional multi-phase flow in porous media. Ph.D. thesis, University of Stuttgart, (2014). https://doi.org/10.18419/opus-516
Lehmann, C., Kolditz, O., Nagel, T.: Models of thermochemical heat storage. Comput. Model. Energy Syst. (2018). https://doi.org/10.1007/978-3-319-71523-0
Lichtner, P.C., Hammond, G.E., Lu, C., Karra, S., Bisht, G., Andre, B., Mills, R., Kumar, J.: Pflotran user manual: A massively parallel reactive flow and transport model for describing surface and subsurface processes. Tech. rep., Los Alamos National Lab.(LANL), Los Alamos, NM (United States); Sandia.. (2015)
Lie, K., Krogstad, S., Ligaarden, I.S., Natvig, J.R., Nilsen, H.M., Skaflestad, B.: Open-source matlab implementation of consistent discretisations on complex grids. Comput. Geosci. 16(2), 297–322 (2012). https://doi.org/10.1007/s10596-011-9244-4
Lie, K.A.: An Introduction to Reservoir Simulation Using MATLAB/GNU Octave: User Guide for the MATLAB Reservoir Simulation Toolbox (MRST). Cambridge University Press, Cambridge (2019)
Lie, K.A., Bastian, P., Dahle, H.K., Flemisch, B., Flornes, K., Rasmussen, A., Rustad, A.B.: OPM—open porous media. Unpublished (2009)
Logg, A., Mardal, K.A., Wells, G.: Automated Solution of Differential Equations by the Finite Element Method: The FEniCS Book, vol. 84. Springer, Berlin (2012)
Loukides, M.: What is DevOps? O’Reilly Media (2012)
Maas, S.A., Ellis, B.J., Ateshian, G.A., Weiss, J.A.: Febio: finite elements for biomechanics. J. Biomech. Eng. 134(1), 011,005 (2012). https://doi.org/10.1115/1.4005694
Maxwell, R., Condon, L., Kollet, S.: A high-resolution simulation of groundwater and surface water over most of the continental us with the integrated hydrologic model parflow v3. Geosci. Model Develop. 8(3), 923 (2015)
McDonald, M., Harbaugh, A.: The history of MODFLOW. Ground Water 41(2), 280–283 (2003)
McMillan, S.: Making Container Easier with HPC Container Maker. In: In HPCSYSPROS18: HPC System Professionals Workshop, Dallas, TX, (2018). https://github.com/HPCSYSPROS/Workshop18/tree/master/Making_Container_Easier_with_HPC_Container_Maker
Morin, A., Urban, J., Sliz, P.: A quick guide to software licensing for the scientist-programmer. PLoS Comput. Biol. 8(7), e1002,598 (2012)
Müthing, S.: A flexible framework for multi physics and multi domain PDE simulations. Ph.D. thesis, University of Stuttgart, (2015). https://doi.org/10.18419/opus-3620
Nagel, T., Beckert, S., Lehmann, C., Gläser, R., Kolditz, O.: Multi-physical continuum models of thermochemical heat storage and transformation in porous media and powder beds—a review. Appl. Energy 178, 323–345 (2016). https://doi.org/10.1016/j.apenergy.2016.06.051
Naumov, D.Y., Fischer, T., Bilke, L., Rink, K., Lehmann, C., Watanabe, N., Wang, W., Huang, Y., Lu, R., Chen, C., Bathmann, J., Miao, X., Yoshioka, K., Shao, H., Walther, M., Zheng, T., Parisio, F., Thiele, J., Grunwald, N., Helbig, C., Buchwald, J., Nagel, T.: ufz/ogs: 6.2.0. (2019). https://doi.org/10.5281/zenodo.2600045
Oberkampf, W.L., Trucano, T.G., Hirsch, C.: Verification, validation, and predictive capability in computational engineering and physics. Appl. Mech. Rev. 57(5), 345–384 (2004). https://doi.org/10.1115/1.1767847
Open Source Initiative: What is “free software” and is it the same as “open source”?. (2018). https://opensource.org/faq#free-software, Accessed 11 Dec 2018
Prud’Homme, C., Chabannes, V., Doyeux, V., Ismail, M., Samake, A., Pena, G.: Feel++: A computational framework for galerkin methods and advanced numerical methods. In: ESAIM: Proceedings, EDP Sciences, vol. 38, pp. 429–455 (2012)
Puder, A.: Ubiquitous computing environments through open systems. In: Patel, D., Choudhury, I., Patel, S., de Cesare, S. (eds.) OOIS’2000, 6th International Conference on Object Oriented Information Systems, pp. 200–210. Springer, London, UK (2000)
Raymond, E.S.: The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary. O’Reilly Media, Sebastopol (1999)
Segal, J., Morris, C.: Developing scientific software. IEEE Softw. 25(4), 18–20 (2008). https://doi.org/10.1109/MS.2008.85
Segol, G.: Classic Groundwater Simulations Proving and Improving Numerical Models. Prentice-Hall, Amsterdam (1994)
Stallman, R.: The GNU project. (2018). https://www.gnu.org/gnu/thegnuproject.en.html, Accessed 12 Dec 2018
Stodden, V.: The legal framework for reproducible scientific research: Licensing and copyright. Comput. Sci. Eng. 11(1), 35–40 (2009). https://doi.org/10.1109/MCSE.2009.19
Tapscott, D., Williams, A.D.: Wikinomics: How Mass Collaboration Changes Everything. Portfolio, London (2006)
Thacker, B.H., Doebling, S.W., Hemez, F.M., Anderson, M.C., Pepin, J.E., Rodriguez, E.A.: Concepts of model verification and validation. Tech. rep., Los Alamos National Lab., Los Alamos, NM (US) (2004)
Wikipedia: Code review—wikipedia, the free encyclopedia. (2018). https://en.wikipedia.org, [Online; Accessed 07 Dec 2018]
Will Schroeder: Why Open Source Will Rule Scientific Computing | The Kitware Blog. (2010). https://blog.kitware.com/why-open-source-will-rule-scientific-computing/
Wilson, G., Aruliah, D.A., Brown, C.T., Chue Hong, N.P., Davis, M., Guy, R.T., Haddock, S.H.D., Huff, K.D., Mitchell, I.M., Plumbley, M.D., Waugh, B., White, E.P., Wilson, P.: Best practices for scientific computing. PLOS Biol. 12(1), 1–7 (2014). https://doi.org/10.1371/journal.pbio.1001745
Acknowledgements
We would like to express our thanks to the community of developers and users of the described software, in particular to those involved in the long-term projects OpenGeoSys (OGS) and DuMu\(^{\text {x}}\), in which the authors are involved. We thank the Helmholtz Centre for Environmental Research — UFZ for long-term funding and continuous support of the OpenGeoSys initiative (Helmholtz future projects Earth System Modeling (ESM) and Digital Earth). OGS has been supported by various projects funded by Federal Ministries (BMBF, BMWi) as well as the German Research Foundation (DFG). We further thank the Federal Institute for Geosciences and Natural Resources (BGR) for funding and the DECOVALEX initiative for providing an open and productive research environment for the development and validation of coupled models. The OpenGeoSys community thanks Microsoft for sponsoring a part of the QA infrastructure of OGS with their sponsorships for nonprofit organizations. The sustainable development of DuMu\(^{\text {x}}\)profited and profits largely from the projects “Quality assurance in software frameworks on the example of DUNE/PDELab/DuMu\(^{\text {x}}\)” funded by the MWK Baden-Württemberg, the DFG Cluster of Excellence SimTech and the IWR at the University of Heidelberg as well as “Sustainable infrastructure for the improved usability and archivability of research software on the example of the porous-media-simulator DuMu\(^{\text {x}}\)” funded by the German Research Foundation DFG. Finally, we thank the representatives and members of the International Society for Porous Media, InterPore, for the establishment of a vibrant community and discussion platform dedicated to “bridging the gap” between different research disciplines and entities.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Submitted to the Special Issue in Celebration of InterPore’s \(10^{\mathrm{th}}\) Anniversary.
Rights and permissions
About this article
Cite this article
Bilke, L., Flemisch, B., Kalbacher, T. et al. Development of Open-Source Porous Media Simulators: Principles and Experiences. Transp Porous Med 130, 337–361 (2019). https://doi.org/10.1007/s11242-019-01310-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11242-019-01310-1