[MAP Logo]

Materials Algorithms Project
Program Library


  1. Provenance of code.
  2. Purpose of code.
  3. Specification.
  4. Description of program's operation.
  5. References.
  6. Parameter descriptions.
  7. Error indicators.
  8. Accuracy estimate.
  9. Any additional information.
  10. Example of code
  11. Auxiliary routines required.
  12. Keywords.
  13. Download source code.
  14. Links.

Provenance of Source Code

F. Tancret and H.K.D.H. Bhadeshia,
Phase Transformations and Complex Properties Group,
Department of Materials Science and Metallurgy,
University of Cambridge,
Cambridge CB2 3QZ, U.K.

Added to MAP: July 2000.

Top | Next


The programs allow the estimation of the yield stress of nickel-base superalloys as a function of elemental composition, heat and mechanical treatments, and test temperature.

Top | Next | Prev


Language: FORTRAN / C
Product form: Source code / Executable files

Operating System: Solaris 5.5.1 & Windows 95/98 

Top | Next | Prev


The modelling procedure is a purely empirical one, and is based on a neural network program called generate44, which was developed by David MacKay and is part of the bigback5 program. The model is constituted of a committee of several individual neural networks. It was trained on a set of experimental data for which the "outputs" are known, and creates a kind of non-linear, multi-parameter "regression" of the outputs versus the inputs. This "regression" has already been produced and the model is delivered ready to perform predictions for nickel-base alloys of any desired composition (within certain specified limits). The source code for the neural network program can be downloaded from David MacKay's website; the executable files only are available from MAP. Also provided are FORTRAN programs (as source code) for normalising the input data, averaging the results from the neural network program and unnormalising the final output file, along with other files necessary for running the program.

Programs are available which run on a Solaris 5.5.1 unix operating system and on a PC under Windows 95/98. A distinct set of program and data files are provided . The files for unix are separated into compressed files called niyield.tar ; those for a PC :   niyield.zip. Each directory or zip file contains the following files and subdirectories:

A manual containing step-by-step instructions for running the program, including a list of input variables.
A text file containing the minimum and maximum limits of each input and output variable. This file is used to normalise and unnormalise the input and output data.
An input text file containing the input variables used for predictions.
This is a unix shell file containing the command steps required to run the module. It can be executed by typing csh model.gen  at the command prompt. These shell files compile and run all the programs necessary for normalising the input data, executing the network for each model, unnormalising the output data and combining the results of each model to produce the final committee result.
These executable programs for the PC correspond to the unix command files model.gen. The source code is given in subdirectory s.
This executable file reads the information in no_of_rows.dat and creates a file called spec.t1 (UNIX only).
A dynamic file, created by spec.ex/spec.exe, which contains information about the module and the number of data items being supplied. It is read by the program generate44/generate55.exe.
This a text file which contains the normalised input variables. It is generated by the program normtest.for in subdirectory s.
generate44 / generate44.exe
This is the executable file for the neural network program. It reads the normalised input data file, norm_test.in, and uses the weight files in subdirectory c, to find a value for the output. The results are written to the temporary output file _out.
result, or model_result.dat
Contains the final un-normalised committee results for the predicted output.
The source code for program data_no.ex.
The source code for program spec.ex.
Program to normalise the data in test.dat and produce the normalised input file norm_test.in. It makes use of information read in from no_of_rows.dat and committee.dat.
This program uses the information in committee.dat and combines the predictions from the individual models, in subdirectory outprdt, to obtain an averaged value (committee prediction). The output (in normalised form) is written to com.dat.
Program to un-normalise the committee results in com.dat and write the output predictions to unnorm_com. This file is then renamed as result .
A text file containing the number of models to be used to form the committee result and the number of input variables. It is read by gencom.for, normtest.for and treatout.for.
The weights files for the different models.
Files containing information for calculating the size of the error bars for the different models.
Files containing information about the perceived significance value for each model.
Files containing values for the noise, test error and log predictive error for each model.
A normalised output file which was created during the building of the model. It is accessed by generate44 via spec.t1.
The normalised output file containing the committee results. It is generated by gencom.for.

Detailed instructions on the use of the program are given in the README file.

Top | Next | Prev


  1. F. Tancret et al., a series of three papers on Design of Nickel Superalloys, 2003
  2. F. Tancret, Processing for China, Sterling Publications, London, 2000, pp. 56-58. [Download postscript, PDF, Word, html files.]
  3. F. Tancret, H. K. D. H. Bhadeshia, Key Engineering Materials, Vols. 171-174, 2000, pp. 529-536. [Download postscript, PDF, Word, html files.]
  4. F. Tancret, H. K. D. H. Bhadeshia and D. J. C. MacKay ISIJ International, 39 (1999) 1020-1026.
  5. H. K. D. H. Bhadeshia, review of neural networks in materials science, ISIJ International, 39 (1999) 966-979.

Top | Next | Prev


Input parameters

Cr (wt.%)

Co (wt.%)

Mo (wt.%)

W (wt.%)

Ta (wt.%)

Nb (wt.%)

Al (wt.%)

Ti (wt.%)

Fe (wt.%)

Mn (wt.%)

Si (wt.%)

C (wt.%)

B (wt.%)

Zr (wt.%)

Cu (wt.%)

N (wt.%)

S (wt.%)

P (wt.%)

V (wt.%)

Hot working (binary)

1st high temperature heat treatment: duration (h) and temperature (oC)

2nd high temperature heat treatment: duration (h) and temperature (oC)

1st low temperature heat treatment: duration (h) and temperature (oC)

2nd low temperature heat treatment: duration (h) and temperature (oC)

Test temperature (oC)

Output parameters

predicted yield stress (MPa)

error bar on yield stress

yield stress - error bar

yield stress + error bar

A more detailed description is presented in the README file.

Top | Next | Prev

Error Indicators


Top | Next | Prev


An estimated predictive error bar is provided by the model.

Top | Next | Prev

Further Comments


Top | Next | Prev


1. Download the model

Uncompress the "niyield.tar" or "niyield.zip" file in a dedicated directory (for example: "neural").
On UNIX systems, this is done by:

tar -xvf niyield.tar

On PC systems, this is done by extracting the archive using standard unzipping software.

2. Program data

Create an input file "test.dat" in the "neural" directory, containing the information on your alloy and test conditions (see README file for details).
Example: to predict the yield stress at 20, 200, 400, 600, and 800oC, of the following wrought alloy: Ni-20Cr-10Co-2Al-2Ti-0.03C wt.%, heat-treated 1 h at 1175oC and 8 h at 800oC:
20 10 0 0 0 0 2 2 0 0 0 0.03 0 0 0 0 0 0 0 1 1 1175 0 0 8 800 0 0 20
20 10 0 0 0 0 2 2 0 0 0 0.03 0 0 0 0 0 0 0 1 1 1175 0 0 8 800 0 0 200
20 10 0 0 0 0 2 2 0 0 0 0.03 0 0 0 0 0 0 0 1 1 1175 0 0 8 800 0 0 400
20 10 0 0 0 0 2 2 0 0 0 0.03 0 0 0 0 0 0 0 1 1 1175 0 0 8 800 0 0 600
20 10 0 0 0 0 2 2 0 0 0 0.03 0 0 0 0 0 0 0 1 1 1175 0 0 8 800 0 0 800

3. Running the program (making predictions)

For Solaris 5.5.1, just type:

csh model.gen

For PC software, just double-click on:


4. Results of the program (predictions)

The results are written in the "result" file, as described in the README file. In the present case:
   Predicted     Error   Predicted-Error Predicted+Error
    533.8356632     81.6544260    452.1812372    615.4900892
    508.6982072     83.3990998    425.2991074    592.0973070
    480.4139540     89.2339946    391.1799594    569.6479486
    456.3831204     82.4031140    373.9800064    538.7862344
    348.9340852     82.0133860    266.9206992    430.9474712

Top | Next | Prev

Auxiliary Routines

Top | Next | Prev


neural networks, yield stress, Ni-base, superalloy

Top | Next | Prev


Download source code (Solaris 5.5.1)

Download source code (PC software)

Top | Prev

MAP originated from a joint project of the National Physical Laboratory and the University of Cambridge.

Top | Program Index | MAP Homepage Valid HTML 3.2!