+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



Updated:
17.06.2021
E-Mail: gems2.support@psi.ch


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

GEM-Selektor v.3 Technical Information 


GEM-Selektor v.3 (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. 

TrollTech logoQt 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 some mobile devices. Desktop variants of Qt available under LGPL license are included in the Qt SDK, which can be downloaded from https://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:

  • GEMS3K 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 Qt headers for compilation. It uses parts of the SUPCRT92 code (translated from Fortran to C/C++), and parts supporting the TSolMod code. The GraphicsDialog  was based in part on the work the Qwt project (http://qwt.sf.net). Since release 3.6.0, the GEMS-GUI uses the QTchart extension of Qt5.12 toolkit, which requires GEMS-GUI source code to be released under GPL v.3 license.

The GEMS3 package also contains a "Resources/" folder with configuration files, default thermodynamic database, help database, and some pdf documentation files. Set of icons used in GEM-Selektor GUI: (c) 2012, Gillian Grün.

Attention: Since version 3.2, the GEMS3 installer contains an updated default thermodynamic database (TDB). Please, check here 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.

Attention: 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!).

  • To do so, start GEMS3; click on the 'Computation of Equilibria' button in the upper left corner; in the appearing dialog, turn on the 'Activate Project Remake Wizard' checkbox; select the project in the list of modeling projects, and click 'Open Project'. In the appearing 'Step 1 ...' page of the Project Wizard, 'Change pre-configured GEM IPM numerical controls' to 'Restore normal (standard) variant for fast convergence' or another suitable choice, and click 'Next >' twice. The new settings will be saved in the project record, so there will be no need to repeat this procedure when this project is opened next time.

Platform-specific technical information

Windows 7 or Windows 10

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

  Gems<ver>-<revGUI>.<revG3K>-win32-install.sfx.exe 

where  <ver>  stands for version number (e.g. 3.6.0), <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.

To install GEM-Selektor on a Windows PC:

1.1. Download or copy the installer file (e.g. �Gems3.6.0-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. 

When 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.

Mac OS X (10.11 to 10.14)

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

  Gems<ver>-<revGUI>.<revG3K>-OSX-x86-64.dmg 

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.

To install GEM-Selektor on Mac OS X:

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:

    ~$ exec /Applications/gems3.app/Contents/MacOS/gems3 -d

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 "~/Library" in the appearing dialog, and click the "Go" button. Backup of modelling projects is strongly recommended to do at least once per day. 

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.

Linux

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

  Gems<ver>-<revGUI>.<revG3K>-linux-x86-<bits>.tgz

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.

To install GEMS3 on linux (Ubuntu >= 16.04):

3.1. Get the installer (e.g. Gems3.4.5-xxxxxx.yyyyyyy-linux-x86-64-noQt5.tgz file) downloaded from GEMS web site https://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:

  $ ./rungems3.sh -d  

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:

  $ sudo apt-get install qt5-default qttools5-dev libqt5svg5 libqt5help5


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 https://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:

$ cd /home/<me>/GEMS/Gems3-app/gems3 �d

and any next time GEM-Selektor should be started as 

$ cd /home/<me>/GEMS/Gems3-app/gems3 �c

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.



Troubleshooting

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:

  • Restore two files with names containing "projec" from the backup of project database folder.

If this does not help, please contact the GEMS Development Team.



Last updated:  19. 05. 2019

� 2003-2019  GEMS Development Team.