[MAP Logo]

Materials Algorithms Project
Program Library



Program MAP_STEEL_MOLEDRIVE

  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

C. N. Hulme-Smith
Phase Transformations Group,
University of Cambridge,
Department of Materials Science and Metallurgy,
27 Charles Babbage Road,
Cambridge, CB3 0FS, U.K.

E-mail: C. N. Hulme-Smith

Added to MAP: July 2019.

Top | Next

Purpose

This program calculates the molar free energy of an alloy as both austenite and ferrite and to calculate the molar driving force for the transformation of the former to the latter. This program must be used with MTDATA.

Top | Next | Prev

Specification

Language: Fortran 77
Product form: Source code, input files
Platform: Linux - tested with Debian 8 ("Jessie")

Complete program.

Top | Next | Prev

Description

MOLEDRIVE allows the user to specify a composition, temperature and pressure and calculate the molar driving force for the transformation of austenite to ferrite with the same composition. The user must also specify an element that will be stepped in content, although this behaviour can be prevented by setting the upper bound equal to the lower bound and setting a positive step size. (see Parameter descriptions section below).

Files

calc_it01 Linux-compatible executable.
compile Shell script that correctly compiles the source code and interfaces with MTData.
diffusionless01.mpi Contains alloy system data used MTDATA.
input01.dat Optional input data file.
moledrive01.f FORTRAN77 source code.
README README file with brief instructions for program operation.
results01.txt Contains the output data.
Follow the steps listed below to use the program:
  1. Download the file
  2. Unzip and untar it using the following command:
    tar -zxvf MOLEDRIVE.tar.gz
  3. Edit input input01.dat, if desired.
  4. Compile the source code (moledrive01.f) using the following command:
    ./compile <source_code_file_name_without_extension> <desired_executable_file_name>

Top | Next | Prev

References

None.

Top | Next | Prev

Parameters

Input parameters

The inputs may either be typed into a terminal or entered in a file, such as input01.dat provided with the executable and entered into the program using standard Unix redirection commands, for example "./calc_it01 < input01.dat".
MPIFILE - CHARACTER
File name of MTDATA multiphase input (mpi) file.
The default name is diffusionless1.mpi. The filename may be changed, or a new .mpi file created using MTData. The filename must not exceed 18 characters, including the file extension .mpi (i.e. a filename of 14 characters or fewer is required). This may changed easily in the source code by changing the length of the character variable when it is declared and recompiling the program. As of July 2017: within the Phase Transformations group he NPL Plus database must be used for this program to function correctly as other databases force miscibility gaps on each phase regardless of any instructions to the contrary.

MPRFILE - CHARACTER
File name of MTDATA multiphase results (mpi) file.
The easiest name to use is "''" (i.e. two single quotation marks). This is read as blank by the program and defaults to using the same filename as the .mpi file. The filename may be specified and must not exceed 18 characters, including the file extension .mpr (i.e. a filename of 14 characters or fewer is required). This may changed easily in the source code by changing the length of the character variable when it is declared and recompiling the program.

COMP_UNITS - INTEGER
A flag that sets the composition units used in MTData calculations:
1 = wt%
2 = at.%
3 = mass fraction
4 = molar fraction
All other inputs will cause the program to halt.

THE_COMP(n) - DOUBLE PRECISION
The composition of the test alloy in the chosen unit. Only the n alloying elements are included in this list (iron is automatically set by the program as the residue of the system). The value of n is dictated by the .mpi file.

THE_STEPPED_ELEMENT - INTEGER
The identity of the element (in the list specified by the program and, equivalently, in identical order to the composition) that will be stepped.

START_STEP - DOUBLE PRECISION
The starting content of the nominated element to be stepped. Should be expressed in the units selected by COMP_UNITS.

STEP_VALUE - DOUBLE PRECISION
The amount by which the composition of the nominated element will be incremented in consecutive steps. Should be expressed in the units selected by COMP_UNITS.

STOP_STEP - DOUBLE PRECISION
The maximum content of the nominated element to be stepped. Should be expressed in the units selected by COMP_UNITS.

THE_TEMP - DOUBLE PRECISION
The temperature of the system, to be used in calculations in °C.

THE_PRESS - DOUBLE PRECISION
The pressure of the system in Pa.


Output parameters

Results are printed to the terminal, but may be redirected to a file using standard Unix redirection commands, for example "./calc_it01 > results01.txt". This may be combined with redirected input, for example "./calc_it01 < input01.dat > results01.txt" to accept input from a file and write results to a second file. Header information in the terminal or results file (as determined by the command used to launch the program) provides all information about the calculation including temperature, pressure, base composition and stepped element limits and increment and composition units.
COMP(THE_STEPPED_ELEMENT) - DOUBLE PRECISION
The composition of the stepped element used at each iteration of the program, specified in the composition unit provided by the user.

MOLAR_GIBBS_ENERGY(1) - DOUBLE PRECISION
Molar Gibbs free energy of austenite of the specified composition at the specified temperature and pressure / J mol-1.

MOLAR_GIBBS_ENERGY(2) - DOUBLE PRECISION
Molar Gibbs free energy of ferrite of the specified composition at the specified temperature and pressure / J mol-1.

MOLAR_GIBBS_ENERGY(3) - DOUBLE PRECISION
The difference between MOLAR_GIBBS_ENERGY(2) and MOLAR_GIBBS_ENERGY(1) (i.e. the driving force for diffusionless transformation) with the specified composition and at the specified temperature and pressure / J mol-1.

Top | Next | Prev

Error Indicators

An error message will inform the user if the composition unit flag is set incorrectly.

Top | Next | Prev

Accuracy

No information available, but may exist in MTData multiphase/NPL Plus technical literature. The version of NPL Plus used in the as-provided form of this program is version 4.02.

Top | Next | Prev

Further Comments

None.

Top | Next | Prev

Example

1. Program text

Complete program.

2. Program data

input01.dat
      diffusionless1.mpi  - the name of the .mpi file used by MTData.  This must be created first and sets the order in which the elements in the composition must be specified and their units.
      ''                  - the name of the .mpr file to which results wil lbe written from MTData.  Leave blank to copy the .mpi file name and append .mpr instead of .mpi.  This is the most reliable way to use MTData, which sometimes crashes if a different .mpr filename is given (although it should not).
      1                   - specify the units of composition: 1=wt%, 2=at.%, 3=mass fraction, 4=molar fraction.
      0.5                 - wt% C.
      1.0                 - wt% Mn.
      0.0                 - wt% Si.
      0.0                 - wt% Al.
      0.0                 - wt% Ni.
      0.0                 - wt% Cr.
      0.0                 - wt% Mo.
      0.0                 - wt% W.
      0.0                 - wt% V.
      0.0                 - wt% Nb.
      0.0                 - wt% N.
      4                   - specify the identity of the element that will have its composition stepped, taken as the position in the list within the .mpi file (and the order in which the elements appear when specifying the initial composition above).
      0.0                 - specify the minimum composition of the stepped element, in the chosen composition unit.
      0.1                 - specify the composition step for the stepped element, in the chosen composition unit.
      5.0                 - specify the maximum composition of the stepped element, in the chosen composition unit.
      200.00              - specify the temperature of the calculation in Celsius.
      101325.0            - specify the pressure in Pa.
    

3. Program results

results01.dat

Prompts for inputs and MTData output when launching (lines 3-6):
    
     Please enter the name of the .mpi file:
     Please enter the name of the .mpr file:
     ¿[37;44;0m
  
  
  
     Please enter the units for the composition - 
     1 = wt.%, 2 = at.%, 3 = mass frac., 4 = mole frac.:
     Please enter the content of C                   
     Please enter the content of Mn                  
     Please enter the content of Si                  
     Please enter the content of Al                  
     Please enter the content of Ni                  
     Please enter the content of Cr                  
     Please enter the content of Mo                  
     Please enter the content of W                   
     Please enter the content of V                   
     Please enter the content of Nb                  
     Please enter the content of N                   
     Please specify which element is to be stepped:
     1 C 
     2 Mn
     3 Si
     4 Al
     5 Ni
     6 Cr
     7 Mo
     8 W 
     9 V 
    10 Nb
    11 N 
     Please specify the content for the first step:
     Please enter the content by which to step:
     Please enter the content at which to stop stepping:
     Please specify the temperature in Celsius:
     Please specify the pressure in Pa:
    Driving force for diffusionless transformations in steel
    Base composition:
      C     0.500000
      Mn    1.000000
      Si    0.000000
      Al    0.000000
      Ni    0.000000
      Cr    0.000000
      Mo    0.000000
      W     0.000000
      V     0.000000
      Nb    0.000000
      N     0.000000
    
Results, starting with header to record the inputs used to obtain the results:
      Stepping Al from   0.000000 to  5.000000 with increments of   0.100000 at a temperature of  200.00 C and under a pressure of .101325E+06 Pa.  All driving forces  are expressed as J/mol and the composition unit is wt%.           
        Step   G(Austenite)   G(Ferrite)   Driving force
      0.000000 -.992238E+04  -.124134E+05    -2491.07
      0.100000 -.101646E+05  -.126612E+05    -2496.61
      0.200000 -.103942E+05  -.128966E+05    -2502.40
      0.300000 -.106181E+05  -.131266E+05    -2508.45
      0.400000 -.108378E+05  -.133525E+05    -2514.74
      0.500000 -.110539E+05  -.135752E+05    -2521.29
      0.600000 -.112670E+05  -.137950E+05    -2528.07
      0.700000 -.114772E+05  -.140123E+05    -2535.10
      0.800000 -.116848E+05  -.142272E+05    -2542.36
      0.900000 -.118900E+05  -.144398E+05    -2549.84
      1.000000 -.120928E+05  -.146504E+05    -2557.56
      1.100000 -.122934E+05  -.148589E+05    -2565.49
      1.200000 -.124919E+05  -.150655E+05    -2573.65
      1.300000 -.126883E+05  -.152703E+05    -2582.02
      1.400000 -.128827E+05  -.154733E+05    -2590.60
      1.500000 -.130751E+05  -.156745E+05    -2599.38
      1.600000 -.132656E+05  -.158740E+05    -2608.37
      1.700000 -.134543E+05  -.160718E+05    -2617.56
      1.800000 -.136411E+05  -.162681E+05    -2626.95
      1.900000 -.138262E+05  -.164627E+05    -2636.53
      2.000000 -.140095E+05  -.166557E+05    -2646.30
      2.100000 -.141910E+05  -.168473E+05    -2656.25
      2.200000 -.143709E+05  -.170373E+05    -2666.38
      2.300000 -.145491E+05  -.172258E+05    -2676.70
      2.400000 -.147257E+05  -.174129E+05    -2687.18
      2.500000 -.149007E+05  -.175985E+05    -2697.84
      2.600000 -.150740E+05  -.177827E+05    -2708.67
      2.700000 -.152458E+05  -.179655E+05    -2719.67
      2.800000 -.154160E+05  -.181469E+05    -2730.82
      2.900000 -.155848E+05  -.183269E+05    -2742.13
      3.000000 -.157519E+05  -.185055E+05    -2753.60
      3.100000 -.159176E+05  -.186829E+05    -2765.23
      3.200000 -.160819E+05  -.188589E+05    -2777.00
      3.300000 -.162446E+05  -.190335E+05    -2788.91
      3.400000 -.164059E+05  -.192069E+05    -2800.97
      3.500000 -.165658E+05  -.193790E+05    -2813.17
      3.600000 -.167243E+05  -.195498E+05    -2825.51
      3.700000 -.168813E+05  -.197193E+05    -2837.98
      3.800000 -.170370E+05  -.198876E+05    -2850.58
      3.900000 -.171913E+05  -.200547E+05    -2863.32
      4.000000 -.173443E+05  -.202205E+05    -2876.17
      4.100000 -.174959E+05  -.203851E+05    -2889.15
      4.200000 -.176462E+05  -.205484E+05    -2902.25
      4.300000 -.177952E+05  -.207106E+05    -2915.47
      4.400000 -.179428E+05  -.208716E+05    -2928.80
      4.500000 -.180892E+05  -.210314E+05    -2942.24
      4.600000 -.182343E+05  -.211901E+05    -2955.79
      4.700000 -.183781E+05  -.213475E+05    -2969.45
      4.800000 -.185206E+05  -.215038E+05    -2983.21
      4.900000 -.186619E+05  -.216590E+05    -2997.07
      5.000000 -.188020E+05  -.218130E+05    -3011.03
    

Top | Next | Prev

Auxiliary Routines

None.

Top | Next | Prev

Keywords

driving force, Gibbs energy, austenite, ferrite, diffusionless transformation

Top | Next | Prev

Download

Download source code

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 4.01 Transitional