Some programs from my thesis

Here you can find some of the programs I wrote or modified during my thesis, I have distributed them here because I hope others can find them useful. You can download them and use them at your own risk, I recommend you read the source code to make sure you know the calculations being performed. If you make modifications you think others will find useful feel free to send me your new versions, or comments on my programs, and I will try to make them available to others too. Happy Computing!


Purpose: Calculate Carbon Content of Austenite and Ferrite from Lattice Parameter using empirical relationships due to Dyson and Holmes.

Source Code: lp2c_v.03.c.

You need to adjust the composition by editing the program, apart from that it is pretty self explanitory.


Purpose: Calculate ferrite and austenite lattice parameters (Cohen's method) and phase fractions from peak positions (Dickson's method). Program also attempts to calculate size and strain from the broadness of the peaks (Williamson and Hall's method).

Source Code: xrdcalc-1.2.c

After compiling the program it will prompt you for the proper inputs. The inputs are peak positions and integrated intensities for ferrite and austenite. These need to be obtained from diffractometer recorded diffraction pattern using peak fitting - I used the commercial software (e.g. Philips Profit™)

Modified version of MAP_CRYSTAL_XRDCALC by Murugananth Marimuthu.

XRDCALC - Lattice Parameters Spreadsheet

Calculate lattice parameters from peak position (Cohen's method), also helps to put data in format needed for input to XRDCALC using file .

Download: XRDCALC-LATTICEPARAM Spreadsheet (xls 2003 SP2).

Structure data

Structural data for austenite and ferrite, e.g. for use with Rietveld refinement software.

Download: aus+ferr.cif (export from Philips Xpert Plus).

Structural data for austenite and ferrite and martensite.

Download: A+F+M.cif (export from Philips Xpert Plus and Philips Highscore Plus).

T32C2T (T-T-T-2-C-C-T)

Purpose: Calculate Continuous cooling transformation (CCT) from time-temperature-transformation TTT according to Scheil additivity. Also calculates depth of hardenability. Can be extended to calculate for arbitrary cooling curves.

Source Code: t32c2t.c.

Documentation: t32c2t code documentation.

Below you can find a demonstration of how to use this program. TTT data is supplied for diffusional and shear transformation times, the program then integrates how much transformation can be expected to occur for each temperature during cooling (Time spent at temperature/transformation start time).

Demo: Download aus1_mucg83_KTEMP_DIFF.txt and aus1_mucg83_KTEMP_SHEAR_360BS_.txt and plot_aus1_gnuplot.txt.

Execute following commands to compile, generate CCT curves, and produce a graph of the results (you need to have gcc and gnuplot installed and instruction assumes all these files are in the same directory).

gcc -lm t32c2t.c -o t32c2t
./t32c2t < aus1_mucg83_KTEMP_DIFF.txt > aus1_result_Diff.txt
./t32c2t < aus1_mucg83_KTEMP_SHEAR_360BS_.txt > aus1_result_Shear.txt

Also see MAP_TTTtoCCTlinear for a fortran program which deals with linear cooling. Read disclaimer first.

Vickers Hardness Calculation Spreadsheets

Calculate hardness from size of Vickers hardness indentations.

Download: Vickers Hardness Spradsheet (gnumeric 1.8.3).

Download: Vickers Hardness Spreadsheet (MS Excel™ 97/2000/XP & 5.0/95).