This plugin provides a set of JMAK-type microstructure evolution equations for static recrystallization, dynamic
recrystallization, metadynamic recrystallization and grain growth under constant process conditions (time, temperature
strain , strain rate).
Four sample material data sets are included in the plugin for C45, S355J2, 54SiCr6 and C20.
The JMAK model was originally founded and named after Johnson and Mehl 1, Avrami 2 3 4 and Kolmogorov 5. The following equations do not represent the basic theory, but are adapted versions for the four recrystallization stages (dynamic, metadynamic, static, grain growth) published elsewhere in literature (given at respective position). All of them need a set of empirical parameters which characterize the behavior of a material with a certain chemical composition under defined conditions. Note, that although the parameters are named equally for all mechanisms, they have distinct values for each mechanism. A few sample sets of these parameters are included in the package, additional can be found in literature or measured and determined by the user.
The following equations try to catch up as many of the various forms found in literature as possible, to be able to use
existing coefficient sets. They cannot be found in literature in these exact forms, but are a merge of existing ones.
Also, it was tried to name the parameters for the different mechanisms as coherent as possible. The use of the
Zener-Holomon-parameter 6 is avoided here, but individual Arrhenius-terms are introduced to allow
usage of distinct activation energies in each equation. The factors of
The following table defines the mathematical symbols used in the equations.
Symbol | Meaning |
---|---|
recrystallized fraction | |
mean grain size | |
index |
incoming/start value |
index |
outgoing/end value |
equivalent strain | |
|
material dependent empirical parameters |
activation energy | |
Zener-Holomon-Parameter | |
temperature | |
time | |
RX | recrystallization |
DRX | dynamic recrystallization |
SRX | static recrystallization |
MRX | metadynamic recrystallization |
GG | grain growth |
The following equations describing the recrystallization kinetics using a JMAK-type approach, are a merge of common
forms found in literature. It was tried to make them as general as possible, to be able to use most coefficient sets
published. The approach uses a critical time for start of recrystallization
The newly recrystallized fraction is given as:
The critical time of the recrystallization start (incubation time) is given as (sometimes assumed as just zero):
The reference time is given as:
The mean diameter of freshly recrystallized grains is given as:
The mean grain size at the output of a unit is given by a law of mixture as:
The recrystallized fraction at the output is given by a law of mixture as:
Grain growth kinetics modelled as a root law rather than sigmoidal was originally given by Sellars 7 as:
To use the sample datasets provided, it is sufficient to provide the respective key in Profile.material
. For own
coefficient sets, give
the Profile.jmak_dynamic_recrystallization_parameters
, Profile.jmak_metadynamic_recrystallization_parameters
, Profile.jmak_static_recrystallization_parameters
, Profile.jmak_grain_growth_parameters
hooks, whose values must be an instance of the JMAKRecrystallizationParameters
resp. JMAKGrainGrowthParameters
class
provided with this package. If one of these hooks does not provide a value for the used material, the respective
mechanisms is disabled. Especially missing parameters for metadynamic recrystallization will cause a fallback to static
recrystallization, even if the conditions for metadynamic where met. For example:
import pyroll.core as pr
import pyroll.jmak_recrystallization as prj
in_profile = pr.Profile.round(
...,
jmak_dynamic_recrystallization_parameters=prj.JMAKRecrystallizationParameters(
k=-1.4952,
n=1.7347,
a1=1.2338e-3 * 0.79,
a3=0.1971,
a4=0.3007,
qa=258435.17 * 0.1971,
b1=6.6839e-4,
b3=0.2265,
b4=0.4506,
qb=258435.17 * 0.2265,
c1=1072.98,
c3=-0.1629,
qc=258435.17 * -0.1629,
),
jmak_static_recrystallization_parameters=prj.JMAKRecrystallizationParameters(
n=1.505,
b1=3.7704e-8,
b2=-1.1988,
b3=-1.003,
b4=-0.1886,
qb=163457.62,
c1=0.1953,
c2=-0.7016,
c3=-0.0101,
c4=1.2052,
qc=6841.34,
),
jmak_metadynamic_recrystallization_parameters=prj.JMAKRecrystallizationParameters(
n=2.038,
b1=6.9235e-2,
b3=-0.9245,
qb=248617.4 - 258435.17 * 0.9245,
c1=840.57,
c3=-0.1629,
qc=258435.17 * -0.1629,
),
jmak_grain_growth_parameters=prj.JMAKGrainGrowthParameters(
d1=6.0,
d2=1.9144e8,
qd=-30000.0,
)
...
)
Most remarkable hooks for the user defined by this plugin are the following:
Host | Name | Meaning | Range |
---|---|---|---|
Profile |
recrystallized_fraction |
portion of the microstructure that is considered as recrystallized (without deformation experienced) | 0 to 1 |
Profile |
recrystallization_state |
verbal classification of the recrystallization state | "full" , "partial" or "none" |
Unit |
recrystallized_fraction |
portion of the microstructure that is recrystallized within this unit | 0 to 1 |
Unit |
recrystallized_grain_size |
grain size of the newly created grains in this unit | positive float (meters) |
The strain
value of out profiles in each unit are lowered by the recrystallized_fraction
. The grain_size
hook is
calculated by the weighted mean of incoming grain size and recrystallized_grain_size
.
In roll passes, there is always the dynamic recrystallization mechanism in operation. The type of recrystallization
mechanism happening in a transport is selected by the value of the newly introduced Unit.recrystallization_mechanism
hook, which is determined for transports as follows:
Value | Condition | Mechanisms |
---|---|---|
"none" |
if the recrystallization_state of the in profile is "full" |
only grain growth |
"metadynamic" |
if the recrystallization_state of the in profile is "partial" |
metadynamic recrystallization and grain growth |
"static" |
otherwise, especially if the recrystallization_state of the in profile is "none" |
static recrystallization and grain growth |
For roll passes it is either "dynamic"
or "none"
, depending on available parameters and if the critical strain is
reached.
The value of the Profile.recrystallization_state
hook is determined as follows using a threshold value that is set in
the pyroll.jmak_recrystallization.Config
class:
Value | Condition |
---|---|
"none" |
if the recrystallized_fraction" of the profile is smaller than THRESHOLD |
"full" |
if the recrystallized_fraction" of the profile is larger than 1 - THRESHOLD |
"partial" |
otherwise |
These string keys are selected in the other hook implementations to select there appropriateness for the current unit and with that choosing the equation set to use.
Footnotes
-
W. A. Johnson and R. F. Mehl, “Reaction Kinetics in Processes of Nucleation and Growth,” Trans. Am. Inst. Min. Metall. Eng., vol. 135, pp. 416–458, 1939. ↩
-
M. Avrami, “Kinetics of Phase Change. I General Theory,” The Journal of Chemical Physics, vol. 7, no. 12, pp. 1103–1112, Dec. 1939, doi: 10.1063/1.1750380. ↩
-
M. Avrami, “Kinetics of Phase Change. II Transformation-Time Relations for Random Distribution of Nuclei,” The Journal of Chemical Physics, vol. 8, no. 2, pp. 212–224, Feb. 1940, doi: 10.1063/1.1750631. ↩
-
M. Avrami, “Granulation, Phase Change, and Microstructure Kinetics of Phase Change. III,” The Journal of Chemical Physics, vol. 9, no. 2, pp. 177–184, Feb. 1941, doi: 10.1063/1.1750872. ↩
-
A. Kolmogorov, “К статистической теории кристаллизации металлов,” Известия академии наук СССР, vol. 1, no. 3, pp. 355–359, 1937. ↩
-
C. Zener and H. C. Holomon, "Effect of Strain Rate Upon Plastic Flow of Steel", Journal of Applied Physics, vol. 15, no.1, pp. 22-32, Jan. 1944, doi: 10.1063/1.1707363 ↩
-
C. M. Sellars and J. A. Whiteman, “Recrystallization and grain growth in hot rolling,” Metal Science, vol. 13, no. 3–4, pp. 187–194, Mar. 1979, doi: 10.1179/msc.1979.13.3-4.187. ↩