There is a newer version of this record available.

Software Open Access

ufz/ogs: 6.2.0 Release Candidate 1

Dmitry Yu. Naumov; Tom Fischer; Lars Bilke; Karsten Rink; Christoph Lehmann; Norihiro Watanabe; wenqing; Yonghui56;; Chaofan Chen; jbathmann; xingyuanmiao; KeitaYoshioka; HBShaoUFZ; Marc Walther; Tianyuan Zheng; fparisio; ogsbot; ThieJan; NoCodeYet; carolinh; nagelt

Dublin Core Export

<?xml version='1.0' encoding='utf-8'?>
<oai_dc:dc xmlns:dc="" xmlns:oai_dc="" xmlns:xsi="" xsi:schemaLocation="">
  <dc:creator>Dmitry Yu. Naumov</dc:creator>
  <dc:creator>Tom Fischer</dc:creator>
  <dc:creator>Lars Bilke</dc:creator>
  <dc:creator>Karsten Rink</dc:creator>
  <dc:creator>Christoph Lehmann</dc:creator>
  <dc:creator>Norihiro Watanabe</dc:creator>
  <dc:creator>Chaofan Chen</dc:creator>
  <dc:creator>Marc Walther</dc:creator>
  <dc:creator>Tianyuan Zheng</dc:creator>
New processes

HeatTransportBHE process supporting 1U, CXA, and CXC BHE types. #2221, #2332,
#2271, #2275
Staggered implementation of a thermo-mechanical with phasefield process. #2102
Richards mechanics process. #2189
Small deformation process with non-local integration of damage. #2294
Staggered implementation of phasefield process. #2052
ComponentTransport process in revised formulation. #2200
Multi-component transport process. #2304

Other process' changes

A Jacobian tester: a process's Jacobian assembly can be compared to a
numerical Jacobian (mostly for development. #2238
Add setInitialConditions() call to processes and local assemblers. #2334
Several bug fixes for LIE/HM process including "fracture into matrix
leak-off", Darcy velocity output in the fracture. #2129
Support for intersecting fractures (x-crossing and t-junction) in LIE/SD
process. #2235, #2293
Fixed the calculation of the Darcy velocity in staggered TH. #2127


Staggered scheme for coupled processes with different orders of elements.
Subdomain deactivation within time intervals. #2297
Add a driver for an iteration based time stepping algorithm. #2318

Boundary condition

Implementation of Python boundary conditions. #2170
Implementation of constraint boundary conditions. #2145
Dirichlet boundary condition within a time interval. #2272
BoundaryElementSearch: Return bulk element id and bulk element face id. #2125
Removed Neumann boundary condition for displacement jumps in LIE processes.

Source term

Use parameter for source terms. #2061
Volumetric source terms implementation. #2220, #2234, #2241, #2261

Input and output

Writing and reading of integration point data. Implemented sigma and epsilon
output for some processes. #2071, #2203, #2324
Add input of vtu-meshes for boundary conditions additionally to the gml input.
This is later used by the heterogeneous parameters and source terms. #2140,
#2141, #2156
Parameters may now be explicitly defined on arbitrary subdomains. This merges
the Heterogeneous Dirichlet and Neumann boundary conditions with their,
previously only homogeneous, counterparts. #2376
Parameters now support space-dependent function input via exprtk library.
#2325, #2339
Output of primary variables on arbitrary subdomains. #2372, #2299
Output is possible at specific times for adaptive time stepping and
evolutionaryPIDController. #2079
Calculate and output specific flux. #2411
Enable surface flux calculation for component transport process. #2168
Interpolated pressure (on higher order elements' nodes) output for
Richards-mechanics and hydro-mechanics processes. #2228
Improve output of nodal aperture and aperture vector in LIE/HM. #2050
Add output of nodal forces and hydraulic flow in mechanics and coupled
mechanics processes, SD, HM, LIE/SD, LIE/HM. #2118
Enable surface flux calculation for HT process. #2132
Fixed pvd output. #2036

Material models

BGRa creep model. #2167
New cohesive zone mode I fracture model for LIE processes. #2142, #2157
Add MFront/TFEL solid constitutive relation support via.
MFrontGenericInterfaceSupport library. CMake option OGS_USE_MFRONT. #2259
Infrastructure for multi-phase, multi-component material properties library.
Anisotropic tensors may now be given in given local coordinate system. #2370
Non-constant density model implementation in HC process. #2200
Add second derivatives of permeability functions in Richards flow. #2188
Different solid material models can now be defined on different materialIDs.
#2216, #2262, #2270
Move solid constitutive relation creation in single place. #2160

Testing and documentation

Migrated Appveyor tests to Azure
Pipelines. #2342
Added cppcheck, clang-tidy and include-what-you-use. #2078, #2328, #2377
Added check for header standalone compilation, can be enabled with
Jenkins shows nice summaries of compiler warnings. #2206
Large tests are fixed and run on Jenkins upon master merge. #2056, #2155
Re-enabled code coverage reports (for the testrunner only) with
Codecov. #2333, #2336
Commits containing [ci skip] in the commit message do not trigger a Jenkins
Add vtkdiff test configuration to project files, s.t. the vtkdiff tests are
performed after successful run comparing output to reference files. This
possibility is also reflected in a new CMake function OgsTest as an
alternative to the AddTest. #2255, #2257

New tools

TecPlotTools: splitting files containing multiple zones into seperate
TecPlot files. #2114
TecPlot-Reader: converting TecPlot rasters into OGS meshes (one file per
zone, containing all variables as scalar arrays). #2114
Construction of boundary meshes from bulk mesh and gml files. #2144
Identification of boundary meshes (or any subdomains in general) in the bulk
mesh. Performs geometrical tests and creates and verifies necessary
bulk_node_ids and bulk_element_ids maps. #2227, #2252
Mesh2Raster: converts 2D OGS meshes into raster files of arbitrary pixel
size, where node elevation is represented by pixel value. #2367
GocadSGridReader tool reading the Gocad/SKUA stratigraphic grid format and
writing the data in the vtu format. #2316

New tools and CLI usage

ogs --help shows the given CMake options. #2210
Unify command line version info output. #2194
Rewrite partmesh tool and add partitioning of boundary meshes (or subdomains
in general) according to the partition of the bulk mesh. #2159, #2178, #2195
Add new features to ExtractSurface tool. #2387, #2401
updated utility moveMeshNodes: algorithm for mesh on mesh mapping now
calculates exact node elevation instead of using interpolation. #2390

Data Explorer

Listing of source terms and boundary conditions in Data Explorer DataView (no
visualisation yet). #2110
Mesh element removal can now remove elements based on value ranges of
arbitrary scalar arrays (currently only int- and double arrays are supported).
added custom VTK filter to represent raster data as point clouds. #2121
geometrical points can now be converted into station points. #2369
fixed issue with geometrical surfaces not being loaded correctly. #2388

Other notable code changes

C++17 standard is enabled and is allowed in the production code (given the
compiler support). #2298
Separate monolithic ProcessLib into individual processes. Now it is possible
to build ogs with selected processes only. This also improves linking times.
Parameters are extracted in own library. #2413
Port secondary variable extrapolation and output for PETSc builds. #2082
Extend Kelvin mapping functions and move implementation to MathLib. #2060,
#2075, #2044
Collect generic algorithms in single header file. #2161
Remove unused MeshSubsets class. #2135
Removed writing of xsd header in XML files, #2198


Migrated LFS storage from GitLab to Artifactory.
Optimized ctest runtime by starting long-running benchmarks first. #2310
Proper RPATH handling for shared library installations. #2208
Package OGS inside
container with
Singularity; more
docs. #2193,
Migrated to a static site generator (Hugo)
unifying documentation and general OGS info. #2088, #2095, #2123
Speed-up CMake run time. #2072, #2392

CMake options changes

OGS_USE_PYTHON enables Python BCs. #2170
OGS_BUILD_TESTS was renamed to BUILD_TESTING. #2350
Added OGS_USE_CVODE. #2344
Added OGS_BUILD_PROCESSES for ;-separated list of processes to build.
OGS_USE_CONAN=ON is now the default when conan was found. #2207

Version info

CMake minimum version 3.10
Visual Studio minimum (and tested) version 2017
GCC minimum version 6.2 (tested: 6.4)
Clang minimum version 3.5 (tested: 7.0)
Boost minimum version 1.66.0
VTK minimum version 8.1. #2158
Qt tested version 5.11.2
Python tested version 3.7.2
  <dc:title>ufz/ogs: 6.2.0 Release Candidate 1</dc:title>
All versions This version
Views 47326
Downloads 835
Data volume 1.1 GB27.1 MB
Unique views 40524
Unique downloads 383


Cite as