PopIn Matlab toolbox

This toolbox has been developed to plot (nano)indentation data and to analyze pop-in events distribution.

With this Matlab toolbox, it is possible to:

  • plot load-displacement curves ;
  • fit the load-displacement curves with Hertz model ;
  • plot cumulative (Weibull or time/temperature dependent) distribution of the 1st or the 2nd pop-in.
_images/GUI_Main_Window_overview.png

Screenshot of the main window of the PopIn toolbox.

Contents

Getting started

First of all, download the source code of the Matlab toolbox.

Source code is hosted at Github.

To have more details about the use of the toolbox, please have a look to :

README.txt

How to use the GUI for “pop-in” analysis from indentation tests ?

First of all a GUI is a Graphical User Interface.

  • Run the following Matlab script :
demo.m
  • Answer ‘y’ or ‘yes’ (or press ‘Enter’) to add path to the Matlab search paths, using this script:
path_management.m
  • The following window opens:
_images/GUI_Main_Window_empty.png

Screenshot of the main window of the PopIn toolbox.

  • Import your (nano)indentation results (.xls file obtained from MTS software with at least more than 20 indentation tests for statistics), by pressing the button ‘Select file’.
  • Select the end segment (if segments exist), in order to set the maximum indentation depth.
  • Set units and criterion to detect pop-in.
  • Once the dataset is loaded and parameters set, run calculations by pressing the green button ‘RUN CALCULATIONS and PLOT’.
  • Load-displacement curves and selected cumulative distribution function (cdf) are plotted respectively on the left graphic and the right graphic.
  • A picture of the main window as .png file is created and cdf fit results are stored in a .txt file when you press the button ‘SAVE’.
  • Results are accessible by typing in the Matlab command window (here for 50 indentation tests) :
gui = guidata(gcf)

gui =
     config: [1x1 struct]                % config. of the GUI
     data_xls: [1x1 struct]              % details about .xls file
     handles: [1x1 struct]               % handles of the GUI = buttons, boxes...
     settings: [1x1 struct]              % settings of the GUI
     flag: [1x1 struct]                  % flags for errors, calculations
     data: [1x50 struct]                 % data cropped
     results: [50x1 struct]              % results obtained after calculations
     Hertz: [1x1 struct]                 % details about hertzian fit
     cumulativeFunction: [1x1 struct]    % cdf fit results
_images/GUI_select_segment.png

File selector.

_images/GUI_Main_Window.png

Plot of the load-displacement curves and the mortal Weibull cdf after loading of data.

_images/GUI_Main_Window_survival.png

Plot of the load-displacement curves and the survival Weibull cdf.

_images/GUI_Main_Window_chechenin.png

Plot of the load-displacement curves and the mortal modified Weibull cdf (Chechenin’s model).

The YAML configuration files

Default YAML configuration files, stored in the folder yaml_config_files, are loaded automatically to set the GUI:

You have to update these YAML config. files, if you want to change indenter properties, constant parameters of models and constant parameters of the least-square method used to solve nonlinear curve-fitting and the path to your datasets.

Visit the YAML website for more informations.

Visit the YAML code for Matlab.

Overview of the toolbox

_images/GUI_Main_Window_overview.png
    1. Import your (nano)indentation results. See here an example file.
    1. Set units, set the criterion of pop-in detection, set temperature of experiments, set the minimum and maximum indentation depths, set the pop-in to analyze and select the critical parameter to use for the Weibull distribution.
    1. Run the calculations and plot results.
    1. Set the plots.
    1. Save a picture of the main interface or quit this interface.
    1. Load-displacement curves with pop-in and Hertzian fit.
    1. Cumulative distribution of the pop-in.

Note

It is possible to modify YAML configuration files directly from the menu of this interface.

Note

Documentation is reachable from the button ‘HELP’ or the menu.

The ‘pop-in’ phenomenon

The nanoindentation (or instrumented or depth sensing indentation) is a variety of indentation hardness tests applied to small volumes. During nanoindentation, an indenter is brought into contact with a sample and mechanically loaded.

The following parts give a short overview of models existing in the literature used for the extraction of mechanical properties of homogeneous bulk materials from indentation experiments with conical indenters.

Parameters such as contact load \(F_\text{c}\) and depth of penetration \(h\) are recorded at a rapid rate (normally 10Hz) during loading and unloading steps of the indentation test. Usually, the depth resolution is around the fraction of \(\text{nm}\)-level and the resolution is around \(\text{nN}\)-level.

During the loading step of nanoindentation, a discontinuity in the measured depth is commonly referred to as a pop-in event.

The pop-in event

A pop-in (event) is a sudden (load or displacement) burst during the loading of an indenter on a sample. If the nanoindentation experiment is load-controlled, an horizontal plateau is also observed on the load-displacement curve, when a pop-in occurs at the critical load \(F_\text{crit}\) and critical displacement \(h_\text{crit}\) (see Figure 7). In the case of a displacement-controlled nanoindentation experiments, a vertical drop of the load is observed on the load-displacement curve.

_images/load-disp_curve_popin.png

Schematics of indentation load-displacement curve with a pop-in: a) load-controlled and b) displacement-controlled nanoindentation experiments.

\(F_\text{c,max}\) is the maximum applied load, \(h_\text{t}\) is the total indentation depth and \(h_\text{r}\) is the residual indentation depth.

Find here the Matlab function to quantify pop-in by peak detection: peakdet.m.

Warning

In this toolbox, only load-controlled nanoindentation experiments are analyzed.

Many authors observed pop-in events on metals or metallic thin films, ceramics, metallic glasses, semiconductors, hard brittle thin films deposited on a soft elastoplastic substrate…

The pop-in event is often explained by on of the following mechanisms as a function of the indented specimen (ceramic, metal, semiconductor, coated or multilayer specimen…) and the experimental conditions (time, temperature, geometry of the indenter…) :

It is really important to mention that pop-in events are function of the indenter shape [20], [9], the temperature [21] and the strain rate [20], [18].

In parallel, pop-in event is not always a perfect plateau on the load-displacement curve. Sometimes, sliding pop-in are occuring with no observable end point.

_images/load-disp_curve_popin_sliding.png

Schematics of indentation load-displacement curve with a sliding pop-in.

According to the litterature, such sliding pop-in are detected during experiments given the high-resolution of transducer [7].

Some authors proposed to describe the statistics of the pop-in event with a cumulative Weibull-type distribution [5] or with a cumulative fraction function based on a rate equation, when a time or a temperature dependence of the pop-in is demonstrated.

Weibull-type distribution

The cumulative Weibull distribution function with 2 parameters \((\lambda, m)\) is a continuous probability distribution and is often used in the description of particle size distribution and in survival or failure analysis [29].

()\[V\left(x, \lambda, m\right) = exp\left(\left(\frac{x}{\lambda}\right)^m\right)\]
()\[W\left(x, \lambda, m\right) = 1 - exp\left(\left(\frac{x}{\lambda}\right)^m\right)\]

With \(V\) the survival probability function and \(W\) the mortal probability function. \(m\) is a dimensionless material-dependent constant, often named the Weibull modulus (from 0 to usually 50) [1]. If \(m=1\), the rate of failure remains constant and there is random failure occurring.

In the case of several indentations performed on the same sample, \(x\) can be the distribution of the critical loads \(F_\text{crit}\) or the critical displacements \(h_\text{crit}\), at which the pop-in events appear on the corresponding load-displacement curves. In this case, higher is \(m\), more homogeneous is the distribution of the pop-in.

\(\lambda\) is the scale parameter of the cumulative Weibull distribution. In the case of indentations, \(\lambda\) is the mean critical load \(F^0_{crit}\) or the mean critical displacement \(h^0_{crit}\) at which the pop-in event appears for a given material.

Find here the Matlab function to calculate the cumulative mortal Weibull distribution: weibull_cdf.m.

Find here the Matlab function to calculate the complementary cumulative survival Weibull distribution: weibull_cdf_survival.m.

Chechenin et al. proposed to use a modified cumulative Weibull distribution function for the description of the statistics of the pop-in event [5]. This function is set to have a probability of 0.5, when \(F_{crit}\) (the critical load) is equal to \(F^0_{crit}\) (the mean critical load).

()\[W\left(\frac{F_\text{crit}}{F^0_\text{crit}}\right) = 1 - exp\left(-ln2\left(\frac{F_\text{crit}}{F^0_\text{crit}}\right)^m\right)\]

The cumulative Weibull distribution [29] and the modified cumulative Weibull distribution [5] are implemented in the PopIn toolbox.

Find here the Matlab function to calculate the cumulative modified mortal Weibull distribution: weibull_modified_cdf.m.

Find here the Matlab function to calculate the complementary cumulative modified survival Weibull distribution: weibull_modified_cdf_survival.m.

Dislocations nucleation

According to many authors, pop-in corresponds to the nucleation of at least one dislocation, during indentation of crystalline materials (see Figure 9) [20], [21], [22], [14], [30], [17], [13], [19], [31] and [32]. Before the pop-in event, the indentation load-displacement obtained with a spherical indenter, can be fitted with the Hertz equation (see Figure 10) [10]:

()\[F_\text{c} = (4/3) E^{*} \sqrt{R^{*}} h_\text{crit}^{1.5}\]

With \(E^{*}\) the reduced Young’s modulus calculated from indentation test defined by (5) and \(R^{*}\) the reduced radius of the spherical indenter defined by (6).

()\[\frac{1}{E^{*}} = \frac{1}{E_\text{s}^{'}} + \frac{1}{E_\text{i}^{'}}\]

With \(E_\text{s}^{'}\) the reduced Young’s modulus of the sample and \(E_\text{i}^{'}\) the reduced Young’s modulus of the indenter.

()\[\frac{1}{R^{*}} = \frac{1}{R_\text{s}} + \frac{1}{R_\text{i}}\]

With \(R_\text{s}\) the radius of the sample (usually \(+\infty\)) and \(R_\text{i}\) the radius of the indenter.

Find here the Matlab function to calculate the load with the Hertz equation: elasticLoad.m.

Find here the Matlab function to calculate the displacement with the Hertz equation: elasticDisp.m.

Find here the Matlab function to calculate the contact radius with the Hertz equation: elasticRadius.m.

Find here the Matlab function to calculate the reduced value of a variable: reducedValue.m.

_images/popin_mechanisms_1.png

Schematics cross section of deformation profile of an elastic-plastic substrate under indentation : 1) elastic deformation, 2) elastoplastic deformation (nucleation of dislocation) and 3) transfer of dislocations across a grain boundary.

_images/load-disp_curve_two_popin_Hertzian_fit.png

Schematic of indentation load-displacement curve with two pop-in events (the 1st for the nucleation of dislocation and the 2nd for the strain transfer across a grain boundary).

The elastic-plastic transition is often studied statistically as a function of temperature \(T\) and indentation rate \(F(t)\). Schuh C.A. et al. observed a good consistency between experimental results and a thermally activated mechanism of incipient plasticity [20], [21], [22], [14]. They also proposed to use a statistical thermal activation model (see following equations) with a stress-biasing term. Based on this model, it is possible to extract the activation energy \(\epsilon-\sigma V\), activation volume \(V\), and attempt frequency for the rate-limiting event that controls yield \(W(F_\text{c})\). The activation energy \(\epsilon-\sigma V\) is separated into a term characterizing the activation enthalpy \(\epsilon\), and a term giving the stress bias \(\sigma V\), where \(\sigma\) is the biasing stress over the activation volume \(V\).

()\[\dot{n} = \eta exp\left(-\frac{\epsilon-\sigma V}{kT}\right)\]
()\[\dot{N} = \eta exp\left(-\frac{\epsilon}{kT}\right)\cdot\int\int\limits_\Omega\int exp \left(\frac{\sigma V}{kT}\right)d\Omega\]
()\[\dot{F}(t) = \left[1-F(t)\right]{N}(t)\]
()\[F(t) = 1- exp\left(-\int_{0}^{t}{\dot{N}(t')dt'}\right)\]
()\[\tau_\text{max} = 0.31p_0 = 0.47p_\text{max} = \left(\frac{0.47}{\pi}\right)\left(\frac{4E^{*}}{3R^{*}}\right)F^{1/3}_{crit}\]
()\[\Omega \approx Ka^3 = K\left(\frac{3F_{crit}R^{*}}{4E^{*}}\right)\]
()\[F_\text{c} = \dot{F_\text{c}}\cdot t\]

With \(\dot{n}\) is the local rate at which the critical event occurs per unit volume of material, \(\eta\) the pre-exponential frequency factor, \(k\) the Boltzmann constant, \(\tau_\text{max}\) the maximun shear stress obtained for the maximum pressure \(p_\text{max}\), at a single point beneath the indenter given for an elastic Hertzian contact [10]. \(K\) is a proportionality constant of order \(\pi\).

Find here the Matlab function to calculate the maximum shear stress: maxShearStress.m.

Find here the Matlab function to calculate the maximum pressure: maxPressure.m.

Find here the Matlab function to calculate the mean pressure: meanPressure.m.

Finally, a statistical expression of the onset of plasticity can be formulated by combining previous equations, giving the cumulative fraction function \(W(F_\text{c})\) :

()\[W(F_\text{c}) = 1-exp\left(-\frac{9KR^{*}\eta}{4E^{*}\dot{F_\text{c}}\alpha^6}exp\left(-\frac{\epsilon}{kT}\right)\left(\beta(\alpha,F_\text{c})\right)\right)\]
()\[\alpha = \left(\frac{0.47}{\pi}\right)\left(\frac{4E^{*}}{3R^{*}}\right)^{2/3}\frac{V}{kT}\]
()\[\beta = 120exp(-F_\text{c}^{1/3}\alpha) + F_\text{c}^{5/3}\alpha^5 - 5F_\text{c}^{4/3}\alpha^4 + 20F_\text{c}\alpha^3-60F_\text{c}^{2/3}\alpha^2+120F_\text{c}^{1/3}\alpha-120\]

Find here the Matlab function to calculate the cumulative survival distribution as a function of the load rate and the temperature of nanoindentation tests: mason_cdf.m.

Find here the Matlab function to calculate the \(\alpha\) function: alphaMason.m.

Find here the Matlab function to calculate the \(\beta\) function: betaMason.m.

Note

The surface mechanical state (presence of dislocations after polishing steps or surface free of dislocation) can modified the statistics of pop-in behavior [27].

Note

See this Github repository for the plot of stress distributions at the surface and along the axis of symmetry, caused by Hertz pressure acting on a circular area radius.

In the case of prismatic dislocation loops beneath the indenter generated during pop-in, an energy balance model was also proposed by Wang D. et al. in 2021 [28].

Finally, after a short survey of the literature, it appears that pop-in or strain burst events are observed as well, on the load-displacement or stress-strain curves obtained during compression tests of metallic nano- or micro-pillar [3], [6] and [11]. This strain burst is most of the time, attributed to the nucleation of dislocations into the pillar, initially dislocation-free.

Strain transfer across grain boundaries in metals

Some authors observed sometimes two pop-in on the load-displacement curve during indentation performed close to a grain boundary (see Figure 9 and Figure 10). The first pop-in is usually attributed to the nucleation of dislocation in a metallic material (see previous section of this documentation), and the second pop-in is related to the presence nearby of the grain boundary.

The occurrence of such a strain burst is found to be related to the slip activity (function of the phase material and the grain orientation), to the grain boundary resistance (function of the grain boundary misorientation [26], to the local chemistry [4] (impurities, embrittled hydrogen…), to the prior plastic deformation [4], to the distance between the indenter and the grain boundary [26], or other experimental parameters like the shape of the indenter and the grain boundary inclination…

Recently, the STABiX Matlab toolbox was developed to analyse in simple way slip transmission in a bicrystal [15], [24] and [23].

Rupture of a hard brittle film on an elastic-plastic substrate

In the case of indentation made into a hard brittle film (e.g.: native or thermally/anodically grown oxide, ALD coatings …) on an elastic-plastic (ductile) substrate, pop-in were observed experimentally and linked to the fracture of the brittle film [12], [2], [16] and [25].

_images/load-disp_curve_popin_load_sub.png

Schematic of indentation load-displacement curve with a pop-in event and the plot of the load carried by the elastic-plastic substrate.

Some authors explained that a circumferential crack appears at the location of the elastic–plastic boundary in the substrate [2] and [16]. The radius \(c\) of this plastic zone in the ductile substrate is defined by the following equation:

()\[c = \sqrt{\frac{3F_\text{crit,s}}{2\pi\sigma_\text{e}}}\]

With \(F_\text{crit,s}\) the load carried by the substrate at the critical indentation depth at which pop-in occurs, obtained usually with the power law relationship (18). \(\sigma_\text{e}\) is the yield stress of the ductile substrate [8].

()\[F_\text{crit,s} = Kh_\text{crit}^n\]

With \(h_\text{crit}\) the critical displacement at which the pop-in appears. The two constants \(K\) and \(n\) are obtained from a fitting procedure of the load-displacement curve obtained from nanoindentation tests performed on the substrate without the brittle film.

_images/popin_mechanisms_2.png

Schematic cross section of deformation profile of a hard brittle film on an elastic-plastic substrate under indentation.

In the Figure 12, \(R\) is the radius of the spherical indenter, \(t\) is the thickness of the thin film, \(F_\text{c}\) is the applied load, \(h\) is the indentation displacement, \(c\) the radius of the plastic zone in the substrate and \(a_\text{c}\) the contact radius between the indenter and the thin film.

Find here the Matlab function to calculate the plastic radius \(c\): plasticRadius.m.

Find here the Matlab function to fit a load-displacement curve: load_displacement_fit.m.

References

[1]Afferante L. et al., “Is Weibull’s modulus really a material constant? Example case with interacting collinear cracks” (2006).
[2](1, 2) Bahr D.F. et al., “Indentation induced film fracture in hard film – soft substrate systems” (2003).
[3]Bei H. et al., “Effects of pre-strain on the compressive stress–strain response of Mo-alloy single-crystal micropillars” (2008).
[4](1, 2) Britton T.B. et al., “Nanoindentation study of slip transfer phenomenon at grain boundaries” (2011).
[5](1, 2, 3) Chechenin N.G. et al., “Nanoindentation of amorphous aluminum oxide films II. Critical parameters for the breakthrough and a membrane effect in thin hard films on soft substrates.” (1995).
[6]Crosby T. et al., “The origin of strain avalanches in sub-micron plasticity of fcc metals” (2015).
[7]Fu K. et al., “Toughness Assessment and Fracture Mechanism of Brittle Thin Films Under Nano-Indentation” (2016).
[8]Hainsworth S.V. et al., “Analysis of nanoindentation load-displacement loading curves.” (1996).
[9]Jang J.-I. et al., “Rate-dependent inhomogeneous-to-homogeneous transition of plastic flows during nanoindentation of bulk metallic glasses: Fact or artifact?” (2007).
[10](1, 2) Johnson K.L., “Contact Mechanics” (1987).
[11]Kraft O. et al., “Plasticity in Confined Dimensions” (2010).
[12]Kramer D.E. et al., “Surface constrained plasticity: Oxide rupture and the yield point process” (2001).
[13]Lu J.-Y. et al. “Thermally activated pop-in and indentation size effects in GaN films” (2012).
[14](1, 2) Mason J. et al., “Determining the activation energy and volume for the onset of plasticity during nanoindentation” (2006).
[15]Mercier D. et al. “A Matlab toolbox to analyze slip transfer through grain boundaries” (2015).
[16](1, 2) Morash K.R. and Bahr D.F., “An energy method to analyze through thickness thin film fracture during indentation” (2007).
[17]Morris J.R. et al., “Size Effects and Stochastic Behavior of Nanoindentation Pop In” (2011).
[18]Nieh T.G. et al., “Strain rate-dependent deformation in bulk metallic glasses” (2002).
[19]Ramalingam S. et al. “Determining Activation Volume for the Pressure-Induced Phase Transformation in β-Eucryptite Through Nanoindentation” (2012).
[20](1, 2, 3, 4) Schuh C.A. and Lund A.C., “Application of nucleation theory to the rate dependence of incipient plasticity during nanoindentation” (2004).
[21](1, 2, 3) Schuh C.A. et al., “Quantitative insight into dislocation nucleation from high-temperature nanoindentation experiments” (2005).
[22](1, 2) Schuh C.A., “Nanoindentation studies of materials” (2006).
[23]STABiX toolbox repository
[24]STABiX toolbox documentation
[25]Stauffer D.D. et al., “Plastic response of the native oxide on Cr and Al thin films from in situ conductive nanoindentation” (2012).
[26](1, 2) Wang M.G. and Ngan A.H.W., “Indentation strain burst phenomenon induced by grain boundaries in niobium” (2004).
[27]Wang L., “Influences of sample preparation on the indentation size effect and nanoindentation pop-in on nickel” PhD Thesis (2012).
[28]Wang D. et al., “Understanding the hydrogen effect on pop-in behavior of an equiatomic high-entropy alloy during in-situ nanoindentation”, Journal of Materials Science & Technology (2021).
[29](1, 2) Weibull W., “A statistical distribution function of wide applicability”, J. Appl. Mech.-Trans. ASME (1951), 18(3).
[30]Wo P.C. et al., “Time-dependent incipient plasticity in Ni3Al as observed in nanoindentation” (2006).
[31]Wu D. et al., “Effect of tip radius on the incipient plasticity of chromium studied by nanoindentation” (2014).
[32]Wu D. and Nieh T.G., “Incipient plasticity and dislocation nucleation in body-centered cubic chromium” (2014).

The ‘pop-in’ detection

The pop-in detection in the literature

In 2001, Malzbender J. et al. proposed to use the derivative \(dF/dh^{2}\) vs. \(h^{2}\) of the indentation load-displacement data for the pop-in detection [3]. Minima on these curves correspond to pop-in on the load-displacement curve.

In 2004, Juliano T. et al. proposed to extract numerically the derivative behavior from the loading and unloading portions of the load-displacement curves [2]. The numerical first derivative at a depth \(h_\text{x}\) was taken to be the slope of the least-squares fit between load-displacement data points and given as:

()\[{\left(\frac{dF}{dh}\right)}_{\text{h}_\text{x}} = \frac{y\left(\sum_{F_{\text{x-(y-1)/2}},h_{\text{x-(y-1)/2}}}^{F_{\text{x+(y-1)/2}},h_{\text{x+(y-1)/2}}}{Fh}\right)-\left(\sum_{h_{\text{x-(y-1)/2}}}^{h_{\text{x+(y-1)/2}}}{h}\right)-\left(\sum_{F_{\text{x-(y-1)/2}}}^{F_{\text{x+(y-1)/2}}}{F}\right)}{y\left(\sum_{h_{\text{x-(y-1)/2}}}^{h_{\text{x+(y-1)/2}}}{h^2}\right)-\left(\sum_{h_{\text{x-(y-1)/2}}}^{h_{\text{x+(y-1)/2}}}{h}\right)}\]

with \(x\) the data points number and \(y\) a positive odd integer number of data points considered.

Juliano T. et al. proposed also to take the derivative at a depth \(h_\text{x}\):

()\[{\left(\frac{dF}{dh}\right)}_{\text{h}_\text{x}} = \frac{F_{\text{x+(y-1)/2}}-F_{\text{x-(y-1)/2}}}{h_{\text{x+(y-1)/2}}-h_{\text{x-(y-1)/2}}}\]

In 2014, Askari H. et al. developed the following criteria in his algorithm, to detect a pop-in [1]:

  • Absolute change in depth over 2 lines of data: \(\Delta h = h(i) - h(i-1)\)
  • Forward 2 pts avg - trailing 2 pts average: \(\Delta h = (h(i)+h(i+1))/2 - (h(i-1)+h(i-2))/2\)
  • Forward 3 pts avg - trailing 3 pts average: \(\Delta h = (h(i)+h(i+1)+h(i+2))/3 - (h(i-1)+h(i-2)+h(i-3))/3\)

The absolute step size is the difference beteen two (or more in case averaging is active) consecutive depth readings from the machine. If this step size exceeds a user defined number then it is considered as pop-in.

In her PhD thesis, G. Nayyeri proposed to use the the first derivative at a depth \(h = h_0\) of the load-dispalcement curve, to detect a pop-in [4]:

()\[{\left(\frac{dF}{dh}\right)}_{\text{h}_{0}} = {F_{{\text{h}_{0}}+\Delta \text{h}} - F_{\text{h}_{0}} \over \Delta h}\]

The pop-in detection in the PopIn Matlab toolbox

In the PopIn Matlab toolbox, numerous criteria based on the function diff, are implemented to detect pop-in on the load-displacement curve:

  • Criterion 1 - Differences between adjacent depths: \(\Delta h = diff(h) = h(i+1) - h(i)\)
  • Criterion 2 - 2nd differences between adjacent elements (the diff operator is used 2 times): \(\Delta h = diff(diff(h)) = diff(h,2)\)
  • Criterion 3 - 3rd differences between adjacent elements (the diff operator is used 3 times): \(\Delta h = diff(diff(diff(h))) = diff(h,3)\)
  • Criterion 4 - 1st derivative of the load-displacement curve: \(1/(dF/dh) = 1/(diff(F)/diff(h))\)
  • Criterion 5 - 2nd derivative of the load-displacement curve: \(-1/(d^{2}F/dh^{2}) = -1/(diff(dF/dh)/diff(h))\)
  • Criterion 6 - Derivative of the load-displacement curve: \((dF/dh^{2}) = ((diff(F)/diff(h))/diff(h))\)

The 6th criterion is based on the one proposed by Malzbender et al. [3]. Malzbender proposed to plot the 6th criterion as a function of \(h^{2}\) and not as a function of \(h\), like it is proposed in the PopIn toolbox.

When a pop-in occurs, a peak is observed on the plot of differences or derivatives. Peaks anaysis is performed using the function peakdet released by E. Billauer to the public domain (http://www.billauer.co.il/peakdet.html). Only positive peaks are counted. A point is considered a maximum peak if it has the maximal value, and was preceded (to the left) by a value lower by a given delta. The delta value can be set by user from the GUI.

Plots of the different criteria normalized by its maximum as a function of normalized indentation displacement (\(h/max(h)\)).

_images/load-disp_curve_popin_exp.png

Plot of an experimental load-displacement curve displaying a pop-in.

_images/load-disp_curve_popin_diff1.png

Plot of the normalized 1st criterion.

_images/load-disp_curve_popin_diff2.png

Plot of the normalized 2nd criterion.

_images/load-disp_curve_popin_diff3.png

Plot of the normalized 3rd criterion.

_images/load-disp_curve_popin_dfdh.png

Plot of the normalized 4th criterion.

_images/load-disp_curve_popin_d2fdh2.png

Plot of the normalized 5th criterion.

_images/load-disp_curve_popin_dfdh2.png

Plot of the normalized 6th criterion.

Examples of nanoindentation data

Format of data

  • Only ‘Sample’ sheet of a .xls files obtained from MTS software - Analyst are accepted.
  • You data must only have the loading part from the load-displacement curves of your (nano)indentation results, or it is necessary to have a ‘Hold Segment Type’ to detect when the loading part is over.

Warning

It is advised to do at least 30 indentation tests to have consistent results.

Example

  • mts-XP_Indcon5um_Al2O3-40nm.xls
    • Data obtained for a sample of ALD-Alumina (40nm) on a substrate of PVD-Aluminum (500nm) deposited on a oxidized silicon substrate.
    • Tests were performed on a Nanoindenter XP MTS with a sphero-conical indenter (radius 5microns), without CSM mode at room temperature.

Keywords

Matlab toolbox ; Graphical User Interface (GUI) ; nanoindentation ; pop-in ; cumulative distribution ; Weibull ; statistics ; load-displacement curve ; survival probability ; critical load ; critical displacement ; Hertz model.