Skip to content

CemGEMS web app tutorial

Student level

Working with recipe inputs and output results

The input cement recipe is a valid combination of materials (clinker, SCMs, water, etc.) and their constituents, defined using chemical formulae. Template recipes for main types of cement, provided by CemGEMS web app, were initially prepared by the development team using the data collected and recommended by top-level experts in cement chemistry (more about recipe templates here). Using triangles on the left side of the inputRecipes table to expand the recipe, the materials, the constituents, or the formulae, you can navigate into a desired level of the tree-like table, explore the data or edit them as necessary.

CemGEMS computes physical properties in a bottom-up manner, starting from the values assigned for Constituents. For instance, to recalculate the densities, you may enter zeros in the Density column for the whole recipe and for all Materials. After clicking Equilibrate Recipe, you should see non-zero values there; this is because densities for some constituents were provided in the template or for some others - extracted from GEMS internal database. Only if there are no Constituents in the Material, the entered properties of the Material will not be re-calculated. The same rule holds for the properties of the whole recipe with respect to the properties of Materials.

For Constituents in Cement and SCM materials, real elemental compositions (for clinker minerals Alite, Belite etc.) are provided in the recipe template of "min" type. You can check them by expanding the recipe down to the Constituent level and expanding Formulae for a chosen Constituent. If you need to use a different composition in this place, feel free to change the numbers and mention this in the Comment. Be careful with tweaking on the formulae containing iron (Fe) manganese (Mn) or sulfur (S), as this can have a strong effect on the calculated redox potential (pe, Eh) and the assemblage of equilibrated Fe-containing phases.

In recipe templates of "xrf" type, the "Cement" material composition is given in the formula list in %mass values of oxides (SiO2, CaO, Al2O3, ...) as reported in XRF or other bulk chemical analysis data. Templates of "xrf" type cover many cases when clinker phase characterization data (i.e. amounts of clinker constituents and their bulk chemical compositions) are not available. In such recipes, the "Cement" material contains no Constituents, therefore hydration kinetics models of Parrot-Killoh or 4PL/5PL types cannot be applied. The properties of "Cement" are provided in the template, and the extent of hydration can only be controlled by setting the value of ReactExtent for the whole "Cement" material.

Regarding template Reaction Extents for constituents and materials, set for 28 days reaction time. If you have a different idea about reaction extents/degrees, feel free to change them. Reaction extents are calculated top-down, which means that if the recipe-level value is set to 0.1 then all reaction extents of Materials will be multiplied by 0.1. Likewise, if a Material reaction extent value is less than 1 then all values for constituents of this materials will be multiplied by this value.

The resulting ReactExtent values on all levels will be shown in the Residual part of the Result (the ReactExtent values in the Input recipe remain as they were initially entered). The values of Reaction Extent are used for spliting the elemental composition of a Constitutent or Material to a residual part and to add the rest to the equilibrating part. Note that, without regard of what value was assigned to fluid constituents and materials (water, air, salts), they will be treated as having ReactExtent = 1 in all cases.

Changing the degree of hydration

You can explore different degrees of cement clinker (or the whole binder) hydration (values between 0 and 1) by editing and re-equilibrating the recipe. Go back to inputRecipes, expand a recipe, and check the ReactExtent cell content. "1" means a complete hydration extent. Change it to a small number (e.g. 0.01) and click Equilibrate.

In the outputResult, which now emulates some early hydration stage, you should see now more mass in the Residual part and less mass in the Equilibrated part. By cloning the recipe and increasing the whole-recipe ReactExtent value, you can follow changes in the hydrated assemblage due to more reaction progress. The impact of different degree of reaction for a chosen material or a constituent (of cement or SCM material) can be investigated in a similar way. This tedious work is automated in "Hydration"-type processes (more about process templates here).

Calculating the hydrated equilibrium state

Even without entering any quantities, reaction extents, and formula compositions of materials and their constituents, you can compute a partial equilibrium in hydrated cement paste at given temperature, pressure and water/binder mass ratio (w/b). To do this calculation, activate the "Equilibrate Recipe" button.

The result will appear as a (collapsed) "outputResults" table, located below the two horizontal stacked bar charts showing composition (as volumes of phases and constituents) of the cement recipe before (inputRecipes) and after (outputResults) equilibration. The row under Speciation shows some total bulk properties of hydrated cement, as well as input temperature and pressure. Navigate using triangles to expand the Speciation into two tree-like sub-tables: Equilibrated and Residual.

Expand the Residual part to see what materials and constituents did not react completely, and in what amounts they remain present in hydrated cement. Note that all materials or constituents that were given in the recipe a zero quantity or a unity (1) reaction extent (degree of reaction), will not appear in the Residual part. Fluid materials (water, air, salt) are always treated as fully equilibrated and, thus, never appear in the Residual part.

Now expand the Equilibrated part to see (hydrated) stable Phases; expand Phases to see their species, with amounts, concentrations, etc. The Phase column contains actually not the names of phases from GEMS chemical system, but phase name aliases that can be viewed and changed in the phaseAliases table. Each phase entry can be expanded (by clicking upon the triangle) to display the substances (chemical species, end members) comprising the phase. Note that only phases with Quantity exceeding 1e-9 g are present in the Equilibrated table. The last entry in the list of Phases shows the bulk values for the whole equilibrated system, with its elemental composition as (expanded) speciation.

Changing the W/B (water-binder) ratio

In cement recipe, it may be necessary to set or change the W/B mass ratio. CemGEMS makes this really easy. In the input recipe (top-level row), find the W/B_ratio column cell where you can set the desired ratio (usually 0.3 or more). Equilibrate the recipe and look at the effect in the Speciation, Equilibrated part, and on the stacked bar charts for Inputs and Results.

Following changes in temperature or pressure

In the input recipe, you can change the temperature (from 0 C to 99 C) and/or pressure (from 1 bar to 101 bar). Equilibrate and look at the effect of such change in the Speciation, Equilibrated part and on the stacked bar charts for Inputs and Results.

Changing cement composition at materials level

To investigate the effect of e.g. addition of SCMs, expand the recipe to see Materials, and modify Quantity (masses) of Cement and/or SCM as desired (the mass of Water will be automatically adjusted according to given W/B ratio). Click on "Equilibrate Recipe" to see the results.

In the case of Portland cement, if you reduce the addition of SCMs to minimum (less than 1%) or set to zero and equilibrate, then Portlandite phase will surely appear in the Equilibrated part. At some larger addition of SCM (especially silica-rich), Portlandite will disappear because of more C-S-H that can form.

Keeping your task recipes and results traceable

To keep your recipe and results intact and to continue working with another recipe, just create a new recipe, or clone the existing recipe (by entering a new name). In the latter case, all changes that you have done in the recipe will be taken over into the cloned one, and you can continue modifying it further on. In the former case, the new recipe will be created "from scratch" using an appropriate template recipe from the provided selection.

Backup/restore of the input recipe JSON document

You can use the jsoneditor to copy the whole input recipe JSON document into another text editor and save it, if needed. To do this, click on the "Edit JSON data" (pencil-like) icon to the left of "Recipe" in the top-level table header; switch to "Text" mode; select all and copy to clipboard (Ctrl-C or Cmd-C). Then paste to your text editor of choice (some highlight and check JSON documents automatically) and save into a file as JSON document (.json file name extension).

To restore an input recipe, open it in your text editor, select all, copy to clipboard, then go to CemGEMS web app, create or clone a new recipe, click on the "Edit JSON data" (pencil-like) icon to the left of "Recipe" in the top-level table header, go to "Text" mode, select all, and paste the clipboard contents over. Click on the green tick in the upper-left corner of the jsoneditor window to accept the changes and go back to the recipe tree-like table.


Last update: March 19, 2021