(GEMS3) is written in C/C++. It has a modern
windowed multi-document Graphical User's Interface (GUI) that uses the
functionality of Qt v.5 Toolkit for desktops in the form of
dynamically-linked libraries and plugins.
is a cross-platform framework that allows
the same source code to
be compiled and run on all major desktop PC platforms, as well as on
mobile devices. Desktop variants of Qt available under LGPL
license are included in the Qt SDK, which can be downloaded from https://www.qt.io/.
The GEMS3 executable code is produced by linking together Qt dynamic load libraries and plugins provided in Qt5 with the following parts compiled with the GNU C++ compilers:
code for solving chemical equilibrium systems by Gibbs Energy
Minimization (more ...); uses the Jama
TNT C++ library (NIST) for
numerical algebra, but no Qt
functionality. GEMS3K code also includes the TSolMod
class library of built-in
models of mixing in phases-solutions.
GEMS-GUI code, which
contains all the specific code for simple thermodynamic calculations,
database management modules, widgets and dialogs. This part requires
headers for compilation. It uses parts of the SUPCRT92 code
(translated from Fortran to C/C++), and parts supporting the TSolMod
code. The GraphicsDialog is based in part on the work the Qwt
package also contains a "Resources/"
configuration files, default thermodynamic database, help database, and
some pdf documentation files. Set of icons used in GEM-Selektor GUI:
(c) 2012, Gillian
Since version 3.2, the GEMS3 installer contains an updated
default thermodynamic database (TDB). Please, check
for learning about the correct upgrading of the existing GEMS3
installation (v 3.1 or lower) to GEM-Selektor v. 3.2 with the the
updated default TDB.
GEM IPM numerical
controls in this (v.3) program are not compatible
with those in GEM-Selektor v.2. Hence, any old modeling project must be
opened once in 'Remake' mode to reset the numerical controls (correct
results are not guaranteed otherwise!).
GEM-Selektor is built using Qt5.x toolkit which includes the MinGW port of the GNU C++ compiler and linker. It comes as a self-extracting installer file having the name
where <ver> stands for version number (e.g. 3.4.2), <revGUI> is the revision tag number for the GEMS-Vizor part, and <revG3K> is the revision tag number for the GEMS3K code part. The installer (ca. 25 Mb size) is prepared using the 7-zip SFX Maker out of a 7-zip archive that contains a compressed folder Gems3-app and files INSTALL.windows.txt, rungems3.bat and Readme3.txt. The contents of INSTALL.windows.txt file are shown below.
1.1. Download or copy the installer file (e.g. “Gems3.4.2-xxxxxx.yyyyyy-win32-install.sfx.exe”) into a temporary location and execute it as Administrator on Windows 7 and above. The GEMS3 installer will not change any Windows Registry entries.
1.2. The installer will ask where to install/update, suggesting e.g. "C:\GEMS342”. If you accept, the program will be located in "C:\ GEMS342\Gems3-app\". This folder will contain program and resource files, including help database, and the "\DB.default\" folder with the thermodynamic database. Upon the first start of GEM-Selektor, a folder "C:\GEMS342\Library \Gems3\projects\" will be created, where your modelling projects will be stored later. The folder will initially contain some test projects.
1.3. Alternatively, you can type or select another location ("\Program Files" is not recommended), for example "D:\MyWork". In this case, the program will be located in "D:\MyWork\Gems3-app\", and modelling projects- in "D:\MyWork\Library\Gems3\projects\".
1.4. After extracting the files, GEM-Selektor will start automatically; you can exit it and look for a GEMS v3 icon on your desktop, to be used further on for starting the GEM-Selektor code. At a first-time installation, the "....\Library\Gems3\projects\" folder will be created and test projects copied in there from the "....\Gems3-app\Resources\projects\" folder. If the installer is executed for update/upgrade (i.e. into the existing folder containing Gems3-app), the test projects will not be copied even they were updated in the "Resources" location. However, if you install the upgraded version into a new location, the test projects will also be upgraded there, but you will have to copy or move your own modelling projects from the previous location using any file manager.
On Windows 10, it is recommended to edit the GEMS v3 shortcut (by right-click on the icon) such that the program is launched by the Administrator.
1.5. You can also use any file manager to add your existing backed-up old project folders into the "....\Library\gems3\projects\". Backup of modeling projects from this folder needs to be done at least once per day.
1.6. To update the GEM-Selektor code, start the installer and browse to the location where GEMS3 has been previously installed, for example, to "D:\MyWork\". Only files in the "...\Gems3-app\" subfolder will be replaced; your existing modeling and test projects in "...\Library\gems3\projects\" will not be changed.
1.7. To remove the GEM-Selektor code from your computer: use a file manager to locate the installation folder (e.g. "D:\MyWork\Gems3-app\") and delete it. Find the "GEMS3" icon on your desktop and drag it into the Recycle Bin. The modeling projects will remain intact in "D:\MyWork\Library\" folder.
installed, GEM-Selektor occupies ca. 60 Mb on hard disk; a
modeling project can occupy 1 to 100 Mb depending on the size of
project chemical system and number of process-generated records.
Therefore, at least 1 Gb of free HDD space is necessary (SSD disks work
much faster). The program runs, in principle, on any PC with Intel or
AMD processor - from netbooks to desktops - but for better performance,
a quad-core i7 or similar processor with 4 Gb RAM or more is
recommended. The multi-document GUI of GEMS3 looks nice on color
displays with 1600 x 900 or higher resolution.
GEM-Selektor is built using Qt 5.x which requires the clang compiler and linker provided in the actual version of Xcode. GEMS3 comes as a disk image file having the name
where <ver> stands for version number (e.g. 3.4.2), <revGUI> is the revision tag number for the GEMS-Vizor part, and <revG3K> is the revision tag number for the GEMS3K code part. The installer (ca. 30 Mb size) is prepared using the macdeployqt utility of Qt SDK from (updated) /Applications/gems3.app application that has the usual folder structure as required by OS X. The /Applications/gems3.app/Contents/Resources/ contains a file INSTALL.macosx.txt, contents of which are shown below.
2.1. Click on the installer .dmg file (e.g. “Gems3.3.5-xxxxxx.yyyyyy-OSX-x86-64.dmg”) to mount it. A window appears with the application gems3.app.
2.2. Drag the gems3.app from that window to the /Applications folder. The gems3.app contains program and resource files, including help database and /DB.default folder with the thermodynamic database.
2.3. Opening a terminal, go to your home folder, and start GEM-Selektor once by a command:
This will create a subfolder ~/Library/Gems3/projects (if not yet available) in your home directory, where some test modelling projects will be copied, and your own modelling projects will be stored later on. This command will also reset configuration files to point to your actual locations.
2.4. You can add your
old modeling project folders by copying them into
~/Library/gems3/projects/. To locate this folder in Finder, click
on the Mac OSX desktop, then select in the top menu "Go" "Go to
folder...", type "
2.5. To normally start GEM-Selektor, go to /Applications folder and double-click on "gems3.app". To add the GEMS3.3.x icon to Dock, right-click on GEMS3 icon in the Dock, and select "Keep in Dock".
2.6. To upgrade GEM-Selektor: just move gems3.app from /Applications to Trash, and proceed with steps 2.1 through 2.3. Only files in gems3.app will be replaced; your own modelling projects, located in the ~/Library/gems3/projects/ folder, will not be affected.
When installed, GEM-Selektor occupies ca. 65 Mb on hard disk; a modeling project can occupy 1 to 100 Mb depending on the size of project chemical system and number of process-generated records. Therefore, at least 1 Gb of free HDD space is necessary (SSD disks work much faster). The program should run, in principle, on any Mac with Intel processor and OS X 10.7 or higher. For better performance, an iMac, Mac Pro, or Mac Book Pro quad-core i7 or similar processor with 4 Gb RAM or more is recommended. The multi-document GUI of GEMS3 looks nice on color displays with 1600 x 900 or higher resolution.
GEM-Selektor is built using Qt5.x installed in user's home directory, which uses the native GNU C++ compiler and linker. GEMS3 installer comes as a tar.gzip (tgz) archive file having the name
where <ver> stands for version number (e.g. 3.4.2), <revGUI> is the revision tag number for the GEMS-Vizor part, <revG3K> is the revision tag number for the GEMS3K code part, and <bits> stands for 32 or 64 depending on the linux distribution. The installer (ca. 16 Mb size) is prepared on the kubuntu 16.04 LTS 64 bit by compressing the folder "~/Gems3-app/" application that contains the "Resources/" subfolder, gems3 executable, and binary Qt5 libraries and plugins used by gems3. The folder also contains the gems3.bash and gems3.sh batch files for launching GEMS3 program, and the INSTALL.linux.txt file. The contents of the latter are shown below.
3.1. Get the installer (e.g. Gems3.4.5-xxxxxx.yyyyyyy-linux-x86-64-noQt5.tgz file) downloaded from GEMS web site http://gems.web.psi.ch/GEMS3) into your home directory ~/ ("/home/<you>/").
3.2. Unpack the installer to your home directory. This will create a folder "~/Gems3-app/" that contains the program and the resource files, including help database and a "/DB.default/" folder with the thermodynamic database.
3.3. Now create in your home directory a folder like "~/MyGEMS/" and move the folder "~/Gems3-app/" into that folder. Open the terminal, cd into "/Gems3-app/" wherever it is installed, and execute a command:
The GEM-Selektor v.3 program should launch; after you exit it, a folder "/Library/Gems3/projects/" with several test modeling projects will be created at the same level as the "/Gems3-app/" folder.
3.4. (optional) If the program does not start, this most probably means that the Qt5 toolkit is present in the system path (as in the latest KDE linux distributions such as (k)ubuntu 16.04). Then make sure that Qt5 is installed in the system path completely. On (k)Ubuntu linux, run in terminal the command:
On other linux systems, some equivalent command for the respective package manager can do the job.
Then get another installer (e.g. Gems3.4.2-xxx.yyy-linux-x86-64-Qt5.tgz file) from the GEMS web site http://gems.web.psi.ch/GEMS3) and unarchive it as described above. This installer is built on linux kubuntu 16.04 with Qt5 in the system path and does not contain Qt5 frameworks and plugins. In this case, the gems3-app executable must be started directly (i.e. without using rungems3.sh), for the first time as:
and any next time GEM-Selektor should be started as
On linux systems such as Opensuse, CentOS, RedHat Enterprise, etc., this pre-built GEM-Selektor still may not work because of some system library incompatibilities. In this case, it may be necessary to git clone the code from git repository (publicly accessible) https://bitbucket.org/gems4/gems3gui.git and compile/build GEM-Selektor as described in the "Overview" there.
3.5. You can copy the existing third-party projects, or your old project folders into ".../Library/Gems3/projects/". Backup of modeling projects is strongly recommended once a day.
3.6. To create a desktop shortcut for starting GEMS3: copy the file GEMSv3.3.desktop from ".../Gems3-App/ToDesktop/" to the "~/Desktop/" folder; right-click on the GEMSv3 icon on your desktop, select "Properties", and edit the actual location of the of the GEMS3 icon (e.g. /home/<you>/MyGEMS/Gems3-app/gems3.png). Then edit the program start location in the command line (e.g. "/home/<you>/MyGEMS/Gems3-app/rungems3.sh -c" or ”/home/<you>/MyGEMS/Gems3-app/gems3 -c") and save.
3.7. Start GEM-Selektor v3 program by clicking on the desktop icon. If it does not start, check the path in the icon again, or edit the rungems3.sh file by replacing "#!/bin/sh" with b"#!/bin/bash" (depends on the particular linux distribution). On Ubuntu linux 14.04 or up, you can drag the launcher icon from desktop to the launch bar (on the left side) and start GEMS3 by clicking on that icon in the launch bar.
3.8. To update GEM-Selektor, unpack the installer archive and replace with it the existing "/Gems3-app/" folder only (your projects will remain intact in the ".../Library/Gems3/projects" folder).
3.9. To remove GEMS3 from your PC, simply delete both "/Gems3-app/" and "/Library/Gems3/" folders where you have them in your home directory.
All operations described above do not require root privileges.
When installed, GEM-Selektor occupies ca. 65 Mb on hard disk; a modeling project can occupy 1 to 100 Mb depending on the size of project chemical system and number of process-generated records. Therefore, at least 1 Gb of free HDD space is necessary (SSD disks work much faster). The program runs, in principle, on any PC with Intel processor. For better performance, a PC with quad-core i7 or similar processor with 4 Gb RAM or more is recommended. The multi-document GUI of GEMS3 looks nice on color displays with 1600 x 900 or higher resolution.
On some linuxes, the default font size in GEMS module windows may appear odd (too small or too large). This can be fixed in Preferences Dialog. Start GEMS3 and click "Help" "Preferences" menu command, then click the "Change font..." button. Alternatively, try the system desktop "Appearance" settings for fonts.
If GEMS3 program does not start properly:
Check that the paths to executable and Resources are correct in the shortcut or in the command-line batch file.
Try again starting GEMS3 with -d command line key to re-initialize configuration files.
On Linux, check that you installed a compatible variant, e.g. 32-bit on 32-bit linux. Re-install, if necessary.
Only one instance of GEMS3 can run in the computer memory. Kill the previous instance and start GEMS again.
If GEMS3 crashes
when the user tries to open a modeling project:
If this does not help, please contact the GEMS Development Team.