Nucleation reference

solid-solid phase transformations, influence of stresses and strains
Post Reply
Posts: 74
Joined: Thu Jun 19, 2008 2:54 pm

Nucleation reference

Post by jan » Fri Jun 20, 2008 1:43 pm

Hello Everyone

I have just started learning Micress. However I have a 4.5 years of experience in Phase field modeling. I am looking for the reference for the following question:

how is multicomponent nucleation implemented in the Micress?

Please guide me towards the relevant literature.

thanks very much !!!!



original message from Gaurav Singh

Posts: 74
Joined: Thu Jun 19, 2008 2:54 pm

Re: Nucleation reference

Post by jan » Fri Jun 20, 2008 1:43 pm

Dear Gaurav,

First of all wellcome as a new member of the MICRESS forum!

You ask about "multicomponent nucleation". I´m not sure whether I understand exactly what you mean exactly. I will try to give an answer nevertheless.

On one hand, there are different nucleation models in MICRESS, which refer to different places or circumstances where nucleation is to occur, like at a specific interface, in the bulk of a phase or a region, and to whether a fixed critical undercooling should be used as a nucleation criterion or some other criteria based on the properties of seeding particles, stored energies in recrystallisation etc. One can specify which phase is nucleated on which substrate phase and in which matrix phase (the phase the solutal undercooling of the nucleating phase is calculated from), the temperature range, the frequency for checking, data for shielding subsequent nuclei and so on.
In general, these models are designed for simulation at microscale, not at nano-scale, i.e., there is no model for prediction of homogeneous nucleation based on fluctuations the formation of a critical seed.

Independenty the question, how the driving force for nucleation or the undercooling is calculated, indeed is linked to the multicomponent issue. In principle, there is no difference how the driving force is calculated for the phase-field model itself and for nucleation. In the case of coupling to CALPHAD databases (using the Thermo-Calc TQ interface), driving force is calculated using the quasi-equilibrium approach, which for nucleation is exactly the commonly used parallel tangent construction.

For a linearized description of the phase diagram, the undercooling is calculated using the linearly approximated solidus and solvus hyperplanes. The difference between the actual temperature and the liquidus for the given composition is used as nucleation undercooling.

For further reading, besides the MICRESS manual, I would recommend

J. Eiken, B. Böttger, I. Steinbach: Multiphase-field approach for multicomponent alloys with extrapolation scheme for numerical application. Physical Review E 73 (2006), 066122.

for description of the quasi-equilibrium approach, and

B. Böttger, J. Eiken, I. Steinbach: Phase field simulation of equiaxed solidification in technical alloys. Acta Materialia 54 (2006), pp. 2697-2704.

for description of the seed density model for heterogeneous nucleation.

If you have further questions, or if my explanations was not what you expected,
please ask again!


original message from Bernd

Posts: 7
Joined: Wed Jun 25, 2008 9:34 am

Some comments concerning the seed model

Post by Antoine » Thu Aug 14, 2008 3:19 pm


Bernd and Markus provided me lots of informations concerning the way one should
parametrize the 'seed type' flags. This post (which is a complement to the manual)
drives you for guessing relevant starting values for the different parameters.

Let's first start by a typical input file.

# Input for seed type 1:
# ----------------------
# Type of 'position' of the seeds?
# Options: bulk region interface triple quadruple [restrictive]
# Minimal value of x-coordinates? [micrometers]
# Maximal value of x-coordinates? [micrometers]
# Minimal value of z-coordinates? [micrometers]
# Maximal value of z-coordinates? [micrometers]
# Phase of new grains?
# Reference phase?
# Which nucleation model shall be used?
# Options: seed_undercooling seed_density
# maximum number of new nuclei 1?
# Grain radius [micrometers]?
# Choice of growth mode:
# Options: stabilisation analytical_curvature
# min. undercooling [K] (>0)?
# Determination of nuclei orientations?
# Options: random fix range parent_relation
# Rotation angle? [Degree]
# Shield effect:
# Shield time [s] ?
# Shield distance [micrometers]?
# Shall categorization be applied to this seed type?
# Options: categorize {Number} no_categorize
# Nucleation range
# min. nucleation temperature for seed type 1 [K]
# max. nucleation temperature for seed type 1 [K]
# Time between checks for nucleation? [s]
# Shall random noise be applied?
# Options: nucleation_noise no_nucleation_noise

In the 'position' section one sets the localization of the seeds:
in the bulk, in the region, interface, triple junction or quadruple junction.
These keywords are self-explicit, if the 'region' flag is enabled
the user has to define the interval: [x_min,x_max]x[y_min,y_max]x[z_min,z_max]
inside which the system should be seeded. In addition to these keywords
an additionnal flag, namely 'restrictive', can be enabled enforcing the
code to explicitely seed only the interface area (2 different phases in
contact) and no triple points or quadruple points.

The phase of new grain define the type of seeds (ex: Mg2Si intermetallics).
The number referring to the phase is explicitely defined at a latter
stage in the used here is the "Phase diagram" section.

The 'reference phase' flag refers to the kind of phase where the new
seeds may appear and from which phase the undercooling is calculated from.
For example, if the 'position' flag is set to 'region' and if the defined
region does not contain the phase referred in the 'reference phase' no
seed will appear.

According to what has been inputed for the 'position' flag the
'substrate phase' inquiry may be asked (ex: if the 'interface' flag
is enabled for example) this keyword is used for selecting only interfaces
between this phase and the matrix phase as nucleation site and for
taking into account curvature of this interface in the calculation of the
nucleation undercooling.

The '# maximum number of new nuclei' inquiry is used to define the
maximum number of nuclei in the system, if no reasonable guesses
can be inferred one should use a very huge value at starting point.
By doing so one avoids constraining the physics of the system
(a typical value of 5000 can be chosen). Thereafter this value
can be tuned in agreement with the number of nuclei which effectively
appeared during an unconstrained simulation - There is no reason to use
a smaller number if nucleation is not planned to be restricted!!!.

The '# Grain radius [micrometers]?' inquiry is used for defining
the initial radius of the seeded grains. Reasonable values depend on
the growth mode flag (see below).

The '# Choice of growth mode' flag asks for the type of model that
one should use for the nuclei growth model.
Two choices are possible:
-stabilisation: The stabilisation model is used for enforcing the
grain growth at the first stage of the nucleation. Two cases have to
be taken into consideration: initial grain radius > cell spacing,
initial grain radius < cell spacing.
If initial grain radius is bigger than the cell spacing then a big
grain is put into the system, this seeding method is a bit crude and
may lead to unstable simulations. When the grains radius size are lower
than the cell spacing a small grain consisting of only one cell
with a fraction of 'phMin' (input at the end of the driving file)
for the new phases is nucleated. By using the stabilisation model
one balances the curvature undercooling by the size of the radius.
For small radius the curvature contribution is not taken into
account, whereas for bigger grain size the curvature contribution is
restored. The input for the initial grain radius is disregarded
in the case initial grain radius < cell spacing.

The ‘analytical_curvature’ flag is used when one aims at describing
the curvature of a particle smaller than the numerical interface
thickness. In order to perform such calculation one assumes that the
volume of the solid shell surrounding the initial seed (alleged to
be spherical) is proportional to the local phase field parameter (i.e.
the molar solid fraction). By doing so, one can guess a
corresponding radius r (as long as the grain has the status of a small grain)
In such a case, the curvature contribution to the phase field
is no longer calculated using the numerical second derivative of the
phase field parameter but it is calculated using the analytical
results derived for a sphere: K=2/r. For further details concerning
this approach one should refer to 'Phase field simulation of equiaxed
solidification in technical alloys, B. Boettger, J. Eiken, I. Steinbach.
In Acta Materialia 54 10 (2006) 2697.'

To put it in a nutshell the analytical model leads to less stable growth.
The stabilisation model leads to more stable nuclei growth.

The '# min. undercooling [K]' inquiry refers to the undercooling at which
the nuclei is allowed to form. Ex: In pure aluminum the melting temperature
is 933.55K, setting the undercooling at 20K in the driving file while lead to
a simulation in which the first nuclei will appear at 933.55-20=913.55K.

N.B: The undercooling is made of curvature undercooling: this contribution is
due to the Gibbs-Thomson effect.
A kinetic undercooling: linked to the fact that a finite amount of matter
cannot instantaneously solidify as atoms have to overcome an entropy barrier
to crystallize, this can be interpreted as an inertial term (There is a transient
phase during which the system tries to reach equilibrium).
In addition to this there is a thermodynamic undercooling related to the
fact that a system can be thermodynamically out-of-equilibrium (ex: liquid
water can be undercooled down to -42C). Moreover is a too high undercooling
is assumed this may induce very high driving force when the nuclei appear.

Let's go back to our Aluminum example. In such system setting the value
of the undercooling to a too high values (>50K) during a TQ coupled simulation
may leads to unphysical calculation as Thermocalc has to provide out-of-equilibrium
data concerning aluminum 50 degrees below its melting temperature. These
kind of data are computed according to extrapolation scheme far from equilibrium
point (database are assessed by experiments which are carried out close to
equilibrium) and should be handled carefully.

During the solidification of an alloy one can hardly make assumptions regarding
the temperature at which the first/last seeds may appear as one has to take into account
segregation inside the domain. In MICRESS the undercooling is calculated locally and
is defined as the temperature difference dT of a cell defined as dT=T_equilibrium-T_effective,
where T_effective is the effective temperature of the cell and T_equilibrium is the
temperature at which the content of the cell would exist at equilibrium.
If segregation occurs some parts of the domain may enrich in alloying compounds,
leading to significant changes of the local equilibrium temperature.

The inquiry '# Determination of nuclei orientations?' is used for
defining the orientation of the nuclei, this flag has to be defined according to the
nature of the system one wants to simulate. The 'range' keyword asks
for a given angle interval.

The inquiry '# Shield effect' asks for two parameters, '# Shield time [s]' (t_shield) and
the '# Shield distance [micrometers]' (r_schield). These two parameters are connected together.
Let's suppose that at time t a nucleus appears, the parameter shield distance
will define a circular area (of diameter r_shield ) centered onto
the grain. In this area no other grain of the same phase are allowed to appear within
the time interval [t,t+t_shield]. The r_shield parameter can be define according
to some experimental micrographs of the system one wants to simulate, the t_shield
can be evaluated according to some typical diffusion time scale considerations.

The '# Shall categorization be applied to this seed type?' inquiry is used for enhancing
calculation time. The different grains of the system are sorted in category (among a given
category grains are somehow handled in the same way, by doing so one reduce
calculation time) according to their orientation.
Ex: if the 'range' keyword is activated for the '# Determination of nuclei orientations?'
one has to input the '# Minimal value of rotation angle?' and the '# Maximal value of
rotation angle?'
. Assuming respective values of the nuclei orientation boundaries
being [0;60] and a categorization number of 50 it means that one category C_n will encompass
nuclei having an orientation angle within the interval [7.2xn;7.2x(n+1)] 7.2=360/50 Degree.category-1.

The '# Time between checks for nucleation? [s]' flag is used for reducing the number of
call to the TQ program, enhancing the overall time calculation.

The flag '# Shall random noise be applied?' is used for bluring the undercooling limit,
in the case of the solidification of a pure substance (ex:T_melt_Al=933.55K) by setting the
'# min. undercooling [K]' to 20K one would expect the nuclei to appears at 913.55K and below.
Such kind of behavior may sounds unphysical, to this end one can use the 'nucleation_noise'
flag in order to introduce some stochastic fluctuation on the undercooling limit.

The flag '# Shall metastable small seeds be killed?' is used with a view to killing
metastable grains (i.e. grains which do not evolve) calculated using the 'stabilisation'
model after their shield time has elapsed.



Post Reply