Skip to content

Commit

Permalink
Merge pull request #500 from kif/v0.13
Browse files Browse the repository at this point in the history
Changes to prepare the release 0.13.0
  • Loading branch information
vallsv authored Dec 2, 2016
2 parents 0406d11 + cebaf3d commit 852e542
Show file tree
Hide file tree
Showing 287 changed files with 28,531 additions and 25,470 deletions.
2 changes: 1 addition & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Under UNIX, you may have to run the command via *sudo* to gain root access an
perform a system wide installation.

The latest release of pyFAI can be downloaded from
`Github <https://github.com/pyFAI/pyFAI/archive/master.zip>`_ .
`Github <https://github.com/silx-kit/pyFAI/archive/master.zip>`_ .
Presently the source code has been distributed as a zip package.
Download it one and unpack it::

Expand Down
2 changes: 1 addition & 1 deletion build-deb7.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Project: Azimuthal integration
# https://github.com/pyFAI/pyFAI
# https://github.com/silx-kit/pyFAI
#
# Copyright (C) 2015 European Synchrotron Radiation Facility, Grenoble, France
#
Expand Down
2 changes: 1 addition & 1 deletion build-deb8.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Project: Azimuthal integration
# https://github.com/pyFAI/pyFAI
# https://github.com/silx-kit/pyFAI
#
# Copyright (C) 2015-2016 European Synchrotron Radiation Facility, Grenoble, France
#
Expand Down
2 changes: 1 addition & 1 deletion doc/MX-calibrate.1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.46.4.
.TH MX-CALIBRATE "1" "June 2016" "PyFAI" "User Commands"
.TH MX-CALIBRATE "1" "December 2016" "PyFAI" "User Commands"
.SH NAME
MX-calibrate \- Validate detector position for MX beamlines
.SH DESCRIPTION
Expand Down
Binary file modified doc/MX-calibrate.pdf
Binary file not shown.
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
Loading

0 comments on commit 852e542

Please sign in to comment.