Skip to content

Commit

Permalink
update documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
kif committed Dec 2, 2016
1 parent 1b8d831 commit cebaf3d
Show file tree
Hide file tree
Showing 93 changed files with 11,560 additions and 6,613 deletions.
Binary file modified doc/build/_images/PONI.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_12_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_13_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_14_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_18_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_21_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_24_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_29_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_39_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_45_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_48_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_4_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_50_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_5_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_6_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_6_11.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/build/_images/output_8_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 6 additions & 3 deletions doc/build/_sources/api/modules.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
pyFAI API
=========

This chapter describes the programming interface of pyFAI, so what you can expect after having launched ipython and typed:
..
This chapter describes the programming interface of pyFAI, so what you can
expect after having launched *Jupyter notebook* (or ipython) and typed:

.. code-block:: python

import pyFAI

The most important class is AzimuthalIntegrator which is an object containing both the geometry (it inherits from Geometry, another class)
The most important class is AzimuthalIntegrator which is an object containing
both the geometry (it inherits from Geometry, another class)
and exposes important methods (functions) like integrate1d and integrate2d.

.. toctree::
Expand Down
200 changes: 187 additions & 13 deletions doc/build/_sources/api/pyFAI.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@
:undoc-members:
:show-inheritance:

:mod:`average` Module
---------------------

.. automodule:: pyFAI.average
:members:
:undoc-members:
:show-inheritance:

:mod:`azimuthalIntegrator` Module
---------------------------------

Expand All @@ -15,6 +23,15 @@
:undoc-members:
:show-inheritance:

:mod:`multi_geometry` Module
----------------------------

.. automodule:: pyFAI.multi_geometry
:members:
:undoc-members:
:show-inheritance:


:mod:`integrate_widget` Module
------------------------------

Expand Down Expand Up @@ -86,7 +103,7 @@
:members:
:undoc-members:
:show-inheritance:

:mod:`ocl_azim_csr_dis` Module
------------------------------

Expand All @@ -95,15 +112,6 @@
:undoc-members:
:show-inheritance:


:mod:`worker` Module
--------------------

.. automodule:: pyFAI.worker
:members:
:undoc-members:
:show-inheritance:

:mod:`io` Module
----------------

Expand Down Expand Up @@ -185,11 +193,177 @@
:undoc-members:
:show-inheritance:

:mod:`gui.utils` Module
-----------------------
:mod:`gui.gui_utils` Module
---------------------------

.. automodule:: pyFAI.gui.utils
:members:
:undoc-members:
:show-inheritance:


:mod:`ext.bilinear` Module
--------------------------

This extension makes a discrete 2D-array appear like a continuous function thanks
to bilinear interpolations.

.. automodule:: pyFAI.ext.bilinear
:members:
:undoc-members:
:show-inheritance:


:mod:`ext._bispev` Module
-------------------------

This extension is a re-implementation of bi-cubic spline evaluation from scipy

.. automodule:: pyFAI.ext._bispev
:members:
:undoc-members:
:show-inheritance:


:mod:`ext._blob` Module
-----------------------

Blob detection is used to find peaks in images by performing subsequent blurs

.. automodule:: pyFAI.ext._blob
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.container` Module
---------------------------

Container are a new uniform storage, optimized for the creation of both LUT and CSR.
It has nothing to do with Docker.

.. automodule:: pyFAI.ext.container
:members:
:undoc-members:
:show-inheritance:


:mod:`ext._convolution` Module
------------------------------

Convolutions in real space are used to blurs images, used in blob-detection algorithm

.. automodule:: pyFAI.ext._convolution
:members:
:undoc-members:
:show-inheritance:

:mod:`ext._distortion` Module
-----------------------------

Distortion correction are correction are applied by Look-up table (or CSR)

.. automodule:: pyFAI.ext._distortion
:members:
:undoc-members:
:show-inheritance:

:mod:`ext._geometry` Module
---------------------------

This extension is a fast-implementation for calculating the geometry, i.e. where
every pixel of an array stays in space (x,y,z) or its (r, \chi) coordinates.

.. automodule:: pyFAI.ext._geometry
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.histogram` Module
---------------------------

Re-implementation of the numpy.histogram, optimized for azimuthal integration.
Deprecated, will be replaced by silx.math.histogramnd

.. automodule:: pyFAI.ext.histogram
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.marchingsquares` Module
---------------------------------

The marchingsquares algorithm is used for calculating an iso-contour curve (displayed
on the screen while calibrating) but also to seed the points for the "massif" algoritm
during recalib.

.. automodule:: pyFAI.ext.marchingsquares
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.morphology` Module
----------------------------

The morphology extension provides a couple of binary morphology operations on images.
They are also implemented in scipy.ndimage in the general case, but not as fast.

.. automodule:: pyFAI.ext.morphology
:members:
:undoc-members:
:show-inheritance:


:mod:`ext.reconstruct` Module
-----------------------------

Very simple inpainting module for reconstructing the missing part of an image (masked)
to be able to use more common algorithms.

.. automodule:: pyFAI.ext.reconstruct
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.relabel` Module
-------------------------

Relabel regions, used to flag from largest regions to the smallest

.. automodule:: pyFAI.ext.relabel
:members:
:undoc-members:
:show-inheritance:


:mod:`ext.preproc` Module
-------------------------

Contains a preprocessing function in charge of the dark-current subtraction,
flat-field normalization, ... taking care of masked values and normalization.

.. automodule:: pyFAI.ext.preproc
:members:
:undoc-members:
:show-inheritance:


:mod:`ext._tree` Module
-----------------------

The tree is used in file hierarchy tree for the diff_map graphical user interface.

.. automodule:: pyFAI.ext._tree
:members:
:undoc-members:
:show-inheritance:

:mod:`ext.watershed` Module
---------------------------

Peak peaking via inverse watershed for connecting region of high intensity

.. automodule:: pyFAI.ext.watershed
:members:
:undoc-members:
:show-inheritance:


28 changes: 21 additions & 7 deletions doc/build/_sources/calibration.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
:Author: Jérôme Kieffer
:Date: 31/05/2016
:Date: 01/12/2016
:Keywords: generic description of the calibration procedure
:Target: General audiance
:Target: General audience

The determination of the geometry of the experimental setup for the diffraction pattern
of a reference sample is called calibration in pyFAI.
Expand All @@ -28,7 +28,8 @@ easier to perform a calibration, using the Debye-Sherrer rings of a reference
sample called calibrant.
About 30 calibrants are provided by pyFAI like :math:`LaB_6`, ceria :math:`CeO_2`,
silicon, corrundum or silver behenate.
Among other simple compound, all of the NIST `Standard Reference Materials <http://www.nist.gov/mml/mmsd/sustainable-materials/diffraction-metrology.cfm>`_
Among other simple compound, all of the NIST
`Standard Reference Materials <http://www.nist.gov/mml/mmsd/sustainable-materials/diffraction-metrology.cfm>`_
have been are tabulated and are directly available as calibrant.
One can alternatively provide its own calibrant description files which is
a simple text-file containing the largest d-spacing (in Angstrom) for a set of
Expand All @@ -42,18 +43,30 @@ Pre-processing of images:
-------------------------
The typical pre-processing consists of the averaging (or better median filtering) of darks images.
Dark current images are then subtracted from data and corrected for flat.
The pre-processing is best performed using the *pyFAI-average* tool, which documentation
is available in the :ref:`manpage`.

If saturated pixels exists, the are likely to be treated like peaks but their positions
will be wrong.
It is advised to either mask them out or to desaturate them (pyFAI provides an option,
but it is expensive in calculation time).
A Mask drawing tool, called *pyFAI-drawmask*, is installed together with pyFAI and
its documentation available in the :ref:`manpage`.

To start the calibration the *pyFAI-calib* tool will need:

* an image with Debye-Sherrer rings
* the energy or the wavelength
* the calibrant name or the d-spacing file of the calibrant
* the detector description.

Peak-picking
------------


Once started, *pyFAI-calib* will ask you to select rings.
The Peak-picking consists in the identification of peaks and groups of peaks
belonging to same ring. It can be performed by 4 methods described hereafter.
belonging to same ring.
It can be performed by 4 methods described hereafter.

Massif detection
................
Expand Down Expand Up @@ -97,7 +110,8 @@ Refinement of the parameters
----------------------------

After selecting groups of peaks, each of them is assigned to a Debye-Scherrer ring number
and associated to a d-spacing value hence a theoritcal 2\theta value.
(0-based numbering in python)
and associated to a d-spacing value hence a theoretical 2\theta value.
A supervised least-squares refinement, performed on the difference of peak position's
2-theta values versus the expected ones from calibrant provides the 6-geometry parameters
fitted.
Expand All @@ -120,7 +134,7 @@ of the scattering image.
The average error per control point (delta 2\theta error in radian) is printed out
and offers a quantitative measurement of the relative quality of the fit for similar
setups/experiment.
Neverthless its absolute value has no meaning, except the lower, the better.
Nevertheless its absolute value has no meaning, except the lower, the better.

Subsequently, pyFAI offers some validation options in to check the quality of the fit.
some of them global, some of them limited to given rings.
Expand Down
43 changes: 39 additions & 4 deletions doc/build/_sources/changelog.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,47 @@
:Author: Jérôme Kieffer
:Date: 02/06/2015
:Date: 06/06/2016
:Keywords: changelog

ChangeLog of Versions
=====================

0.12.0: 06/2016
---------------
0.13.0: 01/12/2016
------------------
* Global improvement of tests, packaging, code quality, documentation and project tools
* Scripts
- Add support for multiframe formats on pyFAI-average
- Add support for monitoring correction from header file (on pyFAI-average)
- Add progressbar in the shell (on pyFAI-average and pyFAI-integrate)
- Script drawMask_pymca is renamed into pyFAI-drawmask
- Rework of the drawmask GUI using silx
- pyFAI-drawmask do not have anymore hard dependency on PyMCA
- pyFAI-integrate can now be used without qt dependency (--no-gui)
- Fix the script to support both Python 2 and 3 (pyFAI-calib, pyFAI-benchmark)
- Fix selection of units on diff-map (the user selection was not propagated)
* For users
- More source code in MIT license
- Update name and specification for cameras
- Add cameras: Eiger500k, RaspberryPi5M, RaspberryPi8M
- Fix Xpad S540 flat detector geometry
- Fix definition of CeO2 calibrant
- Add mask and flat on multi-geometry
- Fix solid angle of the multi-geometry
- Fix geometry processing for custom output space
- Fix normalization factor and variance
- Add support for Qt5
- Add support for Debian 9 packaging
* For developers
- Create common preprocessing for distortion correction
- Create common image preprocessing using Cython (NaN filter, flatfield, dark, polarisation)
- Refactoring of units module. It allows to register custom units.
- Worker can now use Writer
- Worker polarization argument is renamed into polarization_factor
- Remove the dependency from python-fftw3, use numpy instead
- Remove QtWebKit dependency
- Fix un-correction of images using sparse matrix from scipy

0.12.0: 06/06/2016
------------------
* Continuous integration on linux, windows using Python 2.7 and 3.4+
* Drop support of Python 2.6, 3.2, 3.3 and debian6 packaging
* New radial output units: Reciprocal spacing squared and log(q) **ID02**
Expand All @@ -19,7 +54,7 @@ ChangeLog of Versions
* Compatibility with the copy module (copy.deepcopy) for azimuthal integrator **ID02**
* Distortion correction works also for non-contiguous detectors
* Update documentation and provide advanced tutorials:
- Introdution to pyFAI using the juyter notebook
- Introduction to pyFAI using the jupyter notebook
- detector calibration **ID15, BM02**
- Correction of detector distortion, examples of pixel detectors.
- calibrant calculation **ID30**
Expand Down
Loading

0 comments on commit cebaf3d

Please sign in to comment.