hooke: Flesh out discussion of drivers and plugins
[thesis.git] / src / hooke / plugins.tex
1 \subsection{Plugins for analysis}
2 \label{sec:hooke:plugins}
3
4 Plugins are groups of related commands for processing curves.  Curves
5 can be stored in playlists, and there are builtin plugins for
6 administrative tasks like managing curves (getting curve metadata,
7 exporting blocks, \ldots) and playlists (moving to the next curve,
8 globbing curves to the playlist, \ldots).  There are also analysis
9 plugins with commands for doing science.  The \imint{python}|vclamp|
10 plugin for velocity clamp analysis has commands for finding the
11 surface contact point, scaling the cantilever deflection, removing the
12 cantilever deflection from the total extension (\cref{fig:procedure}),
13 and flattening polynomial drift in the non-contact region.  The
14 \imint{python}|flatfilt| plugin has commands for identifying peaks
15 based on spikes in the deflection derivative and for filtering curves
16 from a playlist that only have more than a minimum threshold of such
17 peaks\citep{sandal08}.  The \imint{python}|polymer_fit| plugin has
18 commands for fitting polymer models to the loading peaks
19 (\cref{sec:sawsim:tension}), which may have been identified using the
20 \imint{python}|flatfilt| plugin or with any other peak-marking plugin.
21 For other available plugins, see the \Hooke\ documentation.
22 %
23 \nomenclature{playlist}{Playlists are containers in \Hooke\ that hold
24   lists of unfolding curves along with some additional metadata.}