Access Module
The ACCESS
module of MTDATA is used for retrieving data for chemical and
metallurgical systems from databases. These can include specialised or
private databases as well as those provided with MTDATA. Data for a wide
variety of system types can be handled and systems can be specified by
elemental or compound components. A datafile of system data is created
which can then be used by the calculation modules. Procedures are
described for the retrieval of systems of varying degrees of complexity
and examples are given of the steps that should be taken when datasets
are missing.
Overview
Purpose
The ACCESS module is designed as tool for the preparation of data for the calculation modules, with which it shares a common command structure. This handbook will repay careful study because the user's selection of data in ACCESS can affect the ease and scope of subsequent calculations. The components under study are entered, and the specified database(s) are searched for all the substances that are linear combinations of them. For even a small number of components, the number of substances could run to several hundreds and, since the calculation modules are normally configured to handle a limited number of substances, some reduction may be necessary.
ACCESS allows the user:
- to exclude completely some substances from the datafile to be used by the calculation modules, for example, those which are considered to be very unlikely to be significant in a particular problem.
- to choose which data set is to be used for each of the remaining substances on an individual basis, rather than on a first found basis as in the preliminary database search.
- to select data for solution phases that use particular models.
- to identify phases likely to include miscibility gaps
- to specify non-elemental components, retrieving only those substances that can be formed from a linear combination of the stipulated components and permitting a definition of the system that is most consistent with its chemistry.
Once the status of unaries and phases for the system have been edited into a form which satisfies the user, the data can be saved to a file which can then be read by MULTIPHASE and the other calculation modules. No printed output is generated by ACCESS: a print-out of the file may be obtained, if required, via the appropriate operating system command. It is possible to edit this file manually but it is not recommended.
Summary of Commands
DEFINE
-
allows the user to define:
- the system to be studied in terms of its components, which need not be elements.
- the database from which data are to be retrieved.
- the output datafile to which data will be subsequently written when the
SAVE
command is issued.
DEFIN
ing the system is executive, causing the databases to be searched. LIST
- displays on the screen the current status of the system in terms of which elements, substances, components and phases are present.
CLASSIFY
-
- allows the status of each phase and substance to be defined as present (
NORMAL
) or absent (ABSENT
) prior toSAVE
ing the data for subsequent use by the calculation modules, - allows phases likely to include miscibility gaps to be flagged.
- allows the status of each phase and substance to be defined as present (
SAVE
- writes all data sets corresponding to substances and phases with
NORMAL
orMISCIBILITY
classifications to a datafile specified byDEFINE OUTPUT_DATA_FILE
, or to the default file if one has not been specified. <"Macro Name">
- runs a macro by specifying the filename where it has been previously stored. It can also be used to pass commands through to the operating system, for example, to obtain printed output.
RETURN
- takes the user out of ACCESS back to the module level.
[CONFIGURATION_VARIABLE
- not strictly an option but is of special importance in ACCESS. The setting of certain MTDATA configuration variables can modify selection criteria and the manner in which data are saved to the output data file (see GENERAL INTRODUCTION).
Option Definitions
Define
The DEFINE
command allows the user to define:
- the system in terms of elemental or non-elemental components and the order in which these are subsequently presented
- the databases from which data for a given system are to be retrieved
- `an output datafile to which the data will subsequently be written when the SAVE command is issued.
Parameters:
- OUTPUT_DATA_FILE
- SYSTEM
- SOURCE
Defaults:
- OUTPUT_DATA_FILE = <"def.mpi">
- SOURCE = <first database on database menu>
Examples:
define output="jet4"!
define system="Mo,Si,O,N" source=sgsub mydata !
define system="Fe,H20,H/+,/-" !
define system="KCI,ZnC/2" output="kzc" !
define source=none_but mydata !
Parameter values:
-
-
- OUTPUT_DATA_FILE takes the value <"filename">
- The default filename is def.mpi (default.mpi for VAX implementations)
and the default extension is mpi but both the name alone or the name and
extension may be supplied by the user. Unless the default output file is
to be used this must be specified at the same time or after the system is defined.
-
- SYSTEM takes the value <"component 1ist">
- The SYSTEM parameter is used to define the components of the system to be studied. Elements, compounds and ionic species may be defined as components in the form of a list in quotes with the individual components separated by commas. The components should be chosen to be compatible with the models for the phases involved as this may have important consequences in subsequent calculations. The order in which the components are defined is retained in the output datafile and is thus effective in the calculation modules. Refer to Section 2 for guidance regarding systems involving charge as a component. The two examples shown below would normally give very different results.
define system="AI, Ca, Si, O" !
define system="AI203, Ca 0, Si02, O/-2" !
-
SOURCE
takes the values \
In each case, the program searches the list of databases for substances that are linear combinations of the components defined in SYSTEM. If a value for SOURCE is not specified at the same time as the system, only the last used database list (or if none has been used the first database) in the menu is searched.
\define system "Pr,Cl,H" source sgsol mydb !
ALLspecifies the list of databases in the order in which they appear in the database menu.
NONE_BUTclears any previous list of sources and defines a new one. NONE_BUT must be used if the number of databases to be searched is reduced.
General comments:
Each of the parameters may be assigned a value in a different DEFINE statement: only
DEFINE SYSTEM is executive - it causes the database search(es) to be performed.
Data are not written to an output file as part of the DEFINE SYSTEM statement: there is a separate command - SAVE - which performs this operation. However, SAVE writes to the output datafile that was DEFINEd before the SAVE operation. The default output datafile is def.mpi.
A search of the first database on the list of sources will probably locate the majority of substances generated from the list of components entered under SYSTEM. Substances located in this way for the first time are retrieved into memory and flagged as NORMAL - i.e. present. The search of the next database will locate data sets of two types:
- data for substances which have been located for the first time are added to those in memory and similarly flagged as NORMAL.
- data for substances which have already been located in the search of the first database are also added to those in memory, but are flagged as ABSENT.
CLASSIFY allows the user to adjust this preliminary classification and to flag phases as likely to include miscibility gaps. SAVE causes only those substances CLASSIFY'd as NORMAL to be SAVEd.
List
Function:
displays on the screen the current status of the system in terms of which elements, components, substances and phases are present.
Parameters:
SYSTEM
Defaults:
NONE
Examples:
list system=elements substances !list system=components phases !
Parameter values:
SYSTEM
takes the valuesELEMENTS/ COMPONENTS/ PHASES/ SUBSTANCES/ ALL
ELEMENTS displays a list of elements present in the system.
COMPONENTSdisplays the components together with useful status information:\
NUMBER COMPONENT STATUS AMOUNT 1 Al NORMAL undefined 2 Si NORMAL undefined 3 Zn NORMAL undefined
No entries in this table can be altered by CLASSIFY. Columns 3 and 4 have significance only in the calculation modules; their meaning is explained in the relevant manuals.
PHASES displays a list of all phases.\
NUMBER PHASE STATUS MODEL 1 A1 NORMAL PURE SUBSTANCE 2 FCC_A1 NORMAL PURE SUBSTANCE 3 HCP_A3 NORMAL PURE SUBSTANCE 4 LIQUID NORMAL PURE SUBSTANCE 5 GAS NORMAL IDEAL GAS 6 BCC_A2 NORMAL PURE SUBSTANCE 7 DIAMOND_A4 NORMAL PURE SUBSTANCE
The entries under PHASE can appear much like a SUBSTANCE list. This arises as follows. Many pure substances are stored on the database without explicit phase names - for example zinc oxide may be stored within the database as a combined data set for the crystal and liquid phases rather than as ZnO and ZnO<1iquid> separately. The program generates phase labels from the chemical formula, in this case ZnO. Thus, all condensed substances without explicit labels must form separate phases. This does not apply to gases or aqueous solutions, which all belong to the same phase, irrespective of the secondary phase label, which is used to identify isomers.On the other hand all substances that have the same phase label are deemed to be constituents of a solution phase. Thus if two non-gaseous substances, possibly from different databases, have the same phase name they will be assigned to a solution phase. If binary solution data are missing, unless the MTDATA configuration variable MISSING_DATA=CONTINUE (see Section 4.7) an entry will be placed in the output datafile reporting the lack of solution data: Removal of this entry will cause the phase to be treated as ideal.As with SUBSTANCE each phase can be CLASSIFY'd as NORMAL (present) or ABSENT. Note that if a phase is CLASSIFY'd as ABSENT, the corresponding substances as displayed under LIST SUBSTANCES are not flagged as ABSENT. Nevertheless, when SAVEd, these substances are deleted from the SUBSTANCES list. The information in the column headed model is accurate only after the SAVE command has been issued.
SUBSTANCESdisplays all substances that have been obtained from the database search:\
NUMBER SUBSTANCE/UNARY STATUS SOURCE
1 A1 NORMAL DEMO_B
2 A1
Substances are constrained to be NORMAL if retrieved from a database for the first time, and ABSENT if a data set for that substance has already been retrieved. The status EX-SYSTEM indicates that the substance cannot be formed from a linear combination of the components, even if the substance does belong to the system of elements.
General comments:
The information provided by the LIST command is important for use in CLASSIFY where both SUBSTANCE and PHASE may be referred to by the number appearing in the relevant list. Although parameter values can be given in any order, the output from LIST is in a fixed sequence: elements, components, phases, unaries/ substances.
Classify
Function:
allows the status of each phase and substance to be altered prior to SAVEing the data for input into one of the calculation modules.
Parameters:
ABSENTNORMALMISCIBILITY
Defaults:
The MISCIBILITY parameter for a phase is normally NONE unless the data are flagged otherwise in the database.
Examples:
classify absent phase(liq) absent 5,6,7 !classify absent phase(all) normal phase(diamond,5-7) !classify miscibility(liquid) 1 miscibility(bcc) 1 !classify miscibility(bcc) none !classify normal phase(bcc) !
The last two examples have the same effect.
Parameter values:
ABSENT\, NORMAL take the value [PHASE\(p\)] [SUBSTANCE\(s\)] [s]
[] = possible omission or repetitionp and s specify phase and number lists, see below
Substances CLASSIFY'd as NORMAL are part of the system and will be written to the current output file when the SAVE command is given; their status will be NORMAL when they are read into the calculation modules. Substances and phases CLASSIFY'd as ABSENT are not written to the output file when the system is SAVEd.
The status EX-SYSTEM of substances is in the parameter menu but substances classified as EX-SYSTEM should never be changed to NORMAL or any other status. Nor should any other status be changed to EX-SYSTEM.
Substances and phases can be specified in the same way:PHASE(p) SUBSTANCE(s)where the subscript p or s can be any valid number or combination of numbers, '*" or "all" (see examples) obtained from the relevant phase or substance list, given under the list option. Phases and substances may also be identified by any unique abbreviation of the name or formula. Substances may also be specified by quoting the substance number alone.
MISCIBILITY(p)
takes the value NONE, 1, 2 The number chosen depends on the number of miscibility gaps expected for the phase, where p is the phase name or number of an individual phase. On saving (Section 4.4) the relevant phases will be flagged as prone to immiscibility.
General comments:
If a phase is CLASSIFY'd as ABSENT, the corresponding substances as displayed as a result of entering list system substances ! are not flagged as ABSENT, and vice versa. Nevertheless, when the system is SAVEd, these substances are deleted from the SUBSTANCES list, along with the phase. It is very important not to mix data for substances that have the same phase name but employ different models for data representation. Equally substances that in practice do belong to the same phase and do mix in that phase must have exactly the same phase name including any site ratios for sublattice phases.
Save
Function: writes all data sets corresponding to substances and phases with NORMAL or MISCIBILITY classifications to a datafile specified in define output_data_file
, or to a file with the default filename if one has not been specified.
Parameters: NONE
Defaults: n/a
Examples: save
(Note the absence of 1)
Parameter values: None
General comments:
It is recommended that systems are not SAVEd to the default datafile unless the data are to be used subsequently within the same session of MTDATA. If the default datafile is to be used in a later session of MTDATA, then it is in danger of being overwritten by a similar use of the same facility by other users.
Only one SAVE is allowed within a session of ACCESS unless the system is redefined.
'Macro name'
Function: runs a macro which has been previously written, by specifying the filename where it has been stored. Macros contain exactly the same types of commands, parameters and values as the user would enter at the terminal. It is also possible to pass commands through to the operating system by preceding the operating system command with "$ (eg "$dir).
Parameters: None
Defaults: n/a
Examples: "mydef" "process4"
Parameter values: n/a
General comments: None
Return
Function: takes the user out of ACCESS back to the module level.
Parameters: NONE
Defaults: n/a
Examples: return
(Note the absence of !)
Parameter values: n/a
General comments: None
Configuration variables
Though not formally options like commands or macros, configuration variables are included here because of their importance in ACCESS.
Function: MTDATA configuration variables can be set from the command line or within the MTSIGNONTXT file as in the examples. The variable name must be entered exactly in capitals. That most applicable to ACCESS are identified below.
Defaults: [MISSING_DATA=CONTINUE[SUBLATTICE=SIMPLIFY[IMPLICIT_COMPONENT=NONE
Examples: [MISSING_DATA =FAIL[SUBLATTICE=NOCHANGE[IMPLICIT_COMPONENT=/-
If MISSING_DATA=FAIL
and interaction data are found to be missing
during retrieval from a database, zero data sets are inserted in the mpi
files but they are preceded by lines that prevent them from being read
by the calculation modules.
If SUBLATTICE=SIMPLIFY
data for solution phases for which there is only
one sublattice will be simplified as though the phase had no sublattice
structure.
If IMPLICIT_COMPONENT
is given the legal name of an element or
compound, that element or compound will added to the end of any
component list defined by the user. If the component added this way is
charged it will be treated as an additional constraint rather than an
explicit component of which the amount can vary.
General comments: None
Quick reference section
DEFINE
-
- Allows the user to define
-
- the system in terms of elemental or non-elemental components and their order.
- the databases from which the substances in the equilibrium system are to be retrieved.
- an output datafile to which the data will subsequently be written when the SAVE command is issued.
-
- Parameters
OUTPUT_DATA_FILE = <"filename">
SYSTEM = <"component list">
SOURCE = <database list> | NONE_BUT <database list> | ALL
-
- Defaults
OUTPUT_DATA_FILE = <"def.mpi">
SOURCE = <first database on database menu>
LIST
- Displays on the screen the current status of the system in terms of which elements, components, phases and substances are present and whether they have been classified as absent or having miscibility gaps.
-
- Parameters
SYSTEM = ELEMENTS | COMPONENTS | PHASES | SUBSTANCES | ALL
-
- Defaults
- none
CLASSIFY
- Allows the status of each phase and substance to be altered prior to
SAVE
ing the data for input into MULTIPHASE. -
- Parameters
-
ABSENT = [PHASE(p)] [SUBSTANCE(s)] [sl]
NORMAL = [PHASE(p)] [SUBSTANCE(s)] [s1]
MISCIBILITY(p1) = NONE, 1 or 2
- where:
p = <list of phase numbers or names> | ALL | *
p1 = <single phase name or number>
s = <list of substance numbers or names> | ALL | *
s1 = <list of substance numbers or names>
[ ] means omission or repetition
-
- Defaults
NORMAL = <first occurrences of substances>
MISCIBILITY(p1) = NONE (unless flagged otherwise in the database)
SAVE
- Writes all data sets corresponding to substances and phases with NORMAL
or miscibility gap classifications to a datafile specified by
DEFINE OUTPUT_DATA_FILE
after or at the same time as the definition of the system, or to a default file if an output filename has not been specified. -
- Parameters
- none
'Macro Name'
- Runs a macro by specifying the filename where it has been previously stored; it can also be used to pass commands through to the operating system.
-
- Parameters
- none
RETURN
- Takes the user out of ACCESS back to the module level.
[CONFIGURATION VARIABLE
-
- Set MTDATA configuration variables from the command line. Those most
- applicable to ACCESS are listed below with their options (default first).
-
[MISSING_DATA=FAIL | CONTINUE
[SUBLATTICE=SIMPLIFY | NOCHANGE
[IMPLICIT_COMPONENT=NONE | <formula of implicit component>