Optional input: Hysteresis factor on phMin

new developments, future functionalities, hints for further applications of MICRESS
Post Reply
Posts: 1074
Joined: Mon Jun 23, 2008 9:29 pm

Optional input: Hysteresis factor on phMin

Post by Bernd » Wed Apr 13, 2011 8:05 pm

Dear all,

since Version 5.504 of MICRESS, an optional parameter can be actively changed by the user, which controls the hysteresis for interface cells which enter of leave the interface list.

The value of the phase minimum (phMin), which is specified at the end of the input file, controls whether a grid cell is included into the interface list, and hence into the interface, or not. If the fraction of one of the involved phasees/grains is below this value, the cell is excluded. In order to prevent a type of fluctuation which consists in a frequent entering into and leaving form the interface of the same grid cell, a hysteresis factor has been introduced. This is important because such fluctuations can seriously deteriorate performance, especially with TC coupling, as each time when a new grid cell is entering into the interface, a new set of thermodynamic descriptions has to be calculated.
While this hysteresis is implemented in MICRESS since long time, the news now is that the user can control this parameter, which has a default value of 2.

Input structure:
The hysteresis factor can simply be added as optional parameter to the same line as the phase minimum:

# Other numerical parameters
# ==========================
# Phase minimum?
1.00E-06 10
# Interface thickness (in cells)?

Normally, the MICRESS code runs perfectly with the default value of 2. Under certain circumstances, like when "freezing in" the last liquid in conjuction with certain types of precipitates, this type of fluctuations may occur and strongly affect performance, sometimes accompanied by error messages about problems of convergence of the thermodynamic calculations.

a) How to identify the fluctuations?
The easiest way to localize performance losses within the subroutines for thermodynamic coupling is to consult the .numR output. This output shows in logarithmic scale the number of iterations which were necessary for calculating thermodynamic equilibria in each grid cell since the last output time step. Hotspots of performance losses can easily be spotted this way, but can have different reasons: Either convergence is difficult in certain interface cells, leading to high numbers of iterations, or the above mentioned type of fluctuations lead to a high frequency of recalculation for the same grid cell. Please note that in triple juctions, the iterations for each pair-wise interface are summed up, and each time one interaction is actualized, all other interactions are also updated. Therefore, triple or higher order junctions always somehow appear as hotspots in the .numR output.
Whether it is one or the other type of hotspots can be distinguished using the performance output .TabP, and especially the TQ-performance output .TabTQ, which gives a hint if for certain phase interactions and for certain periods of simulation time an increased calculation time is needed.
Whether this increased CPU-time occurs only during the times of relinearisation of the complete interfaces or also in between, can tell us whether it is just a convergence problem during relinearisation or a continuous loss due to fluctuation of the cells (entering and leaving the interface region repeatedly).

b) How to solve the problem:
If fluctuations of this type and the associated performance loss is observed, the use of an increased hysteresis factor (e.g. 10, 100) can be the solution. Please note that, typically, one should simultaneously reduce the value of phMin by the same value to ensure that the redistribution characteristics for newly entering cells are not changing (see also here).

Post Reply