%% $Id: ankaphase-userguide.tex,v 1.7 2013/04/23 09:47:03 WEITKAMP Exp $
%%
%% ankaphase-userguide.tex
%%
%% This is the User Guide for the ANKAphase reconstruction software 
%% for X-ray inline phase contrast images, maintained by 
%% Timm Weitkamp and Alexander Rack.
%%
%% It is written for output to PDF (via latex, dvips, and ps2pdf)
%% *and* to HTML (via TtH) and therefore contains ``%%tth:'',
%% ``\tthdump{}'' and ``\special{html:...}'' statements.
%% Compilation to HTML with TtH 3.80 works fine.
%%
%% Note that Greek letters require a case-specific syntax, example:
%% ``\tthdump{$\delta$}\special{html:<i>&delta;</i>}''. Maybe
%% future versions of TtH will not require this anymore and use
%% the new HTML entities automatically.
%%
%% Be reminded that the HTML entity for a small mu is ``&micro;'',
%% not ``&mu;''.
%%
%% Display-math formulas may require LaTeX-generated typesetting
%% to be properly displayed in a stable and robust way in an
%% HTML page. A few equations have therefore been rendered into
%% GIF images using an online renderer service
%% (http://www.codecogs.com/components/equationeditor/equationeditor.php)
%% (using 10pt and 150px as parameters)
%% and included using \special{html:...} and an <img...> tag.
%%
%% Modification history:

%% 05 Jan 2008: First version, written by Timm Weitkamp, ESRF.

%% 25 Aug 2010 (TW): Now using image files for display math,
%%   and Greek-letter HTML entities for Greek symbols in text,
%%   when compiled with tth. Also, made modifications so that
%%   the document corresponds to ANKAphase 2.0.

%% 11 Sep 2010 (TW): Corrections taking into account comments
%%   from Alexander Rack and David Haas to the version of 25 Aug.

%% 12 Sep 2010 (TW): Added description of the boundary treatment
%%   (padding), which was missing so far.

%% 03 Jan 2011 (TW): Corrected the central equation.

%% 01 Feb 2011 (TW): Enclosed the HTML version into a table
%      to get margins. Updated reference to the JSR paper. Added JSR
%      preprint to the list of files in the distribution. Reference
%      list: Updated XOP link to the currently valid link for XOP 2.3.

%% 15 Jul 2011 (TW): (1) Updated reference to the JSR paper with final
%%   bib data. (2) In section sec:more, added citations to examples of
%%   ANKAphase use. (3) Added the corresponding references in the
%%   bibliography. (4) Made cosmetic changes to other entries in the
%%   reference list (added DOIs, changed layout of hyperlinks for
%%   better formatting). (5) Added a picture of the JSR cover page of
%%   July 2011. (6) Updated information on the files in the
%%   distribution (section sec:filesindistribution).

%% 04 April 2012 (TW): Started work on draft for manual ANKAphase 2.1:
%%   (1) Added macro ``\prgversion''. (2) Changed program version and
%%   jar file name to 2.1 and ...2_1.jar. (3) Added direct link to PDF
%%   in NIH distribution (only HTML, not PDF - via
%%   \special{html:...}).

%% 20 Jan 2013 AR: started to work on document for version 2.1
%%   - good reference details for JSR article
%%   - added version history

%% 22 Apr 2013 (TW): 
%%   - Received version from AR and put it into RCS repo
%%     (RCS version number 1.3).
%%   - Increased size of new equations e06 and e07 in HTML version.
%%   - And other small changes.
%%   - Restored changes and additions made in July 2011 and April 2012 
%%     (these had been lost - maybe Alexander used an older version
%%     of the file).
%%   - Added ankaphase-erratum2012-authorprint.pdf to the list of
%%     files in the distribution.

%% 23 Apr 2013 (TW): (after feedback from AR)
%%   - Corrected typos.
%%   - Replaced ref. ohser2009a by artioli2012.
%%   - Added literature-list URL to front matter again.

\documentclass[12pt,a4paper]{article}

\usepackage{times}
\usepackage{latexsym}
%\usepackage{amssymb}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[dvips]{graphicx}
\usepackage{fancyheadings}
\usepackage[normal,small,bf]{caption2}
\usepackage[american]{babel}
\usepackage{lastpage}
\usepackage{hyperref}

\setlength{\evensidemargin}{5mm}
\setlength{\oddsidemargin}{3mm}
\setlength{\hoffset}{-5mm}
\setlength{\voffset}{-5mm}
\setlength{\textwidth}{160mm}
\setlength{\textheight}{235mm}
\setlength{\topmargin}{0mm}

\pagestyle{fancy}
%% \fancyhf{}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}

% --- Positionierung von Gleitobjekten
\setlength{\floatsep}{3.0mm}     % vert. Abstand zw. 2 Floats
\setlength{\textfloatsep}{4.5mm} % vert. Abstand zw. Text und Float b/t
\setlength{\intextsep}{4.5mm}    % vert. Abstand zw. Text und Float h
\renewcommand{\topfraction}{0.8}    % max. Seitenanteil f. t-Floats
\renewcommand{\bottomfraction}{0.6} % max. Seitenanteil f. b-Floats
\renewcommand{\textfraction}{0.0}   % min. Seitenanteil f. Text
\setcounter{topnumber}{2}     % max. Anzahl Floats t pro Seite
\setcounter{bottomnumber}{2}  % max. Anzahl Floats b pro Seite
\setcounter{totalnumber}{4}   % max. Gesamtanzahl Floats pro Seite

\setlength{\parindent}{0mm}
\setlength{\parskip}{0.8ex plus 0.2ex minus 0.3ex}
\renewcommand{\baselinestretch}{1.0} % Zeilenabstand (Default: 1.0}
%
\clubpenalty10000
\widowpenalty10000
% \sloppy
%
% **************************** Macros ****************************

\renewcommand{\d}{{\rm d}}                    % differential d, like in dx
\renewcommand{\i}{{\rm i}}                    % imaginary unit
\newcommand{\e}{{\rm e}}                      % Euler's number
\renewcommand{\theta}{\vartheta}              % Use German-style theta
\renewcommand{\phi}{\varphi}                  % Use German-style phi
\newcommand{\um}{\ensuremath{\mathrm{\mu m}}} % micrometer
\newcommand{\eV}{\mbox{e\hspace{-0.25ex}V}}   % eV
\newcommand{\keV}{\mbox{ke\hspace{-0.25ex}V}} % keV
\newcommand{\MeV}{\mbox{Me\hspace{-0.2ex}V}}  % MeV
\newcommand{\GeV}{\mbox{Ge\hspace{-0.2ex}V}}  % GeV
\newcommand{\Ausblenden}[1]{}                 % Hide text parts
\newcommand{\tthdump}[1]{#1} %  Transparent in TeX, but hide argument in tth


% ********************** Text placeholders ****************************

%% Note: These should be revised with every new release of the program.

\newcommand{\prgname}{\emph{ANKAphase}}         %% Name of the recon software
\newcommand{\prgversion}{2.1}                   %% Version number of recon software
\newcommand{\mytitle}{\prgname\ User Guide}     %% Title of this document
\newcommand{\jarfilename}{ANKAphase\_2\_1.jar}  %% File name of .jar file
\newcommand{\batfilename}{runANKAphase.bat}     %% File name of .bat file
\newcommand{\shfilename}{runANKAphase.sh}       %% File name of .sh file
\newcommand{\cmdfilename}{runANKAphase.command} %% File name of .command file
\newcommand{\javaversion}{1.6.0}                %% Java minimum version required
\newcommand{\jreversion}{6}                     %% JRE minimum version required
\newcommand{\selfcitation}{T.~Weitkamp, D.~Haas, D.~Wegrzynek, and A.~Rack, \emph{ANKAphase: software for single-distance phase-retrieval from inline X-ray phase contrast radiographs,} Journal of Synchrotron Radiation \textbf{18} (2011) 617--629, doi: \href{http://dx.doi.org/10.1107/S0909049511002895}{10.1107/S0909049511002895}\special{html: | <a href="ankaphase-jsr2011-authorprint.pdf">[PDF]</a>}.\newline\rule{0em}{2.7ex}See also \textbf{Erratum}, Journal of Synchrotron Radiation \textbf{20} (2013) 205, doi: \href{http://dx.doi.org/10.1107/S0909049512044871}{10.1107/S0909049512044871}\special{html: | <a href="ankaphase-erratum2012-authorprint.pdf">[PDF]</a>}.}
\newcommand{\linkpublist}{\url{http://www.alexanderrack.eu/ANKAphase/ankaphase_users.html}}

% ********************** Header and footer ****************************

\lhead{\mytitle}
\chead{}
\rhead{\small Page \thepage\ of \pageref{LastPage}}
\lfoot{T.\ Weitkamp, D.\ Haas, A.\ Rack}
\rfoot{ankaphase-userguide.tex \today}
\cfoot{}


% **************************** Document ****************************

\urlstyle{rm}
\title{ANKAphase User Guide} %% needed for tth for correct title of HTML page

\begin{document}

\special{html:<table width=90\% align=center>}
\special{html:<tr><td>}

\begin{titlepage}

\begin{center}

\tthdump{{\LARGE\bf\mytitle}\\ \vspace{2ex}}
%%
{\large
  Timm Weitkamp$^{1,\mathrm{a}}$, 
  David Haas$^{2,3,\mathrm{b}}$, 
  and Alexander Rack$^{4,\mathrm{c}}$
  } \\ 
%%
\vspace{1ex}
$^1$Synchrotron Soleil, Gif-sur-Yvette, France\\
$^2$ANKA Light Source,
  Karlsruhe Institute of Technology (KIT), Germany\\[0.5ex]
$^3$Hochschule Darmstadt, Germany\\
$^4$European Synchrotron Radiation Facility (ESRF), Grenoble, France\\
$^{\mathrm{a}}$E-mail: timm.weitkamp@synchrotron-soleil.fr\\
$^{\mathrm{b}}$E-mail: david.haas@kit.edu\\
$^{\mathrm{c}}$E-mail: arack@snafu.de\\
%%
\vspace{2ex}
%%
\today\\
%%
\vspace{2ex}
%%
%%\centerline{\fbox{\hfill\parbox{156mm}{\centerline{\emph{Citation:}}\selfcitation}\hfill}}

\vspace{0.8ex}

%%\leftline{Publications related to \prgname:}
%%\url{http://www.alexanderrack.eu/ANKAphase/ankaphase_users.html}

\end{center}

\begin{tabular}{@{}p{0.2\textwidth}@{\hspace{0.05\textwidth}}p{0.75\textwidth}@{}}
\tthdump{\vspace{-1.5ex}\includegraphics[width=0.2\textwidth]{jsrcover500x651.eps}}
\special{html:<img height="150" hspace=10 src="ankaphase-userguide-e00.gif">}
&
\textbf{Citation and further reading:}
\newline\rule{0em}{2.7ex}\selfcitation
\newline\rule{0em}{4.0ex}\textbf{List of related publications 
(including results):}
\newline\rule{0em}{2.7ex}\linkpublist

\end{tabular}

\tableofcontents

\end{titlepage}


%% -------------------------------------------------------------------
\section{General description}


\subsection{What \prgname\ is}

  \prgname\ \cite{weitkamp2011jsr} is a computer program that
  processes X-ray inline phase-contrast radiographs and reconstructs
  the projected thickness of the object(s) imaged in the
  radiographs. It uses an algorithm described in a paper by David
  Paganin et al.\ \cite{paganin2002} (see also section \ref{sec:algo},
  below).

  \prgname\ is designed to be used with sets of radiographs recorded
  for tomographic reconstruction (although it does not perform
  tomographic reconstruction itself). This means that it can process a
  series of phase-contrast radiographs taken of different views of a
  sample with an otherwise unchanged setup. If desired, it also
  performs flat-field and dark-image correction (i.e., normalization to
  the background intensity profile of the X-ray beam and subtraction
  of the ``dark-signal'' offset value for each pixel).

  \prgname\ is written in Java and can either be used as a standalone
  application or as a plugin to ImageJ, a widely-used scientific image
  viewing and processing program developed and maintained at the
  National Institutes of Health (NIH), Bethesda, Maryland, USA (see
  sections \ref{sec:sysrec} and \ref{sec:runwithij} below).

\subsection{\prgname\ Version History}

The current version of \prgname\ is \prgversion. Below is a brief list of changes in the major releases:

\begin{itemize}
\item Version 1.0: for development purposes only, no public release.
\item Version 2.0: re-coded graphical user interface, multi-threading capabilities added, optional boundary treatment and multiple file formats supported, first public release \cite{weitkamp2011jsr}.
\item Version 2.1: image restoration implemented as well as the (optional) use of the delta/beta ratio as phase-retrieval parameter.
\end{itemize}

\subsection{\label{sec:algo}The phase reconstruction algorithm}

  In this section we give a short synopsis of the algorithm used by
  \prgname\ and first published by Paganin et al.\
  \cite{paganin2002}. Although very robust under conditions deviating
  from the ideal situation \cite{weitkamp2011jsr}, the algorithm is
  strictly valid only if the following experimental conditions are
  fulfilled:

  \begin{enumerate}
  \item The object imaged consists of a single, homogeneous material.
  \item Monochromatic radiation is used.
  \item The distance $z$ between the object and the detector plane
    fulfils the near-field condition, i.e., %%
    %%
    \tthdump{\[ z \ll d^2 / \lambda \:, \]}
    \special{html:<br><h1 align=center><img height="20" src="ankaphase-userguide-e01.gif"></h1><br>}%%
    %%
    where $z$ is the distance between object and
    detector, $d$ is the characteristic size of the smallest discernible
    features in the object, and
    \tthdump{$\lambda$}\special{html:<i>&lambda;</i>} is the X-ray wavelength.
  \end{enumerate}

  If these conditions are met, the intensity distribution $I(x,y)$
  measured at a single, known distance $z$ between the object and the
  detector plane can then be used to retrieve the projected thickness
  $t(x,y)$ of the object (or, which is equivalent, the projected phase
  shift of the X-ray wavefront) using the relation
  %%
  \tthdump{\[ t(x,y) = -\frac1\mu \ln \left( \mathcal{F}^{-1} \left[ \frac{\mu\:\mathcal{F}[I(x,y) / I_0(x,y)]}{\mu + z \delta
(u^2 + v^2)} \right] \right) \:. \]}
  \special{html:<br><h1 align=center><img height="42" src="ankaphase-userguide-e02.gif"></h1><br>}%%
  %%
  Here, $x$ and $y$ are the Cartesian coordinates in the image and/or
  object plane, $\mu$ is the linear attenuation coefficient of the
  object material, $\mathcal{F}$ and $\mathcal{F}^{-1}$ are,
  respectively, the forward and backward Fourier transform operators,
  $I(x,y)$ is the intensity distribution in the phase-contrast
  radiograph, $I_0(x,y)$ is the incident intensity just upstream of the
  object, \tthdump{$\delta$}\special{html:<i>&delta;</i>} is the decrement
  from unity of the X-ray refractive index of the object material,
  $u,v$ are the complex conjugate coordinates of $x$ and $y$, and $z$
  is the object--detector distance. The quantities
  \tthdump{$\delta$}\special{html:<i>&delta;</i>} and
  \tthdump{$\mu$}\special{html:<i>&mu;</i>} are related to the complex-valued
  X-ray refractive index $n$ by %%
    %%
    \tthdump{\[ n = 1 - \delta + \mathrm{i}\beta \]}
    \special{html:<br><h1 align=center><img height="18" src="ankaphase-userguide-e03.gif"></h1></h1><br>}%%
    %%
  and
    %%
    \tthdump{\[ \mu = 4\pi\beta \: / \: \lambda \:, \]}
    \special{html:<br><h1 align=center><img height="18" src="ankaphase-userguide-e04.gif"></h1><br>}%%
    %%
  where both \tthdump{$\beta$}\special{html:<i>&beta;</i>} and
  \tthdump{$\delta$}\special{html:<i>&delta;</i>} are dimensionless real
  numbers, and \tthdump{$\lambda$}\special{html:<i>&lambda;</i>} is the X-ray
  wavelength.

  It can be useful to consider the reconstructed
  phase map \tthdump{$\phi(x,y)$}\special{html:<i>&phi;(x,y)</i>} as the quantity of interest, rather than the
  projected thickness \tthdump{$t(x,y)$}\special{html:<i>t(x,y)</i>}, because the latter is not meaningful
  if the material density varies. The
  reconstruction formula given above can be rewritten as \cite{weitkamp2011jsr}

  \tthdump{\[ \phi(x,y) = \frac{\delta}{2\beta} \: \ln \left(  \mathcal{F}^{-1} \left\{ \frac{\mathcal{F} [ I(x,y) / I_0(x,y) ] }
{1 + [\lambda z \delta / (4\pi\beta)] \: (u^2 + v^2)}
\right\} \right)\ \ \
 \ . \]}
  \special{html:<br><h1 align=center><img height="53" src="ankaphase-userguide-e06.gif"></h1><br>}%%

  It is worth pointing out that in the latter case only the ratio \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} is
  required as input parameter for the phase-retrieval, not
  the explicit values for \tthdump{$\beta$}\special{html:<i>&beta;</i>} and \tthdump{$\delta$}\special{html:<i>&delta;</i>}. The ratio \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} is often easier to tweak manually in cases where the exact chemical composition of the sample material is unkown.

\subsection{\label{sec:corr}Flat-field and dark-image correction}

In a real X-ray imaging system, the background signal (i.e., signal
recorded if no object is in the beam) is generally not uniform. This
can be due to inhomogeneities in the X-ray beam intensity distribution
or to non-uniform detector response (for example due to vignetting or
varying pixel sensitivities), or both. Moreover, the quantity of
interest for any quantitative analysis of the radiographs is generally
the relative transmitted intensity, $I / I_0$.

It is therefore generally required to normalize each radiograph by an
image of the beam without the object. This is called a \emph{flat-field
correction}. Also, in each image recorded with the detector, the
offset signal recorded even with no photons hitting the detector
\emph{(dark signal)} should be subtracted from the image before
further processing \emph{(dark-image correction)}. The corrected images
are
%%
\tthdump{\[ I_\mathrm{c}(x,y) = \frac{I(x,y)}{I_0(x,y)}
  = \frac{S_\mathrm{o}(x,y) - S_\mathrm{d}(x,y)}{S_\mathrm{f}(x,y) - S_\mathrm{d}(x,y)} \:,\]}
\special{html:<br><h1 align=center><img height="40" src="ankaphase-userguide-e05.gif"></h1><br>}%%
%%
where $S_\mathrm{o}(x,y)$ is the image signal measured with the object in the
beam, $S_\mathrm{d}(x,y)$ is the dark signal, and $S_\mathrm{f}(x,y)$
the flat signal (i.e., the image with the sample removed).

In order to keep the increase of statistical noise by the correction
to a minimum, it is preferable to take a series of flat-field and dark
images (rather than just one of each) and average these before using
them for correcting the object images.

\prgname\ can perform flat-field and dark correction of the
radiographs. It can process series of flat-field images, as well as
series of dark images by calculating, for every pixel, the
average gray value for that pixel, where the averaging is done over
all images in the series (but separately for each pixel). In doing
this, \prgname\ uses median averaging (rather than the arithmetic mean).


\subsection{\label{sec:padding}Boundary treatment; image padding}

To avoid crosstalk between opposed ends of the images, the
flat-corrected projection images $I_\mathrm{c}(x,y)$ are padded to
larger size before applying the phase retrieval algorithm. Without
padding, crosstalk occurs because the convolution of the projection
data with a phase-reconstruction kernel is carried out in Fourier
space (via the reconstruction formula in section \ref{sec:algo}), so
that the convolution is periodic. Further padding is required
because the fast Fourier transform (FFT) routine used by \prgname\
requires the number of pixels in each dimension to be a power of two.

In the numerical implementation of the phase-reconstruction algorithm,
the corrected projection radiographs containing the normalized
intensity distribution $I_\mathrm{c}(x,y)$ are therefore extended to
larger size by a surrounding margin before the reconstruction formula
from section \ref{sec:algo} is applied. Thus, each of the two
dimensions of the image is padded from its original value of
$n_{\mathrm{original}}$ pixels to a new width $n_{\mathrm{padded}}$ of
%%
\[ n_{\mathrm{padded}} = \exp\{ (\ln 2) \times \mathrm{ceil}[\log_2(n_{\mathrm{original}} + n_{\mathrm{ext}})] \} \:,
\]
%%
where
%%
\tthdump{\[ n_{\mathrm{ext}} = 2\times\mathrm{ceil}\left[\frac{3 \lambda z}{(\Delta x)^2}\right] \:.\]}
%%tth:\[ n_{\mathrm{ext}} = 2\times\mathrm{ceil}[3 \special{html:&lambda;}z / (\special{html:&Delta;}x)^2] \:. \]
%%

Here, $\mathrm{ceil}(x)$ is the ceiling function, which yields the
smallest integer number that is equal to or greater than $x$. The X-ray
wavelength and propagation distance are denoted, respectively,
\tthdump{$\lambda$}\special{html:<i>&lambda;</i>} and $z$, as before,
and \tthdump{$\Delta x$}\special{html:&Delta;<i>x</i>} is the pixel
size of the detector.

Each flat-corrected projection radiograph is thus first extended by
margins of width $n_{\mathrm{ext}}/2$ on all four sides and then
padded further up so that its dimensions are powers of two.

Each pixel in the padded area is filled with the value of the nearest
pixel in the original image.

The formula for $n_{\mathrm{ext}}$ takes into account the radius of
the area around each position in the detector plane from which
diffraction effects by features in the object plane are not
negligible. A derivation of the formula can be found elsewhere
\cite{weitkamp2011jsr}.

A checkbox option allows the user to force $n_{\mathrm{ext}}=0$ (``no
automatic padding'', see section \ref{sec:phaseretrievalsettings}). If
this option is set, the images will still be padded to a size
corresponding to a power of two. This option is included for cases in
which the images have already been padded before processing with
\prgname. It should not be used on images to which no boundary
treatment has been applied before.

In any case, before output, the reconstructed images are cropped back
to the original dimensions of the input images.

\subsection{\label{sec:restor}Image restoration}

To partially compensate the image blurring introduced by the single-distance
phase-retrieval, a basic image restoration algorithm \cite{imagerestore} has been implemented in \prgname\ from version 2.1 onward. It consists in deconvolution by multiplication with a Gaussian kernel in Fourier space:

  \tthdump{\[ g(u,v) = \frac{1 + c}{c + \exp[-\pi\cdot(u^2 + v^2)\cdot\sigma^2]} \:, \]}
  \special{html:<br><h1 align=center><img height="41" src="ankaphase-userguide-e07.gif"></h1><br>}%%

with the parameter $c$ (termed $stabiliser$ in the graphical user
interface) being a dimensionless, real number added to avoid division by zero and \tthdump{$\sigma$}\special{html:<i>&sigma;</i>} the width of the Gaussian (expressed
in units of the pixel size of the imaging system in \prgname~\prgversion). $u$ and $v$ are the complex conjugate coordinates of the Cartesian coordinates $x$ and $y$.

%% -------------------------------------------------------------------
\section{Where to get \prgname}

\prgname\ can be downloaded from the ImageJ plugin web site hosted by
NIH. The address is \url{http://rsbweb.nih.gov/ij/plugins/}.


%% -------------------------------------------------------------------
\section{Files in the distribution \label{sec:filesindistribution}}

The \prgname\ software distribution package contains the following
files. We recommend that you place all of these files in the same
directory.

\begin{description}

\item[\jarfilename] The Java application executable.

\item[\batfilename] A batch file recommended to launch \prgname\ as a
standalone file on Windows systems.

\item[\cmdfilename] A shell script recommended to launch \prgname\ as a
standalone file on Mac OS~X systems.

\item[\shfilename] A shell script recommended to launch \prgname\ as a
standalone file on GNU/Linux or other Unix systems.

\emph{Note:} You can edit the launcher batch file or shell script with
a standard text editor to set paths according to your needs, or to
decide for yourself how much heap space Java will allocate for
\prgname\ when it is run as a standalone application.

\item[ankaphase-jsr2011-authorprint.pdf] A reprint of a peer-reviewed
  article \cite{weitkamp2011jsr} about \prgname\ (see also section
  \ref{sec:more}), as a Portable Document Format file (can be viewed
  and/or printed with Adobe Reader, xpdf, Foxit Reader or other PDF
  viewer software).

\item[ankaphase-erratum2012-authorprint.pdf] A reprint of a published
  correction concerning a mistake in one of the formulas in the paper
  above.

\item[ankaphase-userguide.pdf] The User Guide, as a Portable Document
Format file (can be viewed and/or printed with Adobe Reader, xpdf,
Foxit Reader or other PDF viewer software).

\item[ankaphase-userguide.html] The User Guide, in Hypertext Markup
Language, for viewing in Web browsers such as Firefox, Opera, Safari
etc.

\item[ankaphase-userguide-e0{[0-7]}.gif] Eight small auxiliary graphics files
used by the HTML User Guide file.

\end{description}

%% -------------------------------------------------------------------
\section{\label{sec:sysrec}Requirements}


\subsection{Platforms and operating systems}

\prgname\ being written in Java, it should run on any platform and
with any operating system for which Java is available, i.e., Microsoft
Windows, Mac OS~X, GNU/Linux, and Sun Solaris systems. However, the
program has so far been tested only on Microsoft Windows XP and Vista, GNU/Linux
and Mac OS~X (Snow Leopard) systems.

\subsection{Software requirements}

In order to run \prgname, you need a \textbf{Java Runtime Environment}
(JRE) version \jreversion\ or higher (Java version \javaversion\ or
higher) \cite{javaversionhelp}, installed on your system. There is a
high probability that Java and the JRE are already installed on your
computer. If they are not, you can download them free of charge from
Sun Microsystems \cite{jredownload}.

You can use \prgname\ as a \textbf{plugin for ImageJ}. If you want to
do this, you will need ImageJ installed on your system. Like \prgname,
ImageJ is programmed in Java. It is open-source software and can be
downloaded from the NIH web site \cite{imagej}.

\subsection{Data format requirements}

The input data should be stacks of two-dimensional image files,
containing a single image frame per file. \prgname\ can read and write
the following image file formats (when reading images, it determines
the format from the file-name extension):
%%
\begin{itemize}

\item TIFF (unsigned integers with 8 or 16 bit depth, or
single-precision float data),

\item JPEG (8-bit unsigned integer),

\item PNG (8-bit unsigned integer),

\item BMP (8-bit unsigned integer),

\item and the ESRF-specific EDF format (4-byte single-precision float
data).

\end{itemize}


\section{\label{sec:gettingstarted}Getting started}

\subsection{Running it as a standalone application}

Used as a standalone application, \prgname\ does not need any
particular installation at all. It runs perfectly well if you don't
``install'' it. Just make sure that the files in the distribution ---
preferably all of them (see section \ref{sec:filesindistribution}
above), but at least the Java application executable
(\emph{\jarfilename}) and the launcher batch file (\emph{\batfilename}
for Windows, \emph{\cmdfilename} for Mac OS~X, \emph{\shfilename} for
GNU/Linux or other Unix-like systems) --- are in the same
directory. Then open that directory and start the launcher batch file
(typically by double-clicking on its name, or by entering its name at
the command prompt).

If you want the ``Help'' function in \prgname\ to work properly, the
files whose names start with \emph{ankaphase-userguide} should also be
placed in the same directory as \emph{\jarfilename}.

\emph{What the batch file does:} Actually, \prgname\ will start up
fine when launched without the batch file (by just opening
\emph{\jarfilename} directly). However, this will usually cause Java to
allocate only a very limited amount of ``heap space'' (memory used for
data). What the batch file does is cause Java to allocate a larger
amount of heap space than it does by default. This ensures that
\prgname\ will work properly when used with large amounts of data. We
therefore strongly recommend using the batch file when launching
\prgname\ as a standalone application.

\emph{Note:} You can edit the batch file with a standard text editor
to set paths according to your needs, or to decide for yourself how
much heap space Java will allocate for \prgname\ when it is run as a
standalone application.

\subsection{\label{sec:runwithij}Running it as a plugin for ImageJ}

Place the \emph{\jarfilename} file in the subdirectory \emph{plugins}
of your ImageJ installation directory. (On a Microsoft Windows system,
this could be
``C:$\backslash$Program~Files$\backslash$ImageJ$\backslash$plugins''.)
When running ImageJ, an entry named ``\prgname'' will then be
available in the ``Plugins'' menu or in one of its submenus.

If you want the ``Help'' function in \prgname\ to work properly, the
files whose names start with \emph{ankaphase-userguide} should be
placed in the same directory as \emph{\jarfilename}.

\subsection{Using it}

All of \prgname's control elements are contained in a
single control window that will appear when you launch the
application. The window is thematically divided into three areas:
``General settings'', ``Flat-field settings'', and ``Phase-retrieval
settings''. Some additional settings can be made near the bottom of the
window, where you will also find the ``Run'' and ``Stop''
buttons. There is also a menu bar at the top of the window. The
following sections explain these control elements in more detail.

\subsubsection{General settings\label{sec:generalsettings}}

The ``General settings'' area in the upper part of the \prgname\
control window is where you
%%
\begin{itemize}
\item set the directory paths in which
  \prgname\ will look for its input data,
\item choose whether or not to perform dark-image subtraction, and
  whether and how to carry out flat-field correction.
\end{itemize}

\paragraph{How \prgname\ finds its input images}

\prgname\ identifies the input image files it will process by the
directory in which these files are located. For a given set of images
taken under the same experimental conditions and with the same image
dimensions for all frames, it expects all the projection radiographs
to be in one directory, while the series of dark images to be averaged
for the dark correction are supposed to be in another
directory.

For the flat-field images, \prgname\ foresees two directories: one in
which flat images taken before the acquisition of the projections are
stored, and another in which flats taken after the acquisition of the
projections are stored. If two blocks of flat-field images obtained in
this manner are available, \prgname\ will correct the first half of
the projection images using the first set of flat-field images, and the
second half of the projections will be corrected using the second set
of flat-field images (unless the ``Interpolate flat-field images'')
option is set -- see section \ref{sec:flatfieldsettings} below).

It is the user's responsibility to ensure that the dimensions and data
type of all of the images in the input directories are the same.
%%
\begin{description}

\item[Projection images directory] This is the directory in which
\prgname\ looks for the projection radiographs. The program will scan
this directory for all files whose filename extension matches one of
the image formats allowed for input. All of these images are then
processed.

\item[Dark-field images directory] This is the directory in which
\prgname\ looks for dark images. All images found in this directory
are averaged (pixel-wise, median average) to form an average dark
image that will then be used for the dark correction.

The checkbox on the left of this field controls whether a dark
correction will be performed or not. Dark correction will only be made
if the box is checked.

\item[Flat-field 1 images directory] This is the directory in which
\prgname\ looks for flat-field images taken \emph{before} the
acquisition of the projection radiographs to be processed. The flat
images are averaged in the same way as the dark image series, and the
averaged image is then used for the correction.

The checkbox on the left of this field controls whether the images in
the ``Flat-field 1 images directory'' will actually be read, processed
and used for flat-field correction or not.

\item[Flat-field 2 images directory] This is the directory in which
\prgname\ looks for flat-field images taken after the acquisition of
the projection radiographs to be processed. The images are averaged in
the same way as the dark image series and the first block of
flat-field images, and the averaged image is then used for the
correction.

The checkbox on the left of this field controls whether the images in
the ``Flat-field 2 images directory'' will actually be read, processed
and used for flat-field correction or not.

\end{description}

\emph{Note:} If none of the checkboxes on the left of ``Flat-field 1
images directory'' and ``Flat-field 2 images directory'' is checked,
no flat-field correction will be made. If only one of the two
checkboxes is checked, all projection images will be
flat-field-corrected using the images in the flat-field directory
checked. If both boxes are checked and the option ``Interpolate
flat-field images'' (see section ``Flat-field settings'' below) is not
selected, the first half of the projection image files will be
corrected using the ``flat-field 1'' images, and the second half using
the ``flat-field 2'' images. If both boxes are checked and the option
``Interpolate flat-field images'' is selected, each projection image
will be corrected by a linear combination of the averaged flat-field
images from each of the two flat-image directories.


\subsubsection{Flat-field settings\label{sec:flatfieldsettings}}


The ``Flat-field settings'' area of the control window is where you
%%
\begin{itemize}
\item choose whether or not to save flat-field corrected images to disk, and,
\item if flat-field correction is performed (see section
  \ref{sec:generalsettings} for how to control this), whether or not
  the correction should be made using interpolated flat-field images.
\end{itemize}

\begin{description}

\item[Save flat-corrected images] Check this box if you want to write
  out files containing the projection images after flat-field and
  dark correction (but prior to phase reconstruction). The
  following parameters can only be set if this option is selected:

  \begin{description}

  \item[Output directory] The path of the directory to which the
    corrected projection files will be written.

  \item[File prefix] The filename prefix of the corrected projection
    files. The entire file name of each output file will consist of
    this prefix, an underscore sign, a four-digit number, and the
    filename extension corresponding to the file format. The numbering
    starts at the number indicated in the field ``Output file start
    number'' near the bottom of the window.  (The numbering of the
    input files is ignored in the output file naming.)

    For example, if you enter ``out'' in this field, and have chosen TIFF
    as the output format, the reconstruction files will have names
    \emph{out\_0000.tiff}, \emph{out\_0001.tiff}, and so forth.

  \item[Format] The image file format, data type and bit depth for the
    output files. ``Float''-type images are stored in single
    precision, i.e., with a depth of 4 bytes per pixel.

  \item[Scaling option] If you have chosen an output format with
  integer data type (i.e., any except the ``float'' formats), this
  option list allows you to select how the values of the corrected
  projections, which are internally calculated as floating-point
  values, are mapped to the range of values allowed by the output data
  type.

  Be aware that the scaling operation, while necessary for
  integer-type output, will usually result in a loss of information
  due to the reduced dynamic range of the output data type.

  In order for you to be able to retrieve the approximate original
  floating-point values from the images afterwards, a text file named
  \emph{Scaling\_flat\_images.txt} will be written to the output
  directory. This file contains the original minimum and maximum
  values of each output image, before the conversion from
  floating-point to integer data type.

  \emph{Caveat:} The file \emph{Scaling\_flat\_images.txt} will be
  overwritten without backup upon every new run of ANKAphase, unless
  you have changed the output directory.

The possible scaling options are:

  \begin{description}

    \item[Scale each image to its min/max] This is the default
    behavior. The values of each image will be scaled so the the full
    range of values in the integer output image is used. This ensures
    minimum loss of information, although it means that the scaling
    parameters will usually be different for each image in the series
    of images processed. Use the information in the file
    \emph{Scaling\_flat\_images.txt} (see above) if you need to retrieve
    the quantitative values of the corrected images later.

    \item[Scale to 3$\times$(max-min) of first image] This will use a
    global set of scaling parameters for all images in the series. The
    parameters are defined automatically so that the output image
    range is three times the range of the first processed image in the
    series. The assumption behind this is that the original range of
    values in the series of images may change, but the change is not
    excessive. As with the other scaling options, the information in
    the file \emph{Scaling\_flat\_images.txt} (see above) can be used if
    you need to retrieve the quantitative values of the corrected
    images later.

    \item[Scale to user-specified value range] This will use a global
      set of scaling parameters defined by the user via the values
      entered in the ``from:'' and ``to:'' fields. Set these two
      values to the expected minimum and maximum floating-point values
      of all corrected projections. As with the other scaling options,
      the information in the file \emph{Scaling\_flat\_images.txt} (see
      above) can be used if you need to retrieve the quantitative
      values of the corrected images later.

  \end{description}

  \end{description}

  \item[Interpolate flat-field images] If this option is set, each
    projection image is corrected with a flat-field image calculated by
    pixel-wise linear interpolation of the averaged flat-field image
    from the first block and the averaged flat-field image from the
    second block of flat-field images. If the option is not set (the
    default setting), the first half of the projection images will be
    corrected using the first set of flat-field images, and the second
    half of the projections will be corrected using the second set of
    flat-field images.

\end{description}


\subsubsection{Phase-retrieval settings\label{sec:phaseretrievalsettings}}

The ``Phase-retrieval settings'' area of the control window is where you
%%
\begin{itemize}

\item choose whether or not phase reconstruction should be carried out,

\item enter the physical parameters that will be used for phase reconstruction,

\item chose whether or not image restoration should be performed, 

\item select the output file path.

\end{itemize}

\begin{description}

\item[Save phase-retrieval images] Check this box if phase retrieval
  should be carried out and the phase-retrieved projection files
  written out to files. (Not selecting this option can make sense if
  you want to use \prgname\ to only perform flat-field and dark-image
  correction on a series of projection images.)

  The parameters that you need to set if this option is selected are:

  \begin{description}

  \item[Experiment parameters:] The physical parameters of the
  experimental setup and X-ray optical properties of the sample.

    \begin{description}

      \item[beta:] The imaginary part
      \tthdump{$\beta$}\special{html:<i>&beta;</i>} of the estimated
      complex-valued X-ray index of refraction (see section
      \ref{sec:algo} above) of the sample material, in units of
      $10^{-9}$. For example, if
      \tthdump{$\beta$}\special{html:<i>&beta;</i>}$=1.73\times
      10^{-8}$, you should enter ``17.3'' here.

      \item[delta:] The real-part decrement
      \tthdump{$\delta$}\special{html:<i>&delta;</i>} of the estimated
      complex-valued X-ray index of refraction (see section
      \ref{sec:algo} above) of the sample material, in units of
      $10^{-6}$. For example, if
      \tthdump{$\delta$}\special{html:<i>&delta;</i>}$=8.95\times
      10^{-7}$, you should enter ``0.895'' here.

      \emph{Note:} If you don't know the X-ray refractive index of the
      material your sample consists of, but you do know (or have an idea
      of) the elemental composition and density of the material, you can
      look up the quantities \tthdump{$\delta$}\special{html:<i>&delta;</i>} and \tthdump{$\beta$}\special{html:<i>&beta;</i>} in tabulated databases,
      some of which can be accessed or downloaded online and free of
      charge \cite{cxro,xop}.

      \item[use delta/beta ratio:] As an alternative to the usage of the individual values
      for \tthdump{$\beta$}\special{html:<i>&beta;</i>} and \tthdump{$\delta$}\special{html:<i>&delta;</i>}, 
      the ratio \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} can be supplied by the user. This will lead to
      retrieval of a phase map \tthdump{$\phi(x,y)$}\special{html:<i>&phi;(x,y)</i>} rather than the projected thickness 
      \tthdump{$t(x,y)$}\special{html:<i>t(x,y)</i>} (see section \ref{sec:algo}). Be aware that the contrast will be inverted
      when switching from \tthdump{$\beta$}\special{html:<i>&beta;</i>} and \tthdump{$\delta$}\special{html:<i>&delta;</i>}
      to the \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} ratio.
      
      \emph{Note:} The \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} ratio is easier to tweak manually than the individual values of \tthdump{$\beta$}\special{html:<i>&beta;</i>} and \tthdump{$\delta$}\special{html:<i>&delta;</i>}. Still, using this option will not solve the problem of an unknown X-ray refractive index
      of the material. To approach a solution in such cases, you can proceed in a similar manner as described above, starting with a ratio based on the refractive index and attenuation coefficient
      from lookup tables as soon as approximate elemental composition and density of the material are known \cite{cxro,xop}. For example, if
      \tthdump{$\delta$}\special{html:<i>&delta;</i>}$=8.95\times
      10^{-7}$ and \tthdump{$\beta$}\special{html:<i>&beta;</i>}$=1.73\times
      10^{-8}$, you should enter a value of 51.7 for the \tthdump{$\delta/\beta$}\special{html:<i>&delta;/&beta;</i>} ratio.
         
      \item[distance:] The distance between the sample and the
      detector plane, in millimeters (mm).

      \item[energy:] The mean effective X-ray photon energy, in
      kiloelectronvolts (keV).

      \item[pixel size:] The effective pixel size of the detector, in
      microns (\tthdump{$\mu$}\special{html:&micro;}m).

    \end{description}

  \item[Image restoration parameters:] If this option is activated, the Paganin kernel (see section \ref{sec:algo}) in Fourier space
      will be modified by multiplication with the Gaussian-based deconvolution kernel introduced in section \ref{sec:restor}.
      This will somewhat compensate the blurring introduced by the single-distance phase-retrieval. 
      
    \begin{description}

      \item[Gauss width:] Defines the width of the Gaussian in the deconvolution kernel expressed in units of the pixel size as
         used for the phase-retrieval. 
         
         \emph{Note:} Per default, this value is set to 1, a value empirically proven to be applicable for most cases when
         the conditions introduced in section \ref{sec:algo} are reasonably well fulfilled. A simple explanation is that the highest spatial
         frequency in the images is determined by the sampling, i.\,e., $f_{\mathrm{max}} = (\textrm{pixel size})^{-1}$. It is therefore desirable
         to deconvolve with a Gaussian whose width is related to that. 

      \item[stabiliser:] In order to avoid division by zero during for the deconvolution an additive offset is considered, termed
      $stabiliser$ in our case, see again section \ref{sec:restor}. 
      
      \emph{Note:} Empirically, for most cases in which the conditions introduced in section \ref{sec:algo} are reasonably well fulfilled, the value of this parameter should be chosen between 0.1 and 0.2. The default value is 0.2, which is often 
      a good compromise between reduction of blurring and prevention of artifacts. For 0.1, the effect of the deconvolution becomes stronger; it suppresses the blurring more efficiently but is more likely to lead to artifacts.
      For values significantly smaller than 0.1 the retrieved image will more and more resemble the input picture (before phase reconstruction), i.\,e., the
      original inline phase-contrast image. For values significantly larger than 0.2 the retrieved image will converge towards the result without image restoration.       

    \end{description}
        
  \item[Output directory] The path of the directory to which the
    corrected projection files will be written.

  \item[File prefix, Format, Scaling option] The filename prefix of
    the phase-retrieved projection files, their image data format and
    data type, and the method of value rescaling. For details, see the
    description of the corresponding fields in the ``Flat-field
    settings'' (section \ref{sec:flatfieldsettings} above). Note that
    the output text file containing the scaling parameters applied
    (\emph{Scaling\_flat\_images.txt} for the flat images) is named
    \emph{Scaling\_phase\_images.txt} for the phase-retrieved images.

    \emph{Caveat:} The file \emph{Scaling\_phase\_images.txt} will be
    overwritten without backup upon every new run of ANKAphase, unless
    you have changed the output directory.

  \item[No automatic padding] If this option is set, the images will
  not be automatically extended by a margin of width adapted to the
  experimental parameters prior to application of the phase retrieval
  transform. See section \ref{sec:padding} above for more details.

  \emph{Note:} You should only use this option if you have applied
  your own adapted edge extension to the projection images before
  processing with \prgname.

  \end{description}

\end{description}


\subsubsection{Other settings\label{sec:othersettings}}

The bottom region of the control window allows you to set a few more
options:
%%
\begin{description}

\item[Calculate images from <n1> to <n2>]: Select this option to
define a limited range of input files to be processed. If this option
is not selected, all image files in the ``projection images''
directory will be processed. If it is selected, only the <n1>st to the
<n2>st projection image will be processed. Counting starts at 1.

\item[Show images] If this option is selected, the processed images
will be displayed on the screen during processing. Note that images
displayed may appear black on screen when a ``float''-type output file
format is selected. If this happens, it does not mean that the image
files are not okay.

\item[CPUs] Select the maximum number of CPUs used in parallel by
\prgname.

\item[Output file start number] The file number offset of the output
image files (see also the explanation on output file naming and
numbering above, section \ref{sec:flatfieldsettings}). This can be
handy in cases where more than two blocks of flat-field images exist in
the primary data. Such cases are not handled automatically by
\prgname, but you can use the ``Calculate images from ... to ...''
option together with the ``Output file start number'' option to
perform flat-field correction in the desired way, i.e.,
in batches of images.

\end{description}


\subsubsection{Launching the processing\label{sec:startstop}}

Once all parameters are set, use the ``Run'' button on the lower right
of the control window to launch data processing and writing to the
output files.

The status bar at the bottom of the control window will show the
progress of the processing. If the ``Show images'' option has been
selected, display windows with the processed images will pop up during
processing. After processing has finished, a small alert window will
pop up informing you how many output image files have been written to
disk.

The ``Stop'' button to the left of the ``Run'' button allows you to
abort processing.


\subsubsection{Menu bar\label{sec:menubar}}

The menu bar (at the top of the ANKAphase window) has only two entries: ``File'' and ``Help''. While none of them is strictly necessary to use the program, both give access to functionality that may be very useful.

\paragraph{``File'' menu}

The items in the ``File'' drop-down menu allows you to
%%
\begin{itemize}

  \item save a set of parameters for later use (``Save parameters''),

  \item load a parameter set previously saved (``Load parameters''), or

  \item quit \prgname\ (``Exit'').

    Note: \textbf{Parameter files} are written as Ascii files and store the
    current contents of all the control elements in the \prgname\
    window. When \prgname\ starts, it will look for a parameter file named
    \emph{parameter21.txt} in the directory from which it was started (usually
    the same directory in which the .jar executable is located). If
    \emph{parameter21.txt} exists, it will automatically be loaded. When saving
    a parameter file through the ``Save parameters'' menu entry, you can
    give it any name. If you name it \emph{parameter21.txt} and store it in the
    \prgname\ distribution directory, it will be loaded automatically the
    next time \prgname\ is started. The parameter files from \prgname\ 2.0 
    (\emph{parameter.txt}) are not compatible with those from version 2.1, hence
    the default parameter file name was changed to \emph{parameter21.txt} in order to
    avoid conflicts. 

    Note that \prgname\ saves its parameters automatically when
    exiting, but only when processing was launched at least once.

    Note also that saving the parameters (automatically or via the
    ``Save parameters'' entry in the File menu) will overwrite any
    potentially existing parameter files of the same name without
    asking.

\end{itemize}


\paragraph{``Help'' menu}

The ``Help'' drop-down menu allows you to
%%
\begin{itemize}
  \item display some basic information about the program (``About''),
  \item open the online help file for \prgname\ (i.e., the text you
    are reading) as an HTML file in the standard web browser of your
    system (``Help''). In order for this feature to work properly, you
    should place all the help files in the distribution (files whose
    names start with \emph{ankaphase-userguide}) in the same folder as
    \emph{\jarfilename}.
\end{itemize}


\section{\label{sec:more}Further information; referencing}

Beyond this User Guide, an article in the Journal of Synchrotron
Radiation \cite{weitkamp2011jsr} further describes the details of the
algorithm used here, the conditions under which it yields good
results, and gives application examples. If you find \prgname\ useful
and present or publish results obtained with it, we kindly ask you to
give us proper credits by citing the article.

More examples of results obtained with \prgname\ can be found in the
scientific literature, for example in \cite{denecke2011,
  mochales2011, vandekamp2011, artioli2012}. 

A more complete list of publications related to \prgname\ is available
online \cite{ankaphase-litlist}.  Please contact us if you are aware
of articles that should be included in this list.


\begin{thebibliography}{99}

\bibitem{weitkamp2011jsr}\selfcitation

\bibitem{paganin2002}D.~Paganin, S.~C.\ Mayo, T.~E.\ Gureyev, P.~R.\
  Miller, and S.~W.\ Wilkins, {Simultaneous phase and amplitude
  extraction from a single defocused image of a homogeneous object},
  Journal of Microscopy \textbf{206} (2002) 33--40, DOI
  \href{http://dx.doi.org/10.1046/j.1365-2818.2002.01010.x}{10.1046/j.1365-2818.2002.01010.x}.

\bibitem{imagerestore}H.~C.\ Andrews, B.~R.\ Hunt, \textit{Digital Image Restoration}, Prentice-Hall Signal Processing Series, 1977.

\bibitem{javaversionhelp}If you are unsure which version of Java is
installed on your system, you can find out by typing ``java -version''
at the command prompt of your system (this works both on Windows [on
Windows XP, Vista and 7 the command prompt is accessible via ``All Programs --
Accessories -- Command prompt''] and on Unix systems).

\bibitem{jredownload}\url{http://www.java.com/download/}, the download
address for the Java Runtime Environment (JRE).

\bibitem{imagej}\url{http://rsb.info.nih.gov/ij/}, the ImageJ web site.

\bibitem{cxro}\url{http://henke.lbl.gov/optical_constants/}, an online
  calculator of X-ray optical properties at the Center for X-Ray
  Optics (\href{http://www.cxro.lbl.gov/}{CXRO}) at Lawrence Berkeley
  Laboratory in Berkeley, California, USA.

\bibitem{xop}\url{http://www.esrf.eu/UsersAndScience/Experiments/TBS/SciSoft/xop2.3},
  the web site of XOP (X-Ray Oriented Programs), a software suite for
  X-ray optical calculations including a database of X-ray optical
  properties (DABAX). XOP is maintained by two synchrotron light
  laboratories, the European Synchrotron Radiation Facility
  (\href{http://www.esrf.eu}{ESRF}) in Grenoble, France, and the
  Advanced Photon Source (\href{http://aps.anl.gov}{APS}) in Argonne,
  Illinois, USA.

\bibitem{denecke2011}
M.~A. Denecke, W.~de~Nolf, A.~Rack, R.~Tucoulou, P.~Cloetens, T.~Vitova,
  G.~Falkenberg, S.~Abolhassani, and B.~Kienzler,
\newblock Speciation of actinides in granite subjected to tracer studies,
\newblock in {\em Actinide Nanoparticle Research}, edited by S.~N. Kalmykov and
  M.~A. Denecke, pages 413--436, Springer, Berlin and Heidelberg, first
  edition, 2011.

\bibitem{mochales2011}
C.~Mochales, A.~Maerten, A.~Rack, P.~Cloetens, W.~D. Mueller, P.~Zaslansky, and
  C.~Fleck,
\newblock Monoclinic phase transformations of zirconia-based dental prostheses,
  induced by clinically-practised surface manipulations,
\newblock Acta Biomater. {\bf 7} (2011) 2994--3002,
doi: \href{http://dx.doi.org/10.1016/j.actbio.2011.04.007}{10.1016/j.actbio.2011.04.007}.

\bibitem{vandekamp2011}
T.~van~de Kamp, P.~Vagovi{\v{c}}, T.~Baumbach, and A.~Riedel,
\newblock A biological screw in a beetle's leg,
\newblock Science {\bf 333} (2011) 52,
doi: \href{http://dx.doi.org/10.1126/science.1204245}{10.1126/science.1204245},
\newblock and supporting online material.

\bibitem{artioli2012} G.~Artioli, M.~C.~Dalconi, M.~Parisatto,
  L.~Valentini, M.~Voltolini, and G.~Ferrari, 
  \newblock 3D imaging of complex materials: the case of cement, 
  \newblock Int. J. Mater. Res. (formerly Z. Metall\-kd.) {\bf 103} (2012)
  145--150, doi: \href{http://dx.doi.org/10.3139/146.110665}{10.3139/146.110665}.

\bibitem{ankaphase-litlist}\linkpublist,
list of publications related to \prgname\ and to results obtained with \prgname.

\end{thebibliography}


%% -- Template for insertion of Graphics
%%
%% \centerline{\includegraphics[width=160mm]{.eps}}

\special{html:</td></tr>}
\special{html:</table>}

\end{document}

