.. |ImAFM (TM)| unicode:: ImAFM U+2122 .. |MLA (TM)| unicode:: MLA U+2122 .. |select_ignore_icon| image:: ../Icons/select_ignore.png :width: 5mm .. |clear_ignore_icon| image:: ../Icons/clear_ignore.png :width: 5mm .. |select_range_icon| image:: ../Icons/select_range.png :width: 5mm .. |clear_range_icon| image:: ../Icons/clear_range.png :width: 5mm .. index:: Calibration, Cantilever calibration .. _calibration-label: Calibration =========== .. image:: ../Icons/calibration.png :width: 20mm :align: left Quantitative AFM starts with a good calibration of the cantilever and |ImAFM (TM)| requires this calibration *before* you start to scan a surface. The AFM Software Suite contains the latest methods for cantilever calibration based on the measurement of the thermal Brownian motion of the cantilever and a theory of hydrodynamic damping of the oscillating beam. By fitting a theoretical model to the noise data we determine all constants necessary to the measure the cantilever deflection in meters, and convert this deflection to force in Newtons. The IMP Suite determines the parameters of the cantilever as a *dynamic* transducer of force. |ImAFM (TM)|, being a dynamic method of force measurement, requires the stiffness of the beam in the frequency band of the measurement (near resonance), which is not the same as the static bending stiffness of the beam. The method works with the fundamental eigenmode of the cantilever, or the resonance with lowest frequency. Details and references to the literature are given in the advanced section on :ref:`noise-calibration-label`. Here we describe how to perform the calibration. The tab at the very top selects between calibration of the ``Flexural`` or ``Torsional`` eigenmode. The latter calibration is available if you have the Intermodulation Frictional Force Microscopy (ImFFM) option. The calibration procedure is very much the same for either type of mode, but the underlying formulas and analysis are different. We begin by describing calibration of the flexural eigenmode, and end with a discussion of the torsional eigenmode. .. note:: For the calibration to be accurate, is important that the calibration is performed when the cantilever is well free of the surface, at least several cantilever widths or about 0.1 mm or more from the surface. .. index:: Fluid, Temperature, Cantilever, plan-view dimensions, Hydrodynamic function, Sader constants, Reference calibration .. _calibration-parameters-label: Choose Cantilever and Method ++++++++++++++++++++++++++++ ``Calibration Parameters`` specifies the type of cantilever and calibration method. * ``Temp [C]`` is the temperature of the damping medium which is in thermal equilibrium with the cantilever. This temperature determines the magnitude of the thermal noise fluctuation force that is driving the cantilever. * ``Fluid`` selects the density and viscosity of the damping medium surrounding the beam, needed for calculation of hydrodynamic damping. Noise calibration methods have not been tested thoroughly beyond studies in ``Air``, but we include to option to apply the theory in ``Water 20 C``. * ``Cantilever`` selects from a list of cantilevers for which calibration constants have been published. If your cantilever is not on this list you can choose ``Arbitrary Rectangular`` and enter the cantilever ``Length, L [um]`` and ``Width, b [um]`` of your rectangular beam cantilever. You can edit the length and width fields for any chosen cantilever without changing the stored values for that cantilever. Alternatively, you can :ref:`edit-cantilever-label` as described below. .. index:: Calibration method, Hydrodynamic function, Reference calibration, Sader constants * ``Method`` selects between six methods of calibration: * ``Hydrodynamic function`` uses an analytic expression for the hydrodynamic function to calculate the damping. The calculation applies to a rectangular beam in the limit, :math:`L>>b` (see [Sader-1998]_). This method uses length and width given in the fields above. * ``Sader constants`` uses a good approximation to the hydrodynamic function described with three parameters :math:`a_0, a_1, a_2` that are specific to the particular type of cantilever. These constants have been measured and checked against other methods and according to theory they should apply to any cantilever of the same shape (see [Sader-2012]_). For this method, the length and width fields have no influence. * ``Reference calibration`` brings up three fields. If you have one good calibration for a particular type of cantilever made with some other means, such that you know all three constants: the quality factor, stiffness and resonant frequency, or ``Q-ref``, ``k-ref`` and ``f0-ref`` respectively, you can use this calibration as a reference for calibrating other cantilevers of the same shape (see [Sader-2012]_). For this method, the length and width fields have no influence. * ``Thermal tune: responsivity`` brings up a field to enter the known stiffness of the cantilever fundamental eigenmode, ``k [N/m]``. The thermal noise measurement is then applied to determine the detectors inverse responsivity [nm/V]. * ``Thermal tune: stiffness`` brings up a field to enter the known detector inverse responsivity, ``Inv. resp. [nm/V]``. The thermal noise measurement is then applied to determine the cantilever mode stiffness. * ``Manual`` overrides the thermal noise measurement and no hydrodynamic damping theory is applied. All four calibration constants are entered in the fields given: the eigenmodes resonance frequency ``f0 [Hz]``, dimensionless quality factor ``Q [-]``, mode stiffness ``k [N/m]``, and the detectors inverse responsivity ``Inv. resp.[nm/V]``. .. index:: Run calibration, Acquire noise data .. _measure-noise-label: Measure noise +++++++++++++ .. index:: Data Acquisition, Noise measurement ``Acquire Data`` controls the start of measurement, saves data, or loads previous measurement data. * ``Run calibration`` starts the averaging of many separate noise measurements, to decrease the fluctuations in the noise data. If :ref:`frequency-sweep-label` was used to find the resonance and ``Transfer results to noise calibration`` was activated, the software will automatically analyze an appropriate frequency range around the resonance. The :ref:`status-bar-label` indicates the progress of the calibration. * ``Settings`` opens an ``Acquisition Settings`` dialog box where you can select the total number of ``Measurements`` in the average, the ``Center frequency [kHz]`` and ``Frequency span [kHz]`` to analyze, and the ``Frequency resolution [Hz]`` between data points. You can also give a ``Down-sampling`` factor which averages the given number of samples before transferring to the computer for spectral analysis. * ``Save As`` opens a dialog box to save the noise data to a .txt file. If ``Autosave`` is checked (on the bottom :ref:`status-bar-label` of the main frame), calibration files will be automatically saved. The file is saved in the JSON format, and it can easily be opened in many different programing languages (Matlab, Python, Java, etc.) It is not necessary to save the raw noise data for each calibration, as the software automatically keeps track of the :ref:`current-calibration-label`, or most recent fit of calibration data, which is stored as the relevant calibration in the scan file. * ``Load`` opens a dialog box to load a previously saved noise data. .. index:: Select range, Exclude data, Fitting noise data, Simple Harmonic Oscillator Fit, .. _fit-noise-data-label: Fitting noise data ++++++++++++++++++ When the ``Enable Fit`` box is checked, the fit is performed in real time and displayed in the plot as a solid blue line. The noise contribution from the cantilever motion is shown with the yellow dash line. For a full description of the theory and fit, see :ref:`noise-calibration-label`. Sometimes very low level spurious signals can be picked up when measuring noise. If the spurious signal is not actually exciting the cantilever (i.e. present on the drive voltage), then you can improve the calibration by simply removing it from the fit. Select the following tools in the calibration plot toolbar: * |select_range_icon| right-click-and-drag on the plot will select a range where the fit will be performed. Data outside this range becomes gray and is not analyzed in the fit. * |clear_range_icon| clears the selected fit range. * |select_ignore_icon| right-click-and-drag defines an area over which data points are ignored in the fit. The removed data is marked with a red x. * |clear_ignore_icon| clears all ignored data. .. index:: Resonance frequency, Width of resonance, Quality factor, Mode stiffness, spring constant, responsivity, detector responsivity, optical lever sensitivity, responsivity, invOLS, ADU, Calibration Result, Thermal noise force, minimum detectable force, force sensitivity, Detection noise floor, noise floor, detector sensitivity .. _calibration-result-label: Calibration Result ++++++++++++++++++ The ``Calibration Result`` is displayed in several ways, including important figures of merit to judge the quality of the calibration. It is useful to think of the calibration as having two parts: The calibration of the cantilever (the force transducer) and the calibration of the detector (the deflection sensor, or optical lever). ``Cantilever:`` * ``Resonance frequency`` :math:`f_0 = \sqrt{k/m} \text{ [kHz]}` of the simple harmonic oscillator model used to model the cantilever eigenmode with mode stiffness :math:`k` and effective mass :math:`m`. * ``Width of resonance`` :math:`\gamma \text{ [Hz]}` related to the damping coefficient of the simple harmonic oscillator model. :math:`1/\gamma` is the characteristic time for exponential decay of oscillation amplitude due to the damping of the surrounding medium. * ``Quality factor`` :math:`Q= 2 \pi f_0 / \gamma` is the ratio of the energy stored in the oscillation, to the energy lost per cycle of oscillation. A freely oscillating cantilever will 'ring' for :math:`Q` cycles before the amplitude decays by a factor of :math:`1/e`, or 37%. * ``Mode stiffness`` :math:`k \text{ [N/m]}` is the eigenmode stiffness, or dynamic spring constant, which is the coefficient of the linear restoring force in the simple harmonic oscillator model describing the eigenmode. * ``Thermal noise force`` :math:`[ \text{ fN/} \sqrt{\text{Hz}} ]` is the fluctuation force associated with the linear, viscous damping of the cantilever. This frequency-independent force noise gives rise to a peak in the deflection noise near a high-Q resonance. The thermal noise force represents a fundamental sensitivity limit for force measurement (see :ref:`sensitivity-note-label`). ``Detector:`` * ``Inverse responsivity`` :math:`|\alpha|^{-1} [\mu m/\text{V}]` is the inverse magnitude of the detectors response function, which converts the measured signal in Volts [V] to a deflection of the tip in meters [m]. In the literature, this constant is often referred to as the 'inverse optical lever sensitivity' (invOLS), but we prefer the term 'responsivity' (see :ref:`sensitivity-note-label` for further discussion) . Actually, the calibration internally in the software does not rely on a calibrated measurement of Volts by the |MLA (TM)|, nor does it rely on the calibration of the AFM scanner to determine detector responsivity. The software uses the noise measurement to determine cantilever deflection in the digital counting units of the |MLA (TM)|, or Ananog-to-Digital units [ADU]. Thus, the noise measurement and hydrodynamic theory together comprise a more *primary* form of calibration. All force and distance data given by the AFM Software Suite are derived from this calibration, independent of calibration error in the measurement of detector signal in Volts, or movement of the scanner in nm. The thermal noise method does however depend (weakly) on a calibrated measurement of temperature. * ``Noise floor`` :math:`[ \text{fm/} \sqrt{\text{Hz}} ]` is the detector noise, expressed as an equivalent deflection noise of the cantilever. The noise floor is a good figure of merit for expressing the sensitivity of the opto-electronic system which detects the cantilever deflection. Note that this noise floor will depend on the type of cantilever (in particular the length) and on the adjustment of the detector (location of laser spot). * ``Equivalent force`` :math:`[ \text{fN/} \sqrt{\text{Hz}} ]` expresses the detector noise as and equivalent force noise acting on the cantilever. This equivalent force noise gives the sensitivity of force measurement, if the same cantilever were to measure force quasi-statically, or at low frequency well below resonance. * ``Peak to flat ratio`` :math:`[\text{dB}]` is the ratio of the noise peak (thermal noise) to the flat background noise (detector noise). If you compare measurements with the same cantilever and two different detectors, the larger this number, the better the detector (see :ref:`sensitivity-note-label`). Finally, the ``Calibration`` panel shows three plots of ``Stiffness``, ``Res. freq.`` and ``Q-factor`` which are updated as the data is averaged and re-anlayzed. These plots allow you to judge how many measurements are required to converge to a stable value. .. index:: current calibration .. _current-calibration-label: Current calibration +++++++++++++++++++ Running a new calibration, loading a previous calibration, selecting a new range or excluding points, runs the fitting routine which determines all the calibration constants. These constants define the **current calibration**. After each scan, all calibration constants from the current calibration are stored with the scan file, together with the raw spectral data acquired by the |MLA (TM)|. It is not necessary to store a calibration file in order to analyze the data in scan file. The ``Store`` and ``Load`` features are there only if you want to store or view raw noise data for a particular run of the calibration. The raw noise data and the calibration plot will be saved for each run if ``Autosave`` is checked. It is very easy to re-calibrate during a scan session and thereby re-define the current calibration. Simply stop the scan, retract the probe well away from from the surface (at least several cantilever widths, at least 0.1 mm), and re-run the calibration. We recommend that you re-calibrate frequently, to check if anything has changed with the cantilever and detector. Calibration should also be re-run if any adjustments have been made to the laser or the detector, and it must be performed with every new cantilever, before you start to scan with |ImAFM (TM)|. .. _edit-cantilever-label: Add Edit Remove cantilevers +++++++++++++++++++++++++++ In the ``Calibration Parameters`` group, the ``Cantilever`` selector has the option to ``Add / Edit / Remove`` cantilevers. This option does not change the selected cantilever. It opens a dialog box that allows you to change calibration parameters of the selected cantilever, or create a new cantilever. The ``Add`` tab has two options for creating a new cantilever: * ``Basic`` is for rectangular cantilevers. Enter the ``Length, L [um]`` and ``Width, b [um]`` in micrometers. Make sure that you enter a ``Cantilever name`` and the ``Manufacturer``. Click ``Add`` and your cantilever will appear in the pull-down list. The calibration method will will be based on the theoretical expression for the hydrodynamic damping function, valid for :math:`L >> b` (see ``Method`` above). * ``Advanced`` is for cantilevers of arbitrary plan-view dimensions. Here you can enter the ``Sader Constants`` if they are known, or the calibration parameters of a ``Reference calibration`` for a cantilever of the same plan view dimensions (see ``Method`` above). Length and Width are interpreted as effective values for a non-rectangular cantilever. The ``Shape`` selector is used to specify that the cantilever is, or is not rectangular. * Click ``Add`` to create the new cantilever, which will appear at the bottom of the cantilever selection list with the name user_cantilever-name. Creating a new cantilever does not effect the selected cantilever. Close the dialog box and select the new cantilever. The ``Edit`` tab allows you to change calibration parameters of the selected cantilever. The ``Remove`` tab allows you to remove a user-added cantilever from the selection list. .. index:: torsional calibration, .. _torsional-calibration-label: Calibrating torsional eigenmodes ++++++++++++++++++++++++++++++++ Torsional calibration uses the same principals as flexural calibration, but the methods are not as well tested and established as flexural callibration. We provide two methods for calibrating the lowest torsional eigenmode: * ``Torsional: Hydrodynamic Function`` uses the analytical expression for the hydrodynamic function of a long rectangular beam, calculated by Green and Sader [Green-2002]_. This method calibrates the fundamental eigenmode using the length and width values given in the fields above. * ``Torsional: Flexural + beam theory`` requires that you first calibrate the flexural eigenmode. If this is done, the mode stiffness ``k_flex`` and the resonant frequency ``f0_flex`` should appear in the fields below. This method uses the ratio of resonant frequencies of the torsional and flexural modes, to calibrate the torsional mode in reference to a calibrated flexural mode. The method is explained in a paper by [Thoren-2017]_ .