+A  Click here to enlarge/reduce to/back from full screen 
Paul Scherrer Institut PSI GEM Software (GEMS) Home

Paul Scherrer Institut
5232 Villigen PSI, Schweiz/Switzerland
Tel. +41 56 310 21 11
Fax. +41 56 310 21 99

E-Mail: gems2.support@psi.ch

Printer Friendly Printout without Logo or Navigation Elements available here... just click and print


Standalone Solver of Chemical Equilibria for Coupled Simulation Codes

  • Can model very complex (geo)chemical systems with many phases - nonideal solutions

  • Variable T,P; substantially improved Gibbs Energy Minimization algorithm

  • GEMS3K code is fast, delivers accurate results, excellent mass balance precision

  • Written in C/C++, available with source code, completely parallelizable on HPC architectures

  • Used in coupled reactive mass transport simulation codes such as OpenGeoSys-GEM

  • Used in generic parameter fitting codes such as GEMSFITS

  • Input files for GEMS3K can be exported per mouseclick from GEM-Selektor package

Download Docs Benchmarks Status

Attention: To download the latest (trunk) version of the GEMS3K source code under LGPL v.3 license, open your web browser and navigate to https://bitbucket.org/gems4/gems3k. Follow the instructions in Readme.md there (best, have Git installed - provided by default in Macos and Linux, for Windows 10 check https://git-scm.com/download/win). The current trunk HEAD corresponds to GEM-Selektor v.3.7.0.  

GEMS3K (formerly GEMIPM2K) is a standalone C/C++ code implementing the efficient numerical kernel IPM-3 of the GEM-Selektor v.3 package for geochemical  thermodynamic modeling of local/partial equilibria in complex heterogeneous multicomponent-multiphase systems. The code includes TSolMod library of built-in phase models of non-ideal mixing, relevant to a wide range of applications in geochemistry (more...). GEMS3K uses fast and efficient linear algebra solvers from the JAMA C++ TNT package (NIST).

The GEMS3K code results from substantial developments of the convex programming Gibbs energy minimization algorithms achieved since 2000, when the support of GEM-Selektor code was taken over by LES PSI (since 2008 jointly with IGP ETHZ; since 2012 also jointly with the University of Helsinki). Since 2015, development of GEMS3K proceeds also in collaboration with IG GEG at ETHZ and with IML at RWTH Aachen.

GEMS3K code can be downloaded and coupled to reactive mass transport simulation codes, also running on high-performance computers, in particular, OpenGeoSys or CSMP++. Input files (in text format) for GEMS3K can be exported per mouse-click from the GEM-Selektor v.3  package, or prepared manually using any simple ASCII text editor. The runtime data exchange within the coupled code can be implemented in computer memory using TNode class functions.

Use of GEMS3K is granted under Terms and Conditions of use of GEM Software. In addition, in order to promote broad application in hydro(thermal)-/ waste geochemistry and related research communities, the standalone GEMS3K code is released open-source under Lesser GPL v.3 license. Potential areas of code application include coupled reactive mass transport codes, parameter fitting packages, and phase diagram plotting tools.

More about the GEMS3K code can be learned from publications:

  • Kulik D.A., Wagner T., Dmytrieva S.V., Kosakowski G., Hingerl F.F., Chudnenko K.V., Berner U. (2013): GEM-Selektor geochemical modeling package: revised algorithm and GEMS3K numerical kernel for coupled simulation codes. Computational Geosciences 17, 1-24. doi.

This paper in an author-created pdf version can be found here. The final publication is available at springerlink.com via http://dx.doi.org/10.1007/s10596-012-9310-6.

  • Wagner T., Kulik D.A., Hingerl F.F., Dmytrieva S.V. (2012): GEM-Selektor geochemical modeling package: TSolMod library and data interface for multicomponent phase models. Canadian Mineralogist 50, 1173-1195. doi.

The TSolMod library is an integral part of GEMS3K, used in solving for equilibrium in any system containing at least one solution (multi-component) phase, and essential if any built-in non-ideal solution phases (fluids, solid solutions) are involved. Even the simplest aquatic equilibrium calculation makes use of Davies or Debye-Hückel models that are implemented consistently in TSolMod library. Hence, citing this paper will streamline and shorten your manuscript by letting you concentrate on relevant problem setupand your modeling results.


Last update: 25.03.2020

Copyright (c) 2012-2020  GEMS Development Team