Software Development Kits

For users who wish to use the power and flexibility of Thermo-Calc in their own application programs, there are three separate software development kits (SDKs) to choose between:

  • TQ-Interface
  • TC-API
  • TC-Toolbox for MATLAB®

Each SDK incorporates an application programming interface (API), a programmer's guide and a collection of example projects to help users get started.

The basic idea behind these kits is that application programmers should be able to retrieve multicomponent thermodynamic data and phase equilibrium results, without having to implement various sophisticated models and to perform equilibrium calculations on their own. The user is simply able to access the calculation core of Thermo-Calc with all its possibilities through the API.

Most of the quantities that are possible to evaluate in Thermo-Calc can be readily extracted. These quantities can be extracted under equilibrium conditions, but also for metastable or non-equilibrium states, by simply changing the status of the phases under consideration.

Examples of quantities and properties that can be extracted through any of the API’s:

  • Amount and composition of phases
  • Phase transformation temperatures, such as liquidus and solidus temperatures
  • Thermochemical properties, e.g. enthalpy, heat capacity, etc.
  • Driving force
  • Diffusion coefficients
  • Derivatives of state functions  
  • Partition coefficients
  • Invariant temperatures, liquidus-/solidus- temperatures and composition-dependence
  • To-temperature, A1/A3/A4-temperatures, adiabatic temperature, chill factors, composition derivatives of temperature, etc.
  • Thermodynamic limits for partitionless transformations and for transformations under para-equilibrium and quasi-paraconditions
  • and many more …

TQ-Interface (Thermodynamic Calculation Interface)
TQ-Interface is designed for time-critical, computationally intensive application software that is most likely but not necessarily written in FORTRAN. It constitutes a collection of FORTRAN subroutines and functions supplied in the form of a DLL (Dynamically Linked Library). There are also C functions matching all the FORTRAN subroutines in order to facilitate users who wish to program in languages other than FORTRAN.

TQ-Interface is successfully used in the MICRESS™ software package (developed by ACCESS e.V., in Aachen, Germany), for simulation of microstructural evolution in multicomponent alloys using a phase-field approach.

TC-API (Thermo-Calc Application Programming Interface)
TC-API consists of a library with C functions and was originally intended to facilitate for programmers who wished to use a programming language other than FORTRAN. It offers access to most of the commands in the TDB, POLY3 and POST-processor modules, as well as to some important commands in the GES5 module. Performance will be lower compared to TQ-Interface.

TC-Toolbox for MATLAB®
The TC-Toolbox for MATLAB® provides an interface to the commonly-used MATLAB® software for scientific and engineering computing. This kit is ideal for fast realisation of ideas and visualization of results during research and development activities. It does not, however, offer calculations that are as fast as the TQ-Interface. Through this toolbox, more than 50 Thermo-Calc commands are made available within MATLAB®, including a set of commands also used for communicating with the DICTRA software.

Availability
Each SDK is available as an add-on to a Thermo-Calc license. In order to run a user-written application program using any of the APIs, it is necessary to have the Thermo-Calc software/database package installed. Additionally,the TC-Toolbox for MATLAB® requires a license for the MATLAB® software. Supported platforms and other requirements are listed under System Requirements.