Indentation Tip Calibration

This example calibrates a tip from Agilent calibration measurements and uses the calibrated tip to initialize a measurement file.

from pathlib import Path

import micromechanics
from micromechanics.indentation import Indentation

repository_root = Path(micromechanics.__file__).resolve().parents[1]
calibration_file = repository_root / "examples/Agilent/FS_Calibration.xls"
measurement_file = repository_root / "examples/Agilent/NiAl_250nm_TUIL_max_depth_1000nm_GM3_SM_previousGM1.xls"

Inspect the calibration measurements first. analyse evaluates the current test, and K2P plots stiffness squared over load, a common diagnostic for frame stiffness and tip-area calibration quality.

calibration = Indentation(str(calibration_file), nuMat=0.18)
calibration.analyse()
calibration.plotAsDepth("K2P")
plot tip calibration
Open Agilent file: /home/runner/work/micromechanics/micromechanics/examples/Agilent/FS_Calibration.xls
Fit: K2P=714+ -21*h

Fit the frame stiffness and tip shape. plotStiffness shows the frame correction step; plotTip shows the calibrated tip shape against the reference geometry.

calibration.calibration(plotStiffness=True, plotTip=True)
  • plot tip calibration
  • plot tip calibration
  • plot tip calibration
Start compliance fitting
fit f(x)= 0.0378 *x+ 4e-05
  frame compliance: 4.3469e-05 um/mN = 4.3469e-08 m/N
  compliance and stiffness standard error in %: 20.24
  frame stiffness:  23005 mN/um = 2.30e+07 N/m
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.

Tip shape:
**DEPRECATION** For backward compatibility, use tip.areaPrefactors instead.
  iterated prefactors [26.0, 309.1, 2023.8]
    standard error [0.03, 57.53, 833.63]

True

Reuse the calibrated tip for a measurement file. Passing tip=calibration.tip ensures the later analysis uses the area function found from the calibration workbook instead of the default ideal tip.

measurement = Indentation(str(measurement_file), tip=calibration.tip)
Open Agilent file: /home/runner/work/micromechanics/micromechanics/examples/Agilent/NiAl_250nm_TUIL_max_depth_1000nm_GM3_SM_previousGM1.xls

Total running time of the script: (0 minutes 1.218 seconds)

Gallery generated by Sphinx-Gallery