Diffusion Problem

dendritic solidification, eutectics, peritectics,....
Bernd
Posts: 1597
Joined: Mon Jun 23, 2008 9:29 pm

Re: Diffusion Problem

Post by Bernd » Mon Dec 15, 2025 9:43 am

Hi materialmoop,

using diffuse cementite as carbon sink there should be no problem to achieve ~95% bcc, even without any driving force offsets. It is just a question of defining reasonable interface mobilities and nucleation parameters.

However, this does not tell anything about morphology. I think, to be able to draw conclusions about morphology, a deeper reasoning about the physical mechanisms as well as a higher grid resolution are needed.

Bernd

materialmoop
Posts: 16
Joined: Tue Jul 15, 2025 10:14 pm
anti_bot: 333

Re: Diffusion Problem

Post by materialmoop » Tue Dec 16, 2025 1:35 am

Hi Bernd,

I have now tried using a grid spacing of 0.05 with 300 cells, and have tried interface mobilities from 1E-4 to 1E-8, and still get the same issues. Is there a way I can prevent the carbon from moving so much? Even setting the diffusion to 0 causes carbon to move.

As I understand it, during a martensitic transformation, the carbon is not supposed to be moving by such large amounts, and BCC is meant to be supersaturated...While I can now get transformation to 95% BCC, the carbon content in the FCC is 7 wt% which is too high... Perhaps the way I have defined nucleation unreasonable, or is some other parameter not reasonable? Unfortunately quenching faster and/or increasing the interface mobility also does not solve this, and I am unsure how else I could solve this problem.

Many Thanks.

Bernd
Posts: 1597
Joined: Mon Jun 23, 2008 9:29 pm

Re: Diffusion Problem

Post by Bernd » Tue Dec 16, 2025 12:53 pm

Dear materialmoop,

I was not carefully enough reading through your posts and missed somehow that it is definitively martensite which you want to address here. This means it does not make sense to include carbides or cementite (what would make sense in case of bainite). It also does not make sense to prevent diffusion. What you really want to suppress is partitioning of carbon (and all other elements). Thus you should use "para" as redistribution behaviour for all elements including carbon, and then stabilize the BCC-phase by using negative driving force offsets.
Unfortunately, I am quite busy the next days and will not be able to try that for you. However, I think it should be the right way...

Bernd

materialmoop
Posts: 16
Joined: Tue Jul 15, 2025 10:14 pm
anti_bot: 333

Re: Diffusion Problem

Post by materialmoop » Tue Dec 16, 2025 2:23 pm

Hi Bernd,

Thank you for your suggestions :) I have removed the carbides, have used para for all elements and have applied a negative dg offset (-15). However, I continue to encounter errors, namely the repetition of "trying hard phases 1 2 level: 4 zp= 36926 error= 1
trying harder!"ect, along with partitioning behavior (The carbon content in FCC increases to above 4wt%, which I think is too high).

The only thing that seems to help is if I increase the phase minimum, though then the carbon just becomes pinned and it does not move when I do the actual carbon partitioning in subsequent files. I have attached my driving file and the .ges5 file, perhaps there is some other issue.

Many thanks for your help, and Merry Christmas/Happy Holidays :)


#
#
#
#
# Automatic 'Driving File' written out by MICRESS.
#
# MICRESS binary
# ==============
# path: C:\Program Files\MICRESS-7.302\Bin\MICRESS_par_TQ.exe
# version number: 7.302 (Windows)
# compiled: 07/08/2025
# compiler version: Intel 2021 20230609
# executable architecture: x64
# Thermo-Calc coupling: enabled
# Version: 27
# Link Date: Fri Jan 10 16:32:37 2025
# OS Name: Windows
# Build Date: unknown
# Compiler: unknown compiler
# OpenMP: enabled
# ('double precision' binary)
#
#
# Language
# ========
# Please select a language: 'English', 'Deutsch' or 'Francais'
English
#
#
# Output Location
# ===============
# Options: [ <directory path>/ ] <base name>
# The default result directory is the driving file location.

# Overwrite files with the same name?
# Options: overwrite write_protected append
# [zipped|not_zipped|vtk]
# [unix|windows|non_native]
C:/...
overwrite
#
#
# Restart
# =======
# Restart using old results?
# Options: new restart [reset_time | with_flow]
new
#
#
# Geometry
# ========
# Grid size?
# (for 2D calculations: CellsY=1, for 1D calculations: CellsX=1, CellsY=1)
# Cells in X-direction (CellsX):
300
# Cells in Y-direction (CellsY):
1
# Cells in Z-direction (CellsZ):
300
# Cell dimension (grid spacing in micrometers):
# (optionally followed by rescaling factor for the output in the form of '3/4')
0.05
#
#
# Model
# =====
# Type of coupling?
# Options: phase concentration [volume_change] temperature temp_cyl_coord
# [stress] [flow] [flow_coarse] [dislocation]
concentration
# Thermal Conditions
# Options: no_lat_heat no_lat_heat_dsc lat_heat 1d_temp ['rotate']
no_lat_heat
#
#
# Boundary Conditions
# ===================
# Boundary conditions for phase field in each direction
# Options: i (insulation) s (symmetric) p (periodic/wrap-around)
# a (auto-periodic) g (gradient) f (fixed) w (wetting)
# Sequence: W E B T
# (X: West-East, Y:South-North, Z:Bottom-Top)
pppp
#
# Boundary conditions for concentration field in each direction
# Options: i (insulation) s (symmetric) p (periodic/wrap-around) g (gradient) f (fixed)
# Sequence: W E B T
pppp
#
#
# Database
# ========
# Is a thermodynamic database to be used?
# Options: database [silent|verbose] [<GES5 file name>]
# no_database
database C:/.../newFeCMnSi
# Which global relinearisation interval shall be used?
# Options: manual from_file none
manual
# Relinearisation interval (s) [Tmin (K), Tmax (K)]
1.000000000000
# Reading GES5 workspace ...
#
#
# Components
# ==========
# Type of concentration?
# Options: atom_percent (at%)
# weight_percent (wt%)
weight_percent
#
# The database contains the following components:
# 1: C
# 2: FE
# 3: MN
# 4: SI
#
# 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) ?
fe
# FE identified
# Component 1 ?
c
# C identified
# Component 2 ?
mn
# MN identified
# Component 3 ?
si
# SI identified
# Component 4 ?
end_of_components
#
# MICRESS component indexing
# 0 -> FE (database)
# 1 -> SI (database)
# 2 -> C (database)
# 3 -> MN (database)
#
#
# Phases
# ======
#
# Selection of Phases
# -------------------
# The database contains 5 phases:
# 1: LIQUID
# 2: BCC_A2
# 3 FCC_A1
#
# Database phases can be specified by their names or indices.
# Other phases can be added by user defined names.
# Options:
# {<database name> | <database index> | <user defined name>} [<alias>]
# 'end_of_phases' will finish the phase data input.
#
# Phase 0 (matrix phase)
1
# liquid identified
# Phase 1
3
# FCC_A1 identified
# Phase 2
2
# BCC_A2 identified
#Phase 3
end_of_phases
#
# MICRESS phase indexing
# 0 -> LIQUID (database), alias = LIQUID
# 1 -> FCC_A1 (database), alias = FCC_A1
# 2 -> BCC_A2 (database), alias = BCC_A2
#
# Input/Output Format for Orientations
# ------------------------------------
# How shall grain orientations be defined?
# Options: angle_2d euler_zxz angle_axis miller_indices quaternion
angle_2d
#
#
# Phase Properties
# ----------------
#
# Phase 0 ( LIQUID )
# ------------------
# Type of molar volume input ?
# Options: constant database [temp_extrapol] [conc_extrapol]
database
#
# Phase 1 ( FCC_A1 )
# ------------------
# Simulation of recrystallisation in phase 1 (FCC_A1) ?
# Options: recrystall no_recrystall [verbose|no_verbose]
no_recrystall
# Is phase 1 (FCC_A1) anisotropic ?
# Optionen: isotropic anisotropic faceted_a faceted_b faceted[_c] antifaceted
anisotropic
# Crystal symmetry of phase 1 (FCC_A1) ?
# Options: none cubic hexagonal tetragonal orthorhombic
cubic
# Should grains of phase 1 (FCC_A1) be reduced to categories?
# Options: categorize no_categorize
no_categorize
# Type of molar volume input ?
# Options: constant database [temp_extrapol] [conc_extrapol]
database
#
# Phase 2 ( BCC_A2 )
# ------------------
#Simulation of recrystallisation in phase 1 (FCC_A1) ?
# Options: recrystall no_recrystall [verbose|no_verbose]
no_recrystall
# Is phase 1 (FCC_A1) anisotropic ?
# Optionen: isotropic anisotropic faceted_a faceted_b faceted[_c] antifaceted
antifaceted
# Crystal symmetry of phase 1 (FCC_A1) ?
# Options: none cubic hexagonal tetragonal orthorhombic
none
# Number of facet types in phase 2
1
# kin. anisotropy parameter Kappa?
# only one value for all facets/phases
# 0 < kappa <= 1
0.880
# Number of possible orientations of a facet 1
1
# 1 -th normal vector facet 1 ? 3*
0.000000
0.000000
1.000000
# Should grains of phase 1 (FCC_A1) be reduced to categories?
# Options: categorize no_categorize
no_categorize
# Type of molar volume input ?
# Options: constant database [temp_extrapol] [conc_extrapol]
database
1
#
#
#
#
# Phase Interactions
# ==================
# Start legacy mode by entering keyword 'phase_interaction' or 'no_phase_interaction'.
# Start terse mode with 2 phase IDs and keyword 'phase_interaction' in one line.
# Finish terse mode input with 'end_phase_interactions'.
#
# 0 (LIQUID) / 1 (FCC_A1)
# -------------------------
# Simulation of interaction between 0 (LIQUID) and 1 (FCC_A1)?
# Options:
# phase_interaction
# [ standard | particle_pinning[_temperature] | solute_drag ]
# [ redistribution_control ]
# [ no_junction_force ]
# | no_phase_interaction
# [ junction_force ]
# [ phase_diagram ]
no_phase_interaction
#
# 0 (LIQUID) / 2 (BCC_A2)
# -------------------------
# Simulation of interaction between 0 (LIQUID) and 2 (BCC_A2)?
# Options:
# phase_interaction
# [ standard | particle_pinning[_temperature] | solute_drag ]
# [ redistribution_control ]
# [ no_junction_force ]
# | no_phase_interaction
# [ junction_force ]
# [ phase_diagram ]
# | identical <phase1> <phase2>
no_phase_interaction
#
#
#
# 1 (FCC_A1) / 1 (FCC_A1)
# -------------------------
# Simulation of interaction between 1 (FCC_A1) and 1 (FCC_A1)?
# Options:
# phase_interaction
# [ standard | particle_pinning[_temperature] | solute_drag ]
# [ no_junction_force ]
# | no_phase_interaction
# [ junction_force ]
# | identical <phase1> <phase2>
phase_interaction redistribution_control
# Type of interfacial energy definition between 1 (FCC_A1) and 1 (FCC_A1) ?
# Options: constant temp_dependent
constant
# Interfacial energy between 1 (FCC_A1) and 1 (FCC_A1) ? [J/cm**2]
# [max. value for num. interface stabilisation [J/cm**2]]
1.00000E-05
# Type of mobility definition between FCC_A1 and FCC_A1?
# Options: constant temp_dependent dg_dependent [fixed_minimum]
constant
# Kinetic coefficient mu between FCC_A1 and FCC_A1 [cm**4/(Js)] ?
5.00000E-06
# Shall misorientation be considered?
# Options: misorientation no_misorientation
# [low_angle_limit <degrees (default=15)>] [special_orient <nb>]
no_misorientation
#
# 1 (FCC_A1) / 2 (BCC_A2)
# -------------------------
# Simulation of interaction between 1 (FCC_A1) and 2 (BCC_A2)?
# Options:
# phase_interaction
# [ standard | particle_pinning[_temperature] | solute_drag ]
# [ redistribution_control ]
# [ no_junction_force ]
# | no_phase_interaction
# [ junction_force ]
# [ phase_diagram ]
# | identical <phase1> <phase2>
phase_interaction redistribution_control
# 'DeltaG' options: default
# avg ...[] max ...[J/cm^3] smooth ...[Deg] noise ...[J/cm^3] offset ...[J/cm^3]
offset -15.0
# I.e.: avg +0.50 smooth +0.0 offset -5.00000E+00
# Type of interfacial energy definition between 1 (FCC_A1) and 2 (BCC_A2) ?
# Options: constant temp_dependent
constant
# Interfacial energy between 1 (FCC_A1) and 2 (BCC_A2) ? [J/cm**2]
# [max. value for num. interface stabilisation [J/cm**2]]
5.0000E-05 5.0000E-04
# Type of mobility definition between FCC_A1 and BCC_A2?
# Options: constant temp_dependent dg_dependent [fixed_minimum]
constant
# Kinetic coefficient mu between FCC_A1 and BCC_A2 [cm**4/(Js)] ?
0.8E-04
# Shall misorientation be considered?
# Options: misorientation no_misorientation
# [low_angle_limit <degrees (default=15)>] [special_orient <nb>]
misorientation low_angle_limit 0 special_orient 2
# Input of the special orientation relation Nb 1
# Rotation angle? [tolerance] (in degrees)
45. 0.1
# Prefactor of interfacial energy for the special OR:
0.3000000000000
# Prefactor of interfacial mobility for the special OR?
1.0
# Input of the special orientation relation Nb 2
# Rotation angle? [tolerance] (in degrees)
0. 360.
# Prefactor of interfacial energy for the special OR:
1.000000000000
# Prefactor of interfacial mobility for the special OR?
0.3000000000000
# Is interaction isotropic?
# Options: isotropic
# anisotropic [junction_force]
# aniso_special_orient [junction_force]
anisotropic
# This anisotropic interaction is not yet implemented.
# Instead: isotropic-faceted
# Static anisotropy coefficient of facet 1 (0 < a <= 1, 1=isotrop, 0 not defined)
0.8
# Kinetic anisotropy coefficient of facet 1 (0 <= a <= 1, 1=isotrop)
0.3
# Which phase diagram is to be used?
# Options: database {local|global|interface|fragment}[<maximal distance>]
# | linear | linearTQ
database global
# Relinearisation interval for interface FCC_A1 / BCC_A2
# Options: automatic manual from_file none
automatic
# Maximal allowed local temperature deviation [K]
5.000000000000
para
para
para
#
# 2 (BCC_A2) / 2 (BCC_A2)
# -------------------------
# Simulation of interaction between 2 (BCC_A2) and 2 (BCC_A2)?
# Options:
# phase_interaction
# [ standard | particle_pinning[_temperature] | solute_drag ]
# [ no_junction_force ]
# | no_phase_interaction
# [ junction_force ]
# | identical <phase1> <phase2>
phase_interaction redistribution_control
# Type of interfacial energy definition between 2 (BCC_A2) and 2 (BCC_A2) ?
# Options: constant temp_dependent
constant
# Interfacial energy between 2 (BCC_A2) and 2 (BCC_A2) ? [J/cm**2]
# [max. value for num. interface stabilisation [J/cm**2]]
1.00000E-05
# Type of mobility definition between BCC_A2 and BCC_A2?
# Options: constant temp_dependent dg_dependent [fixed_minimum]
constant
# Kinetic coefficient mu between BCC_A2 and BCC_A2 [cm**4/(Js)] ?
5.00000E-06
# Shall misorientation be considered?
# Options: misorientation no_misorientation
# [low_angle_limit <degrees (default=15)>] [special_orient <nb>]
misorientation low_angle_limit 15
# Input of the misorientation coefficients:
# Modification of interfacial energy for low angle boundaries
# Options: factor read-shockley
factor
# Prefactor of interfacial energy for low angle boundaries?
0.5000000000000
# Modification of the mobility for low angle boundaries
# Options: {factor | humphreys [<minimum> | <minimum> <parameter B> <parameter N>]}
# (default: minimum=0.05 B=5.0 N=4.0)
factor
# Prefactor of interfacial mobility for low angle boundaries?
0.1000000000000
average_velocity
#
#
# Diffusion
# =========
# ["Terse Mode": Each line starts with component number and phase number]
# Options: diagonal|diagonal_dilute [x] multi|multi_plus [y(1..k)]
# x: one of the characters "n", "d", "g", "l", "z", "i", "I", or "f"
# y: chain of "n", "d", "g", "l", "z", or "f" (for each component)
# default: "g" resp. "gggg..."
# Rem: "n":no diffusion, "d": input, "f": T-dep. from file
# "i":infinite, "I": infinite in each grain
# from database: "g": global, "l": local, "z" global z-segmented
# Extra line option: [+b] for grain-boundary diffusion
# Extra line option (prefactor on time step): cushion <0-1>
# Extra line option: infinite_limit_[d|t] (in cm**2/s|K)
# Extra line option: maxfactor_local [real > 1.0] (default: 10.0)
# Extra line option: factor [real > 0.]
# Extra line option: dilute [real >= 0.] (default:1.0)
# Finish input of diffusion data with 'end_diffusion_data'.
#
# How shall diffusion of component C in phase LIQUID be solved?
diagonal n
# How shall diffusion of component C in phase FCC_A1 be solved?
diagonal g
# How shall diffusion of component C in phase BCC_A2 be solved?
diagonal g
# How shall diffusion of component MN in phase LIQUID be solved?
diagonal n
# How shall diffusion of component MN in phase FCC_A1 be solved?
diagonal n
# How shall diffusion of component MN in phase BCC_A2 be solved?
diagonal n
diagonal n
diagonal n
diagonal n
# How shall the interval for updating diffusion coefficients
# data be set?
# Options: constant from_file
constant
# Interval for updating diffusion coefficients data? [s]
1.0000
#
#
# Initial Microstructure
# ======================
# Type of grain positioning?
# Options: deterministic random [deterministic_infile] from_file
deterministic
# NB: the origin of coordinate system is the bottom left-hand corner,
# all points within the simulation domain having positive coordinates.
# Number of grains at the beginning?
9
#
# Input data for grain number 1:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 1?
51.2400
20.9700
# Grain radius? [micrometers]
23.3600
# Shall grain 1 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
42.1000000000000
# Input data for grain number 2:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 2?
52.1000
47.3650
# Grain radius? [micrometers]
25.8600
# Shall grain 2 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
12.0000000000000
# Input data for grain number 3:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 3?
37.1300
23.0300
# Grain radius? [micrometers]
23.8100
# Shall grain 3 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
35.0000000000000
# Input data for grain number 4:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 4?
3.24500
21.1300
# Grain radius? [micrometers]
23.8700
# Shall grain 4 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
27.1000000000000
# Input data for grain number 5:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 5?
13.1700
35.4850
# Grain radius? [micrometers]
27.0200
# Shall grain 5 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
77.4000000000000
# Input data for grain number 6:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 6?
29.3050
12.8200
# Grain radius? [micrometers]
27.7700
# Shall grain 6 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
42.9000000000000
# Input data for grain number 7:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 7?
4.78500
31.4650
# Grain radius? [micrometers]
25.3700
# Shall grain 7 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
88.3000000000000
# Input data for grain number 8:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 8?
2.15500
2.49000
# Grain radius? [micrometers]
27.9450
# Shall grain 8 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
6.20000000000000
# Input data for grain number 9:
# Geometry?
# Options: round rectangular elliptic round_inverse
round
# Center x,z coordinates [micrometers], grain number 9?
42.1750
4.61000
# Grain radius? [micrometers]
24.1500
# Shall grain 9 be stabilized or shall
# an analytical curvature description be applied?
# Options: stabilisation analytical_curvature
stabilisation
# Should the Voronoi criterion be applied?
# Options: voronoi no_voronoi
voronoi
# Phase number? (integer)
1
# Rotation angle? [Degree]
33.2000000000000

#Structure from restart file
# ---------------------------
# Shall grain(s) be replaced by initial structure(s) from a restart file(s) ?
# Options: restart_file | no_restart_file
no_restart_file
#
#
# Initial Concentrations
# ======================
# How shall initial concentrations be set?
# Options: input equilibrium from_file [phase number]
equilibrium 1
# Initial concentration of component 1 (C) in phase 1 (FCC_A1) ? [wt%]
0.3
# Initial concentration of component 2 (MN) in phase 1 (FCC_A1) ? [wt%]
4.5
# Initial concentration of component 3 (SI) in phase 1 (FCC_A1) ? [wt%]
1.5
# Temperature at which the initial equilibrium
# will be calculated? [K]
1113.15
#
#
# Process Conditions
# ==================
#
# Temperature
# -----------
# Type of temperature trend?
# Options: constant_rate time_dependent [from_file] profiles_from_file
constant_rate
#
# Initial temperature at the bottom? [K]
1113.150000000
#
# Temperature gradient in z-direction? [K/cm]
# Options: constant time_dependent [from_file]
constant
# Value?
0.000000
#
# Temperature rate? [K/s]
-20
#
#
# 1D far field for solute diffusion
# ---------------------------------
# Enable one dimensional far field approximation for solute diffusion?
# Options: 1d_far_field 1d_far_field_EW no_1d_far_field
no_1d_far_field
#
# Moving frame
# ------------
# Moving-frame system in z-direction?
# Options: moving_frame no_moving_frame
no_moving_frame
#
#
# Nucleation
# ==========
# Enable further nucleation?
# Options: nucleation nucleation_symm no_nucleation [verbose|no_verbose]
nucleation
# Additional output for nucleation?
# Options: out_nucleation no_out_nucleation
out_nucleation
#
# Number of types of seeds?
3
#
# Input for seed type 1:
# ----------------------
# Type of 'position' of the seeds?
# Options: bulk region interface triple quadruple front [restrictive]
interface
# Phase of new grains (integer) [unresolved|add_to_grain|split_from_grain]?
2
# Reference phase (integer) [min. and max. fraction (real)]?
1
# Substrate phase [2nd substrate phase]?
1
# Maximum number of new nuclei of seed type 1?
# (set negative for unlimited number)
500
# Grain radius [micrometers]?
0
# Choice of growth mode:
# Options: stabilisation analytical_curvature
stabilisation
# min. undercooling [K] (>0)?
250
# Determination of nuclei orientations?
# Options: random randomZ fix range parent_relation
parent_relation
# Minimal value of rotation angle? [Degree]
+45.00
# Maximal value of rotation angle? [Degree]
+45.00
# Shield effect:
# Shield time [s] [shield phase or group number] ?
0.2
# Shield distance [micrometers] [ nucleation distance [micrometers] ] ?
3
# Nucleation range
# min. nucleation temperature for seed type 1 [K]
0
# max. nucleation temperature for seed type 1 [K]
1200
# Time between checks for nucleation? [s]
# Options: constant from_file
constant
# Time interval [s]
0.5
# Shall random noise be applied?
# Options: nucleation_noise no_nucleation_noise
no_nucleation_noise
#
# Input for seed type 2:
# ----------------------
# Type of 'position' of the seeds?
# Options: bulk region interface triple quadruple front [restrictive]
bulk restrictive
# Phase of new grains (integer) [unresolved|add_to_grain|split_from_grain]?
2
# Reference phase (integer) [min. and max. fraction (real)]?
1
# Options: seed_undercooling seed_density
seed_undercooling
# Maximum number of new nuclei of seed type 1?
# (set negative for unlimited number)
500
# Grain radius [micrometers]?
0
# Choice of growth mode:
# Options: stabilisation analytical_curvature
stabilisation
# min. undercooling [K] (>0)?
250
# Determination of nuclei orientations?
# Options: random randomZ fix range parent_relation
parent_relation
# Minimal value of rotation angle? [Degree]
+45.00
# Maximal value of rotation angle? [Degree]
+45.00
# Shield effect:
# Shield time [s] [shield phase or group number] ?
0.1
# Shield distance [micrometers] [ nucleation distance [micrometers] ] ?
5
# Nucleation range
# min. nucleation temperature for seed type 1 [K]
0
# max. nucleation temperature for seed type 1 [K]
1200
# Time between checks for nucleation? [s]
# Options: constant from_file
constant
# Time interval [s]
0.1
# Shall random noise be applied?
# Options: nucleation_noise no_nucleation_noise
nucleation_noise
# Factor for random noise?
# (applied as DeltaT -> (1+Factor*(RAND-1/2))*DeltaT)
1.000E-02
#
# Input for seed type 3:
# ----------------------
# Type of 'position' of the seeds?
# Options: bulk region interface triple quadruple front [restrictive]
interface restrictive
# Phase of new grains (integer) [unresolved|add_to_grain|split_from_grain]?
2
# Reference phase (integer) [min. and max. fraction (real)]?
1
# Substrate phase [2nd substrate phase]?
2 1
# Maximum number of new nuclei of seed type 1?
# (set negative for unlimited number)
500
# Grain radius [micrometers]?
0
# Choice of growth mode:
# Options: stabilisation analytical_curvature
stabilisation
# min. undercooling [K] (>0)?
250
# Determination of nuclei orientations?
# Options: random randomZ fix range parent_relation
parent_relation
# Minimal value of rotation angle? [Degree]
+90.00
# Maximal value of rotation angle? [Degree]
+90.00
# Shield effect:
# Shield time [s] [shield phase or group number] ?
0.5
# Shield distance [micrometers] [ nucleation distance [micrometers] ] ?
2
# Nucleation range
# min. nucleation temperature for seed type 1 [K]
0
# max. nucleation temperature for seed type 1 [K]
1200
# Time between checks for nucleation? [s]
# Options: constant from_file
constant
# Time interval [s]
1
# Shall random noise be applied?
# Options: nucleation_noise no_nucleation_noise
nucleation_noise
# Factor for random noise?
# (applied as DeltaT -> (1+Factor*(RAND-1/2))*DeltaT)
1.000E-02
#
#
# Seed for random-number generator initialisation
# -----------------------------------------------
777777777
#
# Max. number of simultaneous nucleations?
# ----------------------------------------
# (set to 0 for automatic)
0
#
# Shall metastable small seeds be killed?
# Options: kill_metastable no_kill_metastable
no_kill_metastable
# Output
# ======
#
# Output times
# ------------
# Finish input of output times (in seconds) with 'end_of_simulation'
# 'regularly-spaced' outputs can be set with 'linear_step'
# or 'logarithmic_step' and then specifying the increment
# and end value
# ('automatic_outputs' optionally followed by the number
# of outputs can be used in conjunction with 'linear_from_file')
# 'first' : additional output for first time-step
# 'end_at_temperature' <temp> : additional output and end of simulation
# at given temperature
# 'end_at_fraction' <phase><frac> : additional output and end of simulation
# at given phase fraction
# 'suppress_at_full' <phase> : no field output for phase fraction of 100%
#
00.25
01.00
linear_step 01.00 35.5
end_of_simulation
# Number of intermediate outputs = 90
#
# Output files
# ------------
# Selection of the outputs
# [legacy|verbose|terse]
# Restart data output? ('rest')
# Options: out_restart no_out_restart [wallclock time, h.]
out_restart
# Grain number output? ('korn')
# Options: out_grains no_out_grains
out_grains
# Phase number output? ('phas')
# Options: out_phases no_out_phases [no_interfaces]
out_phases
# Fraction output? ('frac')
# Options: out_fraction no_out_fraction [phase number]
out_fraction 0 1 2
# Average fraction table? ('TabF')
# Options: tab_fractions no_tab_fractions [front_temp] [TabL_steps]
tab_fractions
# Interface output? ('intf')
# Options: out_interface no_out_interface [sharp]
out_interface
# Driving-force output? ('driv')
# Options: out_driv_force no_out_driv_force
out_driv_force
# Relinearisation number output? ('numR')
# Options: out_relin no_out_relin
no_out_relin
# Linearisation reference output? ('refR')
# Options: out_lin_ref no_out_lin_ref
no_out_lin_ref
# Interface mobility output? ('mueS')
# Options: out_mobility no_out_mobility
out_mobility
# Curvature output? ('krum')
# Options: out_curvature no_out_curvature
no_out_curvature
# Interface velocity output? ('vel')
# Options: out_velocity no_out_velocity
no_out_velocity
# Should the grain-time file be written out? ('TabK')
# Options: tab_grains no_tab_grains [extra|standard]
tab_grains
# Should the 'von Neumann Mullins' output be written out? ('TabN')
# Options: tab_vnm no_tab_vnm
no_tab_vnm
# Should the 'grain data output' be written out? ('TabGD')
# Options: tab_grain_data no_tab_grain_data
tab_grain_data
# Temperature output? ('temp')
# Options: out_temp no_out_temp
out_temp
# Concentration output? ('conc')
# Options: out_conc no_out_conc [component numbers] [atom_percent|weight_percent] [element_extensions]
out_conc
# Concentration of reference phase output? ('cPha')
# Options: out_conc_phase no_out_conc_phase
# phase 0 [component numbers (default = all)] | ...
# ... | phase n [component numbers] [atom_percent|weight_percent] [element_extensions]
out_conc_phase 1 2
# Output for phase: 3 Concentrations: All
# Average concentration per phase (and extrema)? ('TabC')
# Options: tab_conc no_tab_conc
tab_conc
# Recrystallisation energy output? ('rex')
# Options: out_recrystall no_out_recrystall
no_out_recrystall
# Recrystallised fraction output? ('TabR')
# Options: tab_recrystall no_tab_recrystall
tab_recrystall
# Dislocation density output? ('rhoD')
# Options: out_disloc no_out_disloc
out_disloc
# Miller-Indices output? ('mill')
# Options: out_miller no_out_miller
no_out_miller
# Orientation output? ('orie')
# Options: out_orientation no_out_orientation
out_orientation
# Should the orientation-time file be written? ('TabO')
# Options: tab_orientation no_tab_orientation [rotmat]
no_tab_orientation
# Linearisation output? ('TabLin')
# Options: tab_lin no_tab_lin [per_interface | reference_list] (default:both)
tab_lin
# Nucleation events output? ('TabNuc')
# Options: tab_nucleation no_tab_nucleation
tab_nucleation
# Should monitoring outputs be written out? ('TabL')
# Options: tab_log [<simulation time [s]>] [<wallclock time [min]> (default 5 min)] no_tab_log
tab_log 0.25
#
#
#
#
# Inconsistency in the definition of outputs in "out_conc_phase"
#
#
#
#
# Additional parameter will be ignored
#
#
#
#
# Invalid phase index for outcPha
#
#
# Numerical parameters
# ====================
#
# Phase field solver
# ------------------
# Time-step ?
# Options: fix ...[s] automatic automatic_limited
automatic_limited
# Options: constant from_file
constant
# Limits: (real) min./s, [max./s], [time step factor], [segregation factor]
1E-3 1
#Coefficient for phase-field criterion 1.00
#Coefficient for segregation criterion 0.900
#Number of steps to adjust profiles of initially sharp interfaces [exclude_inactive]?
20
# Type of potential?
# Options: double_obstacle multi_obstacle [no_fd_correction | fd_correction]
# Recommended: multi_obstacle fd_correction
multi_obstacle fd_correction
# Phase minimum?
1.00E-04
# Interface thickness (in cells)?
3.5
# Coefficient for initial dimension of field iFace
# [minimum usage] [target usage]
0.1
# Coefficient for initial dimension of field nTupel
# [minimum usage] [target usage]
0.1
#
# Concentration solver
# --------------------
# Factor for diffusion time stepping? (0.0 < factor < 1.0)
0.9500000000000
# Optional parameters for thermodynamic definitions
# Finish input with 'end_of_options'.
# {stoichiometric | stoich_solubility | stoich_enhanced} <phase> <component list>
# steep_limit <value>
# limits <phase> <component> <min (at%)> <max (at%)>
# penalty <phase> <phase 2> <component>
# interstitial <phase> <component list>
# sum_limits <phase> <component list>
# diagonal [<component list>]
# interaction <component 1> <component 2>
# {criterion_higher | criterion_lower} <phase> <phase 2> <component>
# {ordered | disordered} <phase> <sublattice 1> <sublattice 2>
# switch_diff_data <phase> <reference phase>
# {diff_comp_sets | vol_comp_sets | enth_comp_sets} <phase list>
# temp_limit_TQ <lowest (K)> <highest (K)>
# temp_limit_phase_TQ <phase> <lowest (K)> <highest (K)>
# independent_sublattice <phase> <submatrix component> <component list>
# database_consistent
# pressure <value (MPa)>
# start_value <phase> <phase 2>
# init_fraction <phase> <phase 2> <fraction>
# tic_tq_segments | tic_z_segments
diagonal
end_of_options
#
#
# In phase FCC_A1 component C is defined as stoichiometric.
#
# In phase FCC_A1 component C is defined as interstitial.
# In phase BCC_A2 component C is defined as interstitial.
#
#
# Parallel Execution
# ==================
# Number of parallel threads ?
4
#
#

materialmoop
Posts: 16
Joined: Tue Jul 15, 2025 10:14 pm
anti_bot: 333

Re: Diffusion Problem

Post by materialmoop » Sat Dec 27, 2025 9:00 pm

Hi,

I was actually able to fix it by removing para equilibrium and by removing the carbides, but still using that same database. Many thanks, and happy new year!

Post Reply