The Subroutines and Functions
The FORTRAN subroutines and functions available in the TQ-Interface can be classified into categories based on purpose:
- Initialization Subroutines. For example, initializing the workspace, reading the thermodynamic data files, setting default units for thermodynamic quantities, selecting the input and output options, changing the program input and output units
- System Data Manipulation Subroutines. For example, identifying system components, phases, and constituents, redefining the system components, changing the status of components and phases or the system reference state.
- Condition, Stream and Segment Subroutines. For example, defining conditions for an equilibrium calculation, setting conditions for a thermodynamic equilibrium calculation, and setting a new equilibrium segment.
- Calculations and Results Subroutines. For example, calculate equilibriums, get molar Gibbs energy values, and calculate interfacial energy between a matrix phase and a precipitate phase.
- Miscellaneous Subroutines. For example, reinitiate the calculation workspace, set error codes and messages, or set equilibrium calculation options.
Essentially, only subroutines 1, 3, and 4 are required to use the TQ- Interface. In the simplest case, only one or two subroutines are needed from each category.
Additional subroutines are grouped as follows:
- Extra Subroutines–Phase Properties. For example, get Gibbs energy of a phase, mobility of a species in a phase, or check if mobility data for a phase is available.
- Database Subroutines For example, get lists of database names, reject a selected element and get data from the selected database.
- Adaptive Interpolation Schemes. For example, define a function or state variable to be interpolated and get statistics on the usage of the interpolation scheme.
- Composition Set Reordering Routines . For example, initialize IWSR workspace and set ideal composition in a phase.