Werkstoffwoche '96, Symposium 8 Simulation, Modellierung, Informationssysteme, (1997), 47 ( ISBN 3-88355-236-4, published by DGM Informationsgesellschaft mbH, Hamburger Allee 26, D-60486 Frankfurt, Germany)
GTT-Technologies, Kaiserstraße 100, 52134 Herzogenrath, GermanyKeywords: chemapp
Note This text is a web-ified and updated version of the original article
ChemApp is derived from the renowned ChemSage family of thermochemical calculation programs, which are widely used in universities, corporate and government laboratories.
It offers new possibilities and perspectives for the use of thermochemical calculations across a wide spectrum of applications by providing an easily programmable interface to complex equilibrium calculation techniques.
ChemApp consists of a library of subroutines for data handling and phase equilibrium calculation purposes. It is available as an object code library for a variety of platforms and can be added as a module to virtually any existing or new software, major application areas are CFD (computational fluid dynamics) and process simulation programs.
ChemApp is described, and selected ongoing projects involving ChemApp are briefly introduced.
Over the last years, it became obvious that many programs would benefit from the ability to calculate chemical equilibria. However, substantial know-how in the field of computational thermochemistry is necessary to design the code needed, even for modest problems. As soon as multicomponent, multiphase complex equilibrium calculations are required, the need for a highly specialized, modular third-party code becomes obvious. To fill this need, ChemApp was developed within the framework of a European Science project at the Lehrstuhl für Theoretische Hüttenkunde at the RWTH Aachen, Germany /95Eri/. It is based on improved equilibrium routines of ChemSage /90Eri/, enhanced by a set of interface routines to allow their easy integration into existing programs (see Figure 1).
Figure 1: Schematic representation showing the integration of ChemApp into a process modeling or simulation program.
It should also be noted that not only perfect equilibrium states may be considered. The modeling of thermodynamic properties also includes extrapolations into metastable states, thus driving forces for transformations, for instance, can be calculated. Furthermore, the availability of ChemApp as a module enables researchers working in the field of modeling of kinetic phenomena to use it for calculating local or partial equilibrium conditions within their kinetic models. Work is already under way into this direction.
2 General features
A thermodynamic system consists of a number of phases, where some may have a composition expressed as amounts of a number of phase constituents, and others can have an invariant composition. Phases are divided into three groups in ChemApp - the gaseous phase, condensed mixtures, and condensed stoichiometric phases. For convenience, a condensed stoichiometric phase is considered to consist of a single phase constituent only.
Phases and phase constituents always have thermochemical properties (activities, chemical potentials, enthalpies, volumes, etc.). Phase constituents have compositions expressed as amounts of a number of components.
A component is a system-wide entity. Sometimes this is stressed by calling it a system component. In ChemApp, as well as in ChemSage, components are usually the elements, but they may also be composed of elements in any combination. In the latter case the stoichiometric formulae of the components must be linearly independent.
2.2 Thermochemical data and mixture models
The same comprehensive library of models for non-ideal solution phases available in ChemSage is also built into ChemApp (see Table 1). Thus, the wide range of existing thermochemical data for ChemSage is available for ChemApp too. ChemApp also uses the same thermochemical data-file format as ChemSage.
1 Solution models available in ChemApp
Only three stages of simple programming are necessary to proceed from initialisation of ChemApp to collection of results
In the simplest cases, each programming step requires calling only one or two of the ChemApp interface routines. For more complicated applications, the number of routines called in each step increases; however, the demands on programming capabilities are never particularly difficult.
3.1 Initialising the interface and reading a thermodynamic data-file
This first step of each program entails initialising the interface, reading a thermodynamic data-file into the program, and changing default units, if necessary.
3.2 Adjusting the chemical system
A further series of programming subroutines enable the chemical system to be adjusted to match the requirements of the calculation
The latter group of routines provide a very useful set of tools, since they allow the suppression of otherwise stable phases in order to calculate metastable conditions. Also, by elimination of phases and/or constituents which are known not to be stable under the chosen conditions, considerable increase in computation speed can be gained.
3.3 Setting the initital conditions for the equilibrium calculations
ChemApp offers considerable flexibility for defining initial conditions for a chemical equilibrium calculation. Two different methods are available that will cover most cases experienced in practice.
3.4 Performing the calculation and collecting results
Only one subroutine needs to be called to execute phase equilibrium calculations defined by pressure, temperature, and input composition.
Like ChemSage, ChemApp is also able to perform extensive property target calculations (defined by an extensive property change) and phase target calculations (defined be the search for a particular phase). If, in the previous step, such a target calculation has been defined, the necessary additional information is supplied upon calling the equilibrium calculation routine. Results from a phase equilibrium calculation are retrieved by using only a single subroutine.
For the following variables results can be obtained
ChemApp can also calculate the thermodynamic properties, Cp, H, S, and G, of a phase and its constituents.
4 Application examples
Brief descriptions of several projects which are currently under way and employ ChemApp as the core of the dedicated programs involved are given below (for an up-to-date list of projects involving ChemApp see the ChemApp section of GTT's Technical Thermochemistry Web Page (http//www.gtt-technologies.de).
The Åbo Black-Liquor Recovery Boiler Advisor This program, developed at Åbo Akademi University, is intended to provide information about the high-temperature ash and flue gas chemistry in black liquor recovery boilers of kraft pulp mills. Utilizing ChemApp for the calculation of the complex phase equilibria, the program can be used for predictions of a variety of furnace and flue gas phenomena, such as fireside fouling of the heat exchanger surfaces caused by the flue gas particulate matter, emissions of SO2(g), HCl(g), and NOx(g) with the flue gas etc. The program determines the composition of the flue gas as well as the amount and composition of the two typical fly ash fractions found in recovery boiler flue gases, the condensed fly ash particles and the carry over particles. These data are used for calculating the melting behavior of the fly ash present at different locations in the boiler and this characteristic behaviour is used for the fireside fouling predictions.
Combination of Reaction Kinetics with Gibbs Energy Minimization ChemApp is applied together with a new method called RATEMIX® to calculate multicomponent chemical reaction mixtures as a series of sequential thermochemical states. The procedure combines multicomponent thermodynamics with chemical kinetics and may be used to simulate the multicomponent reactors as a thermochemical 'natural process'. It combines the desired reaction rates sequentially with constrained Gibbs energy minimisations. The method is applicable in processes where the core thermodynamic and kinetic data of the system are known and the time-dependent heat transfer data can either be measured or estimated by calculation. The reactor simulations already performed using this method include high temperature aerosol reactors (e.g. TiCl4 oxidation), zinc vapor oxidation during zinc condensation, counter-current rotary drums with chemical reactions, causticisation of aqueous (impure) sodium carbonate solution with lime.
Improved coatings on metals using fluidized bed thermochemical treatments The objectives of the project are to develop improved multielement high temperature coatings based on Al/Cr/rare earth combinations and Ti-based hard wear resistant coatings using fluidized bed (FBT) and plasma fluidized bed (PFBT) technology. ChemApp is used to predict the conditions (temperature, type, and amount of materials used) under which the formation of the desired coating phases is most probable.
Numerical simulation of YBaCuO-growth phenomena using the phase field method Numerical modeling of the growth of superconducting materials is beneficial with respect to both process control and the understanding of growth phenomena. The phase field method has been used to treat the evolution of a solid-liquid interface and has been extended to describe aspects of the multiphase system YBaCuO. The faceted growth of both the properitectic and peritectic phases and its dependence upon Y-diffusion in the liquid phase has been calculated by a dedicated program utilizing ChemApp.
ChemApp as a module for CFD programs After an early version of ChemApp was used successfully as an add-on to the CFD program Phoenics, further projects in this direction are under way, demonstrating that complex equilibrium thermochemistry can be a valuable enhancement to the CFD modeling code.