Estimation of the martensite start temperatures of steels using thermodynamic models
T. Sourmail,


This program implements the thermodynamics models for martensite nucleation as described by Ghosh and Olson [1,2,3,4], to predict the martensite start temperature of steels (Ms) as a function of their composition.

It is written in FORTRAN 77 (apologies, this is so that it can be interfaced with the thermodynamics calculation software MT-DATA [5]).

The program has been divided in different sources, one part containing the subroutines which need MT-DATA to function, the other those which could be used independently.

Copyright and disclaimer blurb:

Permission is granted for anyone to copy, use, modify, or distribute these programs and accompanying documents for any purpose, provided this copyright notice is retained and prominently displayed, along with a note saying that the original programs are available from Thomas Sourmail's web page, and note is made of any changes made to these programs. These programs and documents are distributed without any warranty, express or implied. As the programs were written for research purposes only, they have not been tested to the degree that would be advisable in any important application. All use of these programs is entirely at the user's own risk.


Overall functioning

The purpose of this program is to search for the temperature at which the conditions for martensite nucleation are satisfied. The criterion is simply that the driving force $\Delta G^{\gamma\rightarrow\alpha}$ should be greater or equal to the critical driving force $\Delta G_{c}$.

$\Delta G_{c}$ is a function of the composition and, in the case of the more recent model of Ghosh and Olson [3,4], a function of the temperature.

The program reads the composition of your alloy from an input file, then searches for the temperature at which the criterion for martensite nucleation is satisfied.

The output has been kept very simple so as to simplify the use of the program in scripts. In the following, I assume that you have MT-DATA installed so that it can run/compile third-party applications. If this is not the case, you should contact the National Physical Laboratory.

Installation and test run

Once the archive file downloaded and save it in a directory of your choice. You can then extract the files using:
tar -zxf ms_prediction.tar.gz
There is a precompiled program called Ms together with all the required files for a test run. Compilation was made on RedHat 9.0 and should work on most RedHat version above 7.3. I have experienced problems with older versions as the gcc libraries have changed. Nevertheless, the program can easily be re-compiled and function properly.

To test the software, simply type

at the command prompt, once in the directory containing the program.

You should obtain the following output:

result;2250.88;-321.97; 258.54;2250.88;-303.08; 304.64
result;2435.00;-333.58; 230.19;2386.85;-311.04; 285.22

The first line refers to the results obtained with the first model of Ghosh and Olson [1,2]. There are six consecutive numbers which are: the critical driving force (absolute value) $\Delta G_{c}$ for the given composition, the Gibbs energy for ordering, calculated according to [6,7], and the Ms temperature in Kelvin. For the first three numbers, the ordering contribution is ignored, it is only shown but not included in the comparison of $\Delta G^{\gamma\rightarrow\alpha}$ and $\Delta G_{c}$. The second set of three numbers corresponds to the case where the ordering effect is taken into account in the comparison of $\Delta G^{\gamma\rightarrow\alpha}$ and $\Delta G_{c}$. Note that the ordering contribution is not exactly equal because it affects the Ms temperature and therefore the temperature at which it is evaluated.

The second set of six numbers correspond to the same results as obtained with the more recent method of Ghosh and Olson [3,4], where $\Delta G_{c}$ depends on the temperature through the temperature dependency of the austenite modulus. Note that the program includes a subroutine to evaluate the shear modulus of austenite as a function of composition and temperature that can be used indepently.

If you are not concerned about the detailed description of the files, you can jump to the section on practical use, which describes how to use the accompanying script to make batch predictions, that is predictions on a file containing a large number of compositions.


The main directory should contain the following files:

The source directory

There are 5 source files in this directory, and a small script to compile the program.

Using the script for batch calculations

A script is provided to perform batch calculation on large number of compositions. It is written in Tcl. The Tcl interpreter is installed on most linux distribution by default. If it is not installed on your machine, you need to install first.

To preform a batch calculation, you need a database of compositions saved in the following format (for example, when working with Fe-Mn-C):

Mn C
4.8 0.2
4.7 0.3
4.0 1.0

NOTE: in this case, the composition is always assumed to be given by wt%, and the amount of Fe is set to the balance (100%). Changing the script to alter this behaviour should however be trivial. Lines to modify are indicated in the script.

It is important that the file input.dat is present and pointing to the correct mpi file. The mpi file and Z_phi.csv must also be present as described in section 1. There is no need however to worry about composition.dat.

To start the calculation, type:

./calculate_batch.tcl test_FeMnC.csv
where test_FeMnC.csv is the database as described above.

The program writes the result to the standard output (i.e. most likely your terminal), but also generates a number of files containing the results:

If the SGTE database are used, I have found that the best agreement is obtained using the original method of Ghosh and Olson and accounting for ordering, that is, the second value in all cases.

An example file is provided, called test_FeMnC.csv, it should return the following results for results_Ms:

561.47 561.47 594.07 594.07
522.58 522.58 548.56 548.56
298.29 331.76 278.07 318.1
258.54 304.64 230.19 285.22

NOTES ON THE DATABASE FORMAT: it is very important that your file columns are separated by ONLY ONE SPACE. Do not use tab, comma or anything else to separate columns. Most good spreadsheet softwares such as Open Office ( allow you to export files as column separated values, and to select the separator.


The program writes considerably more information to a file called debug. The first few lines should contain the results of the calculation used to resize the system to one mole:
 Moles and components mole fractions
 FCC_A1          Fe         Mn         C 
.100000E+01  0.9159642  0.0392050  0.0448307


 Weight and components weight fractions
 FCC_A1          Fe         Mn         C 
.538462E-01  0.9500000  0.0400000  0.0100000
If this is not the case, MTDATA hasn't done the job properly. A good guess is that input.dat does not point to the right mpi file, or that the latter is absent or corrupted. A second possibility is that the file composition.dat is not correctly formatted.

If you have other problems, please feel free to contact me.


G. Ghosh and G. B. Olson.
Acta Mat., 42:3361-3370, 1994.

G. Ghosh and G. B. Olson.
Acta Mat., 42:3371-3379, 1994.

G. Ghosh and G. B. Olson.
J. Phase Eq., 22(3):199-207, 2001.

G. Ghosh and G. B. Olson.
Acta Mat., 50:2655-2675, 2002.

National Physical Laboratory, Teddington, Middlesex, U.K., 1989.

C. Zener.
Trans. AIME, 167:513, 1946.

J. C. Fisher.
Metals Trans., 185:688-690, 1949.

About this document ...

This document was generated using the LaTeX2HTML translator Version 2002 (1.62)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 1 -title 'Estimation of the martensite start temperatures of steels using' -white -noparbox_images -math_parsing -notop_navigation -nonavigation -noreuse -dir ./ main.tex

The translation was initiated by on 2004-05-31