OpenGeoSys-6.2: Annual report

Jasper Bathmann, Lars Bilke, Jörg Buchwald, Chaofan Chen, Thomas Fischer, Norbert Grunwald, Yonghui Huang, Olaf Kolditz, Thomas Kalbacher, Christoph Lehmann, Renchao Lu, Fabien Magri, Xing Miao, Thomas Nagel, Dmitri Naumov, Erix Nixdorf, Francesco Parisio, Karsten Rink, Haibing Shao, Marc Walther, Wenqing Wang, Norihiro Watanabe, Keita Yoshioka, Tyanyuan Zheng

The code

OGS initiative timeline

Original development

Rockflow

RF2

RF3

GeoSys/RF

Fortran

Fortran

Fortran

C

...

1986

1991

1997

2004

Modern times

OGS-5

OGS-6.0

OGS-6.1

OGS-6.2

...

C++03

C++11

C++14

C++17*

2009

2013

2017

2019

OGS-6 code statistics

Testing and Continiuous Integration

  • Code reviews
  • Compilation on Linux, MacOS, and Windows using gcc, clang, and visual studio compilers
  • Unit tests covering fundamentals
  • Numerical tests/benchmarking
  • Other test criteria include:
    • compilation warnings
    • static analysis warnings
    • missing documentation

Implemented processes (HT)

  • Elliptic, Parabolic
  • Component transport
  • Heat transport w/ BHE
  • Hydro thermal
  • 2-phase flow (p-p and p-ϱ formulation)
  • Thermal 2-phase flow (p-p formulation)
  • Liquid flow
  • Richards flow
  • Richards component transport
  • Thermal energy storage

Implemented processes (M+)

  • Small deformation {LIE, phase field, non-local damage}
  • Hydro mechanics {LIE, phase field}
  • Richards mechanics
  • Thermo mechanics {phase field}
  • Python boundary conditions and source terms
  • MFront coupling

New processes

Other changes

https://github.com/ufz/ogs/releases

Current development

  • TH²M process including multi-component, multi-phase materials support
    Norbert Grunwald, BGR/UFZ
  • IPhreeQC coupling for to a component transport process.
  • Linear elastic orthotropy

HPC scaling and efficiency

Testing of density driven flow on JUWELS with ca. 13.2 million DOFs. Runtime about 40000s at 720 cores.

Thomas Fischer, UFZ

Questions, wishes, feedback?