Nucleation section.
Next, the number of types of seeds should be specified. For each seed type a positioning should be given (bulk, in regions, at the interface, at triple or quadruple junctions). If a nucleation region is requested, you should specify its coordinates (in micrometers). After that, specify the phase state of the new grains and the reference phase. The phase of new grain defines the type of seeds (e.g.: Mg2Si intermetallics). The reference phase refers to the kind of phase where the new seeds may appear and from which the undercooling is calculated.
If the interface
flag has been selected for the grain positioning, it is necessary to define a substrate phase. This keyword is used for selecting interfaces between this phase and the matrix phase as nucleation sites, as well as and for taking into account the interface curvature in the undercooling calculation. The substrate phase is the one which determines the extra curvature undercooling and the reference phase is then the one where the undercooling is calculated.
Next, the nucleation model to be used for further nucleation is chosen -- the seed density or the seed undercooling model. They have already been presented in input section Nucleation and topic Nucleation Model.
After having chosen the nucleation model to be used in the simulation, MICRESS® asks for a minimum and a maximum nucleation temperature for the different seed types which should lie around the temperature where nucleation is expected.
Noise can be added to the calculation of the driving force for nucleation. In that case, the coefficient for the noise level and a seed for the random number generator will be asked.
One should also specify the maximum number of simultaneous nucleation events to be nucleated in one nucleation check.
In the case of solidification of a pure substance (e.g. T_{melt,Al}=933.55 K) by setting the minimum undercooling to 20 K, one would expect the nuclei to appear at 913.55 K or below. With the help of this flag some stochastic fluctuations are introduced on the undercooling limit.
You can enable the flag kill_metastable
to remove metastable grains after their shield time has ellapsed.
The following example with AlSi17Cu4Mg shows how to use the different nucleation modules in a reasonable way:
Phase | Description |
---|---|
primary silicon Si | the seed density model/analytical curvature by default |
Al dendrite | seed undercooling/stabilisation |
Si eutectic | interface nucleation/stabilization |
Mg2Si | interface nucleation/stabilization |
Al2Cu | interface nucleation/stabilization |
Al | interface nucleation/stabilization to achieve complete solidification |
Stabilisation
kill_metastable
to remove such sticking seedsAnalytical curvature
In order to include a further alloy element, first you need to change (increase) the number of dissolved constituents in the beginning of the Concentration data section. Further input and corrections of the input file depend on whether you use a TC database coupling or a linearised phase diagram.
For more information you can refer to some of the MICRESS® examples from the MICRESS® installation directory (e.g. T038_Stress.dri, T003_AlCu.dri, T032_P_Peak_2D.dri).
Consider the T001_Delta_Gamma.dri example that you have obtained with your installation files. In this example, we will add cementite as a further phase into the simulation. You need to consider the following:
A Thermo-Calc Scheil calculation
In order to create a GES (Gibbs Energy System) file from thermodynamic database, see the provided Thermo-Calc™ macro example HOWTO_FeCMn.TCM in the Training Examples folder as a reference. This is a normal text file.
Thermo-Calc macro example
... @@select thermodynamic database @@ GOTO_MODULE DATABASE_RETRIEVAL goto dat @@ @@for example TCFe6 iron and steel database @@ SWITCH_DATABASE TCFE10 sw TCFe10 @@ @@which list the database elements @@ LIST_DATABASE elements l-d elements @@ @@define elements in alloy systems @@ DEFINE_SYSTEM fe c mn d-sys fe c mn ...
Comments are starting with @@
. All other lines contain commands for the Thermo-Calc™ console. They can be executed as a complete macro file, e.g. by calling Thermo-Calc with the macro file as parameter, or step-by-step in the console itself.
Thermo-Calc graphical user interface: Console Mode
To begin with, select a thermodynamic database (example: TCFe10 iron and steel database). Define the elements in the alloying system and list the system. Next, define the phases of interest. As soon as you are ready with that, get the defined system into the GES-Workspace and repeat the performed steps. Go to the Gibbs workspace and save it to file (example: FeCMn.ges5).
For further details, see the next section How to perform a TC-coupled simulation.
Notes
With version TC 2020a, Thermo-Calc introduced a new GES6 module. Stored GES files still remain version 5 and are compatible to MICRESS.
For simulations with coupling to thermodynamic database, you have to:
Select the relevant components and phases in Thermo-Calc™. This means that you should choose important elements which are supported by the database e.g. AZ31: Mg, Al, Zn. Then, you should choose the important phases. For solidification, use the Thermo-Calc™ Scheil and for solid-solid reactions -- the Thermo-Calc™ Equilibrium.
Create GES5-File from database using Thermo-Calc™. The file should contain the same elements as used in MICRESS: MG, AL, ZN. It should also contain at least all phases which will be used in MICRESS®: Liquid, HCP, ALMG_GAMMA, PHI. You should also include mobility data for some phases if available (append database
command in Thermo-Calc™ Classic)
Specify all phase interactions. Switch on the most important interactions (e.g. interactions of secondary phases to LIQUID and primary phase (HCP). Leave out complex interactions of minor importance (e.g. ALMG_GAMMA/PHI), especially if stoichiometric phases are involved. Then, the constant-K model is applied (diffusion between phases, but no movement).
Specify all stoichiometric compositions (see Concentration Solver - Stoichiometry and more). Components without solubility range are assigned automatically as stoichiometric. You should also declare stoichiometric all components with restricted solubility range or steep phase diagram slope. Use the stoichiometric
option also in case of pseudo-binary demixing: mk \alpha \Delta S \alpha \cdot mk \beta \Delta S \beta < 0. In that case, apply the stoichiometric condition to the phase with higher value of mk \Delta S. The less favourable extrapolation should be compensated by a higher re-linearisation frequency. In case of solidification, an advanced extrapolation scheme can be applied (applies to all definitions after the keyword stoich_enhanced_on
). Note that it is not possible to define a phase interaction if any component has no solubility range or steep slopes in both phases (versions before release 5.5: if the component is declared stoichiometric in both phases)! Diagonal extrapolation (interaction
) provides a good alternative to stoichiometric conditions in case of pseudo-binary demixing. The Limits
keyword can be used to prevent switching between composition sets by setting composition limits in at%.
Next, specify GES5-File in MICRESS input. Give the path and the name of the .GES5 file for thermodynamic and mobility data. Take care of compatibility (TC version). Increase the workspace size if necessary.
Specify re-linearisation conditions. All newly formed interface cells request automatically new local linearisations (can be sufficient if the front is moving fast). It is recommended to specify a complete re-linearisation period. A maximum effective temperature deviation can be specified per phase interaction. In that case, re-linearisation is performed for the whole interface between two grains.
Run MICRESS to get phase and element numbers in database from screen output.
Driving File
# Components # ========== ... # The database contains the following components: # AL # MG # ZN ... # Phases # ====== # Selection of Phases # ------------------- # The database contains 4 phases: # ALMG_GAMMA # HCP # LIQUID # PHI ...
Specify relation to components and phases in MICRESS
Driving File
... # A component can be specified by an element symbol, # user defined name or database index. # 'end_of_components' will finish the components input. # Component 0 (main component) ? MG # Thermo-Calc index of (MICRESS) component 1? AL # Thermo-Calc index of (MICRESS) component 2? ZN ... # A phase can be specified by the name or index used in the database # or by a user defined name. # 'end_of_phases' will finish the phase data input. # Name or database index of phase 0 (matrix phase) LIQUID # Name or database index of phase 1 HCP # Name or database index of phase 2 1 # Name or database index of phase 3 4 ...
Specify the molar volumes of the phases (see Phase data - Molar Volumes.
Specify a temperature for initial (quasi-) equilibrium. In most cases, the initial temperature is a good choice.
Check the initial linearization parameters in the .log file. There should be no extreme values (stoichiometric components?). For stoichiometric phases without solubility range, -999.99 will be displayed as a slope. Furthermore, check whether there is any de-mixing mk \alpha \Delta S \alpha \cdot mk \beta \Delta S \beta < 0. Make sure that the initial components are reasonable. If a phase is not present at the beginning, linearization parameters will be calculated when nucleation is checked for the first time.
Hints for troubleshooting:
no_phase_interaction
if no driving force can be calculated (e.g. if both phases have no or a very small solubility range for the same component or if linearisation fails). Then, the interface will not move but allow diffusion between the phasesYou can change the simulation from 2D to 3D by modifying the input file. For that purpose, you need to go to the section: Flags and settings → geometry and then add an integer value > 1 for CellsY. This will define the number of cells in the 3rd dimension.
Further modifications are necessary for the grain orientations i.e. switching from angle 2D to a suitable 3D description.
Also the description of the positions of all grains being set deterministically to define an initial microstructure have to be complemented by the information about the 3rd dimension.
Further, all boundary conditions have to be altered to the respective 3D descriptions.
You should check whether the simulation runs. If you not wish to overwrite the existing input file, you should change the corresponding settings under the Restart options.
Experimental 3D dendrites prepared by removing the melt by centrifugal force
Solidification of metallic alloys is an important application for phase-field simulations. The dendritic growth structure is a result of self-organization of the unstable solidification front with a very weak trigger given by the interfacial energy anisotropy. Phase-field simulations capture the underlying physics and make it tractable on a computer. According to the Gibbs--Thomson relation, solidification problems are characterised by:
Issues in dendritic solidification that raise the interest for their modelling at the current stage are:
According to the theory, nucleation of recrystallized grains is almost abnormal growth of sub-grains.
Modelling scenario for sub-grain growth using high- and low-angle grain boundaries
The input given in the following example may be helpful:
Driving File
... # Geometry ... # Grain input # =========== # Type of grain positioning? # Options: deterministic random from_file random # Integer for randomization? 234567 # Number of different types of grains? 2 # Number of grains of type 1? 14 # Number of grains of type 2? 72 # Input for grain type 1 # ----------------------------- # Geometry of grain type 1 # Options: round rectangular elliptic round # Minimal value of x-coordinates? [micrometers] 0. # Maximal value of x-coordinates? [micrometers] 300. # Minimal value of z-coordinates? [micrometers] 0. # Maximal value of z-coordinates? [micrometers] 150. ...
Grains touching the boundaries will be closed, so that they do not get merged with others. The user is not restricted in the choice of boundary conditions: even wrap-around, though initially leading to somewhat unexpected grain structures, subsequently allow proper relaxation (see the four-folded symmetry view of the Grain_Growth standard example (T020) below).
A four-folded symmetry view of the "Grain Growth" standard example (T020)
Early stage | Intermediate stage | Later stage |
---|---|---|
![]() | ![]() | ![]() |
A special model extension allows considering temperature or phase transformation related shrinkage or expansion in concentration coupled simulations. The model conserves matter and is based on the simplifying assumptions that the whole simulation domain expands homogenously while always remaining in a stress-free state. It is activated by specifying concentration volume_change
as type of coupling at the beginning of the simulation (see input section Model).
Local volume differences are meant to be instantaneously homogenized by internal material fluxes which are calculated by a newly implemented expansion-relaxation-solver. The local expansion is calculated as product of the local number of moles and the local molar volume, divided by the initial volume. All three quantities can be monitored in respective output files: expansion (*expa), number of moles (*mole) and molar volume (*molV).
During simulation, the local molar volume in each grid cell is evaluated by weighting the phase-specific molar volumes with the local phase fractions. The required phase-specific molar volume data can either be specified by manual
input or evaluated from a coupled thermodynamic database
. In both cases an additional extrapolation with temperature and/or mean phase composition can be activated by using the kewords temp-extrapolation
and conc_extrapolation
(input section Molar Volume).
Furthermore, at the start of the input section Concentration Solver, individual components can be defined as interstitial by using this keyword followed by a phase number and component number(s). In contrast to substitutional diffusion, diffusion of interstitial components changes the local number of moles.
Finally, a maximal number of calls per time step and a convergence value have to be specified to control the expansion-relaxation solver. The task of this solver is to homogenize local expansion by compensating material fluxes. The solver runs iteratively and stops when either the specified number of calls per times step is reached or when the mean difference in local expansion falls below the specified convergence value. The effectivity of the solver can be checked by monitoring the degree of homogenization in the expansion output file. The consumed CPU-time is listed in the *TabP file (row: expansion time).
The volume_change
model proved to be essentially important for the simulation of spheroidal graphite growth in ductile cast-iron which is driven by interstitial diffusion of carbon through austenite. The attachment of carbon atoms to the graphite interface results in a strong local expansion and a pushing of the surrounding austenitic shell. Simulation of this process without consideration of the volume change would lead to wrong phase volumes, delayed transformation kinetics and artificial segregation effects. Two respective example files are provided: T008_CastIronNodule.dri and T009_CastIronDendriteNodule.dri.