Recent Releases of pyfai

pyfai - PyFAI v2025.03

  • Bug fix version (Thanks to Fred Picca/Debian for testing on many architectures)
  • Use automatically dynamic mask for Dectris detector data:
    • Automatically recognizes and masks out bad pixel
    • dummy and delta_dummy values are already known from the manufacturer
    • empty bins are no more marked with the dummy value (which can be very large for Eiger) but with the empty value which is fully under control of the user, 0.0 by default.
  • Improve the plot generated by the benchmarking tool (Thanks to Jon)
  • MultiGeometry allows the mixing of different kind of detectors (Thanks ThomasK)
  • WorkerConfig dataclass, many fixes at several places, Ewoks compatibility.
  • Diffmap compatiblity with binned images
  • Pilx uses now the dynamic mask to hide hot/defective pixels
  • Improvement of the fake_calibration_image to provide both Imin and Imax
  • New Lambda 9M detector
  • Improved support of FiberIntegrator for using the correct fiber units and key parameters
  • Supports python 3.9 to 3.13. The GIL-free version on python 3.13 is untested.
  • Tested by the developers on Windows (amd64), linux (amd64, arm64 and ppc64le) and MacOS (amd64 and arm64).
  • A dozen of Pull-requests by Thomas Kluyver, Loic Huder, Edgar Gutierrez-Fernandez and Jérôme Kieffer

- Python
Published by kif 12 months ago

pyfai - 2025.01: 31/01/2025

  • Refactoring of the integrator classes:
    • Azimuthal integrator moved to pyFAI.integrator.azimuthal
    • Most common code into pyFAI.integrator.common (including a lot of deprecated stuff)
    • New sub-module dedicated to fiber/surface diffraction (pyFAI.integrator.fiber)
    • Engine loading is now in pyFAI.integrator.load_engines
    • Those are all (still) sub-classes of each-other but it will change in the futrure where they will need to be promoted to transfer all the geometry and enable other's class feature. For example: ai.promote("FiberIntegrator") or ai.promote("GeometryRefinement")
  • Refactoring of the handling of the serialization of the pyFAI-integrate GUI and pyFAI.worker.Worker into a JSON file.
    • Use a dataclass defined in pyFAI.io.integration_config.WorkerConfig to manage all parameters to configure the Worker
    • New format version 5, enables the handling of sigma-clip & median filtering
    • Provides better compatibility with Ewoks
  • Median filtering for 1D filtering:
    • includes quantile average
    • available in Python, Cython & OpenCL
    • Performances charts for sigma-clip & median filter.
  • New FiberIntegrator class for grazing-incidence/fiber scattering data (former fiber/gi methods in a new API)
    • FiberIntegrator located in pyFAI.integrator.fiber
    • Usage tutorial in doc/source/usage/tutorial/FiberGrazingIncidence.ipynb or https://www.silx.org/doc/pyFAI/dev/usage/tutorial/FiberGrazingIncidence.html
    • integrate2dgrazingincidence method to display qIP - qOOP patterns. New API with minimum inputs
    • integrate1dgrazingincidence method to perform qIP or qOOP slices. New API with minimum inputs
    • Corrected equations to handle incidentangle and tiltangle parameters
    • 8 possible sample_orientation (1-8), to rotate and flip the qIP-qOOP maps (or other units)
    • integrate2d_polar to represent the polar angle (arctan(qOOP/qIP)) versus the q modulus
    • integrate1d_polar to integrate the polar angle map (vertical or horizontal)
    • integrate2d_exitangles to reshape the diffraction pattern into horizontal and vertical exit angles, with the origin in the sample horizon
    • integrate1d_exitangles to perform an integration across one of the exit angles
    • Faster calculation with numexpr package formulas
  • New MultiGeometryFiber in pyFAI.multi_geometry
    • Analog to MultiGeometry class.
    • Instead of taking a list of AzimuthalIntegrators, it takes a list of FiberIntegrators
    • Access to integrate1d and integrate2d grazing_incidence/fiber methods
    • New tutorial of usage in doc/source/usage/tutorial/MultiGeometry/MultiGeometryFiber.ipynb`
  • Tool to rebin 2d-result into 1d-result (pyFAI.containers.rebin1d)
  • pyFAI-diffmap-view now displays the motor position in the the map.
  • Change documentation template to pydata
  • Several bug-fixes & better code coverage
  • Supports python 3.9 to 3.13. The GIL-free version on python 3.13 is untested.
  • Tested by the developers on Windows (amd64), linux (amd64, arm64 and ppc64le) and MacOS (amd64 and arm64). Thanks to Debian for extending this matrix.
  • More than 500 commits, by Thomas Vincent, Loic Huder, Edgar Gutierrez Fernandez and Jérôme Kieffer

- Python
Published by kif about 1 year ago

pyfai - PyFAI-2024.09

What's Changed

  • New tutorials:
    • On flatfield calculation from several detector position (ID31)
    • On discarded pixels when using sigma-clipping (ID15a)
  • New feature in pilx: the tool to view diffraction map
    • Fix/unfix curves
    • Colors improved
    • Motor position can ge registered and displayed along axis
  • Other new feature:
    • Expose orientation in calib2 (excluding Nexus-detectors)
    • Extra comments in PONI-file like the calibration file
    • Sigma-clipping in pure cython with hybrid error-model
    • New calibrant (Lysozyme for MX) & integration into calib2
    • Engineering notation when printing detector
    • New JSON format for integration configuration (backward compatible)
    • Import CrystFEL geom-file to generate a detector + geometry
    • GIWAXS and sigma-clip impose no pixel splitting
    • Sigma-clipping is possible from the GUI and via config files
    • Peakfinding: discard peaks with masked pixels in the local region
  • New detector: Jungfrau 1M (ID09)
  • Bug fixed:
    • Absorption kwarg was missing in sigma-clip
    • Close HDF5 files ASAP (risk of hitting the max number of file open)
    • Bug in medfilt (empty ensemble)
    • Several bugs fixed in worker (heavily used by ewoks)
    • Correct some tutorials for typos
    • Orientation of interate2d results legacy vs ng
    • Compatibility with Numpy2
    • Compatibility with Eiger2+Lima2 multi-threshold files
    • Compatibility with GCC14, discarded some deprecated code
  • Validated with Python 3.8-3.12

New Contributors

  • @pierrepaleo made their first contribution in https://github.com/silx-kit/pyFAI/pull/2207
  • @mjdiff made their first contribution in https://github.com/silx-kit/pyFAI/pull/2239
  • @jacobfilik made their first contribution in https://github.com/silx-kit/pyFAI/pull/2243

Full Changelog: https://github.com/silx-kit/pyFAI/compare/v2024.05...v2024.09

- Python
Published by kif over 1 year ago

pyfai - pyFAI-2024.05

  • Implemented unweighted average for 2D integration
    • Integration engines now handle the boolean 'weighted_average' to switch to unweighted mean, similar to legacy methods
  • Implementation of pilx (pyFAI-diffmap-view command): interactive viewer for pyFAI-diffmap files (thanks Loic Huder)
  • Creation of a RingExtraction class based on multi-threading (thanks Emily Massahud)
  • Flat-field and dark current corrections for pyFAI-calib2
  • Tunable units and integration methods for fiber/grazing-incidence scattering
  • Fix several bugs related to pyFAI-diffmap GUI/no-GUI options
  • Compatibility with numpy2
  • Fix numerical precision issue (spotted on MacOS/arm64)
  • Build system moved from bob to cibuildwheels
    • Windows wheels are build with openmp disabled (?)

- Python
Published by kif almost 2 years ago

pyfai - pyFAI-2024.02

  • Include grazing-incidence capabilities + tutorial (thanks Edgar)
  • Fix segmentation-fault in calib2 application #2047 (thanks Thomas & Edgar)
  • Use the dynamic mask to mask-out dead pixels in Eiger images in calib2
  • Extend Poisson+azimuthal uncertainties to all Cython integrators (+ non regression tests)
  • Support for Python 3.7-3.12 & requires silx v2

- Python
Published by kif about 2 years ago

pyfai - pyFAI-2024.01

  • Possibility to define the detector orientation:
    • It is the position of the origin of the detector at any of the 4 corner of the image
    • Uses the EXIF nomenclature where pyFAI's (default) orientation is tagged 3
    • Offers compatibility with calibration made by Diotas (where orientation=2 since images are flipped)
    • Expose the feature in the calib2 GUI for custom detectors.
    • Tutorial on the usage
    • New sub-version of the PoniFile API (2.1) for this feature
  • Expose the number of corners of a detector pixel (feature unused for now)
  • Refactor pyFAI-benchmark tool with better looking reults (Thanks Edgar)
  • Possibility to integrate in 2D with any second dimension unit:
    • No more limited to the azimuthal angle chi
    • Several new units have been added
    • Offers the qx/qy integration as example
  • Support for Detris Pilatus4 detector both with Si and CdTe sensors (thanks to Max Burian)
  • Support XRDML formt (compatibility with MAUD software)
  • Multigeometry gains a reset() method to free some memory with optimized garbage collection.
  • Support pathlib when reading-PONI files
  • Change in the build system:
    • Drop of setup.py the build system based on distutils/numpy.distutils/setuptools
    • Enforce the use of meson-python
    • Move the sources of the code into src directory
    • Support for Python 3.7-3.12 (requires silx v2 for 3.12) + Provide debian packages for debian12 but ubuntu 20.04 is too old and lack meson-python
  • Facts and figures:
    • 600+ commits; 120 pull-requests *with the contribution of: Edgar Gutierrez Fernandez Jérôme Kieffer.

- Python
Published by kif about 2 years ago

pyfai - pyFAI-2023.09

  • Bug fix release over 2023.08
  • Fix calibrant selection in calib2 (Thanks Valentin)
  • Centralized control of Random Number Generator for tests, to make non-regression test more consistent for CI.
  • Correct behaviour of dynamic mask (was causing systematic crashes)
  • Correct spelling of several messages.
  • Compatibility with matplotlib 3.7
  • New application icon and launcher under linux
  • Updated notebook (addresses API changes)

- Python
Published by kif over 2 years ago

pyfai - pyFAI-2023.08

  • Minor release, mostly bug-fixes. 87 commits.
  • fix malformed headers in 1D ASCII export
  • Debian packaging without setup.py (at all)
  • Fix cache invalidation issue for polarization in geometry
  • More compact (+scrollable) calibrant widget in Calib2 (Contribution from Valentin Valls)
  • Compatibility with PyQt6 and PySide6 bacckends (Contribution from malte-storm)
  • Compatibility with elder Matplotlib (<3.2)
  • Fix reproducibility issue with no-split sparse matrix multiplication (all 3)
  • Lower memory consumption of hexagonal detector instantiation.
  • Enforce the usage of the detector_factory. Detector(**config) stops working.

- Python
Published by kif over 2 years ago

pyfai - v2023.05.0

  • New detector: Jungfrau 8M used at SwissFEL
  • new method in Geometry to guess the number of bin (and avoid oversampling)
  • new method in AzimuthalIntegrator to guess the polarization factor
  • CSC-integrators (1D + 2D) implemented in pure python using scipy.sparse
  • Update documentation
  • Minor correction (remove debugging)
  • Packaging for debian12 using meson-python

- Python
Published by kif almost 3 years ago

pyfai - pyFAI v2023.3

  • Rework all 2D integrator to propagate variance, expose standard deviation and standard error of the mean.
  • Support all version of python between 3.7 and 3.11
  • Support Cython 3.0b1 (with performance degradation) in addition of cython 0.29.31+

- Python
Published by kif almost 3 years ago

pyfai - pyFAI 2023.2

  • Core:
    • sigma_clip_ng is not the default sigma_clip
    • expose documentation for sigma_clip_legacy in addition to sigma_clip_ng
    • Worker can now use sigma_clip_legacy in addition to sigma_clip_ng, integrate1d or integrate2d
    • New calibrant: Vanadinite (used in high-presure, often as single crystal)
  • GUI:
    • Fix labels on axes for some rarely used units
    • refactor IntegrationMethodDialog and share the IntegrationMethodTabs with pyFAI-calib2
  • Test:
    • silent some noisy test (OpenCL on windows)

- Python
Published by kif almost 3 years ago

pyfai - pyFAI 2023.1

First stable version of pyFAI: v2023.1.

Sources and binary wheels can be found at: https://pypi.org/project/pyFAI/ and at: https://github.com/silx-kit/pyFAI/releases/tag/v2023.1

One of a few ways to install this release with pip: pip install pyFAI==2023.1.0

Release notes and important changes since 0.21:

  • Developer and packager tools:
    • Switch build system from numpy.distutils to meson-python
    • Keep the former setup.py for compatibility reasons: it will be removed in a future release
    • Drop Python 3.6 (default parameters in namedtuple feature used)
    • Require silx 1.1 (for OpenCL), scipy and matplotlib
  • GUI side:
    • several minor improvements in pyFAI-calib2
    • Fixed calibration in jupyter-lab
  • Core improvements:
    • Refactoring of the Geometry class
    • Geometry pseudo-inversion optimization
    • Improved support from Medipix-based Lambda-detectors
    • New detectors from Dectris (Pilatus 900k and Eiger 250k)
    • Support Nexus format in output: NXmonpd and NXcansas
    • Single-threaded CSC sparse matrix multiplication engine
  • Improved uncertainty propagation:
    • Refactor error model management (uses enum)
    • Hybrid error model (azimuthal for sigma-clipping but reports Poissonian noise)
    • Export peakfinder data to the CXI format (used by CrystFEL)
  • Improvement in the doc:
    • Update installation instructions
    • Multi-threaded integration tutorial
    • GPU implementation tutorial
  • Facts and figures:
    • 400+ commits, 100 PR +with the contribution of: Clemens Prescher, Elena Pascal, Jérôme Kieffer, Malte Storm, Marco Cammarata, Michael Hudson-Doyle, Picca Frédéric-Emmanuel, Rodrigo Telles, Thomas A Caswell, Tommaso Vinci, Valentin Valls, Wout de Nolf.

- Python
Published by kif about 3 years ago

pyfai - PyFAI v0.21.3

  • Support hexagonal pixels in splitbbox and nosplit mode (collaboration with EuXFEL)
  • Support extra dtype in OpenCL (contribution from Desy)
  • Fix version of setuptools (enables to build pyFAI -> python 3.12)
  • Support some of the Lambda detectors from XSpectrum (collaboration with Xmas)
  • Restore back compatibility in histoBBox1d and histoBBox2d (contribution from NSLS-II)
  • Fix bug in OpenCL distortion correction (collaboration with Soleil)
  • Several other bugs fixed

- Python
Published by kif almost 4 years ago

pyfai - PyFAI version 0.21.2

This is a doc-fix minor release: Documentation for sparsify-Bragg and peakfinder CLI tools were corrected.

- Python
Published by kif about 4 years ago

pyfai - PyFAI version 0.21.1

This is a bug-fix release over 0.21: - fix several cabling issue inside AzimuthalIntegrator, preventing unattended engine-reset - dummy value was not working properly in Worker - Remove deprecation warning about scipy - Using silx for median-filter which is faster - skip 3 tests which are known to be fragile on 32-bit platforms (spotted by debian on i386 and armel)

- Python
Published by kif about 4 years ago

pyfai - PyFAI version 0.21.0

  • Sigma-clipping allows separation of Bragg/amorphous signal:
    • Implementation in Python, Cython and OpenCL with poissonian and azimuthal error-model
    • Sparsification, compression of single crystal data
    • Application to peak-picking and quality assessment of SSX data
    • Analysis of grid-scan to find single crystal
    • Single pass variance evaluation in azimuthal bin
    • Integration of the Jungfrau detector (ID29)
  • 2D integration:
    • New integrators with error propagation by default
    • Full pixel splitting in addition to BBox and no splitting
  • Refactor of all LUT and CSR to share the same code base, makes tests more robust.
  • Calibration of experimental setup using Jupyter notebooks
    • User interaction with plots in matplotlib (thanks Phil Hans)
    • Factorize code between pyFAI-calib and jupyter calibration
    • Tutorial as notebook and video recording
  • Parallax correction for thick detector (still experimental, thanks to Vadim)
  • Improved tutorial on detector geometry calibration (based on Kabsch alignment)
  • Better performances on HPC nodes by limiting simple OpenMP to fewer cores
  • Many improvement in test, typos fixed, doc ...
  • Deprecate all legacy integrators since the new version sees its matrix complete.
  • Supports Python 3.6 ... 3.10 under Windows, MacOS and Linux.

- Python
Published by kif about 4 years ago

pyfai - PyFAI version 0.20.0

  • One year of development, about 500 commits & 370 files modified.
  • Generalization of the new generation 1D integrators (better error propagation)
  • Sigma clipping and sparsification of single crystal data (OpenCL only)
  • Fix issue introduced with the scipy 1.15 (constrained calibration broken)
  • Improved distortion correction (also on GPU, ...)
  • Major re-work of the documentation (thanks Thomas Kluyver and Loic Huder)
  • Improve the calibration of Pilatus and Eiger detectors based on a grid of holes.
  • New cylindrical detector from Rigaku
  • Drop deprecated OpenCL integrator
  • Support all Eiger2 detectors (thanks Clemens Weninger and Marie Ruat)
  • CI: move to Gihub workflow and gitlab-runners (bob) for building (thanks Thomas Vincent).
  • Build for debian 10 and 11 (also ubuntu 20.04), drop debian 9
  • Remove Python2 related code
  • Lower Numpy ABI dependency as much as possible (remains _distortion's C++ code)
  • Drop tests for Python 3.5, checked on 3.9 as well.

- Python
Published by kif about 5 years ago

pyfai - PyFAI v0.19.0 31/01/2020

  • Minor revison with only 150 commits, mainly bug-fixes
  • Improvement on the GUI with many small bug-fixes
  • Support newer h5py (mode mandatory, [()], ...)
  • Build for debian 10 and 11 (also ubuntu 20.04)
  • Drop tests for Python 2 and 3.4, checked on 3.8
  • Improved compatibility with ImageD11
  • Use hdf5plugin to provide hdf5 io-filters in apps
  • Rework diffraction mapping tools to use a worker
  • New generation azimuthal integrator using CSR algorithm implemented in Python, Cython and OpenCL.
  • Sigma-clipping implemented in OpenCL
  • Publication on new generation integration, the GUI for calibration and the goniometers accepted in J. Synch. Rad.
  • A big thank to Florian from Germany, Bertrand from Xenocs, Alex from Soleil and Jon from ESRF for their contributions

- Python
Published by kif about 6 years ago

pyfai - PyFAI v0.18.0

  • Last release with Valentin as he finishes his contract soon
  • Almost 800 commits, 60 PR since the last release: this is a huge release !
  • Major rework on all GUIs, mainly pyFAI-calib2 and pyFAI-integrate.
  • Possibility to integrate image stacks (i.e. from HDF5), ...
  • Rework the method to specify the algorithm, pixel splitting and implementation with sensible fall-backs. Also available via the different GUIs
  • 3D visualization of detectors and experimental setup, useful for non flat detectors.
  • integrate1d_ng is available with histogramming without pixel splitting in Python, Cython and OpenCL. Now, propagates the variance properly !
  • IO sub-packages with associated refactoring for ponifile, json,
  • Improved management of OpenMP: simplify the code for histograms.
  • Improved geometry description and tutorial for writing exchange with other software (ImageD11, thanks to Carsten Detlefs).
  • More reliable simple ellipse fitting with tests and doc.
  • Better POCL integration (debugged on cuda, x87, Power9, ...)
  • Rely on silx mechanics for the build, test, download, GUI, opencl ...
  • Many new tutorials, now available on binder-hub: new calibrants, Pilatus calibration, ...
  • Fix many issues reported in third-party software (Dioptas, ...)
  • Drop support of debian8, Python 2.7 and Python 3.4 on all platforms. It is likely most functionalities still work but without guaranty.

- Python
Published by kif almost 7 years ago

pyfai - PyFAI v0.17.1

Bug-fix release. Allows to build with numpy v1.16

- Python
Published by kif almost 7 years ago

pyfai - PyFAI v0.17.0

  • Only 200 commits in a couple of month, this is a small release
  • Fix major bugs in pyFAI-calib2 (double validator, initial guess, ring position)
  • Constrains have been added to the geometry fitting of pyFAI-calib2
  • New pyFAI-integrate graphical application
  • Much better support for user defined detector (HDF5)
  • Start the rewrite of all integrators to allow proper error propagation (2D done)
  • Factorize the preprocessing steps for many integrators
  • Remove tons of code which has been deprecated for years in AzimuthalIntegrator
  • Featuring contribution from Soleil and Berkeley
  • Stop supporting Python2.7 on Windows
  • All scripts are now using Python 3.x (x>=4)
  • This is the last release supporting Python 2.7, 3.4 hence debian 8

- Python
Published by kif about 7 years ago

pyfai - PyFAI v0.16.0

  • Almost 800 commits since 0.15 !
  • Huge improvements on the graphical application for calibration
  • New detector definition (with manufacturers)
  • Improved tests: the GUI is now tested
  • Preparation for changing all rebinning engines (see variance tutorials)
  • Azimuthal integrators (and most other objects) are now serializable with Pickle
  • New distortion correction using the SparseBuilder C++ code
  • New PONI-file format (detector definition changed)
  • Isocontour is now provided by silx
  • Peak-picker clean up (better peak selection near gaps)
  • new Goniometer refinement with enhanced rotation using Euler angles
  • Updated documentation: new cookbooks and tutorials about:
    • The use of the calibration application (cookbook)
    • log-scale integration of SAXS data (notebook)
    • Variance propagation (notebook)

- Python
Published by kif over 7 years ago

pyfai - PyFAI v0.15.0

  • 150 commits since last revision
  • New tutorials on image inpainting, sensor thickness correction, ...
  • Improve scripts
  • Improve the new calibration GUI (pyFAI-calib2)
  • Use scipy physical constants instead of hard-coded values
  • Improved detector serialization and binning assessement
  • Update documentation (images, better rendering of notebook & tutorials)
  • Converge project with silx and fabio
  • Remove generated rst- and C-files from repository
  • This is the last version supporting python2.7
  • Some feature as missing on debian7 due to old scipy

- Python
Published by kif about 8 years ago

pyfai - PyFAI version 0.14.2

Bugfix release with >110 commits: * Fix seg-fault with manylinux1 wheels, in fastcrc module (thanks Thomas) * Fix Qt4-Qt5 compatibility (thanks Vadim) * Easier to understand geometry transformation (thanks Jon) * Lower memory consumption, better cache management * Unified debian packaging working for 6->9 * New detector: Mythen & CirPad (thanks Fred) * Clean up debug code which avoid to use pyFAI-calib2 * pyFAI-calib2 now expect fabio >= 0.5 * Fix issue with metadata saving in 1d * Fix performance regression with pyopencl >2015.2 (Thanks Andreas) * pyFAI saxs and waxs scripts guess now the binning of the detector (thanks Fred).

- Python
Published by kif over 8 years ago

pyfai - PyFAI v0.14.1

New features: * Fixes Debian 7 and 8 packages

- Python
Published by vallsv over 8 years ago

pyfai - PyFAI v0.14.0

New features: * Graphical user interface for calibration (pyFAI-calib2) * Goniometer calibration tools and multi-geometry enhancements * Integration scripts and averaging scripts are now able to normalize the data from monitors found in the header. * Propagate metadata information as part of the integrated data * Common pre-processing factorization on Python, Cython and OpenCL * Test clean up and acceleration (avoid tests on too large images) * Many new tutorials http://pyfai.readthedocs.io/en/latest/usage/tutorial/index.html * New averaging / integration methods: - Azimuthal median filtering - Azimuthal trimmed mean - sigma-clipping on azimuthal angle - Radial averaging * Diffraction image inpainting to fill-up the gaps with plausible values. * This release correspond to 572 commits * Change of license: now all pyFAI is MIT license.

- Python
Published by kif over 8 years ago

pyfai - PyFAI v0.13.1

  • Backport critical bug fix from 0.14-dev
    • Convert matplotlib mouse input into pixel coordinates (fix issue with numpy 0.12)
    • Fix eiger-mask script if h5py is not installed
    • Use "/usr/bin/env python" for scripts

- Python
Published by vallsv about 9 years ago

pyfai - PyFAI v0.13.0

  • 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

- Python
Published by vallsv about 9 years ago

pyfai - PyFAI v0.12.0

  • 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)
  • GPU accelerate version of ai.separate (Bragg & amorphous)
  • Quantile filtering in pyFAI-average
  • New graphical application for diffraction imaging
  • Migrate to a common structure with silx (reorganize tests, benchmarks, ...)
  • Extensions (binary sub-modules) have all been moved to ext directory
  • Many improvements multigeometry integrators
  • Compatibility with the copy module (copy.deepcopy) for azimuthal integrator
  • Distortion correction works also for non-contiguous detectors
  • Update documentation and provide advanced tutorials:
    • Introduction to pyFAI using the jupyter notebook
    • detector calibration
    • Correction of detector distortion, examples of pixel detectors.
    • calibrant calculation
    • error handling
  • pyFAI-integrate can now be used with or without GUI
  • Many new detectors (ADSC, Pilatus CdTe, Apex II, Pixium):
    • support for non-flat/curved detectors (Aarhus)
    • non-contiguous detectors (WOS Xpad)
  • Include tests and benchmarking tools as part of the library
  • Better testing.

- Python
Published by vallsv over 9 years ago

pyfai - PyFAI v0.11.0

  • All calibrant from NIST are now available, + Nickel, Aluminum, ... with bibliographic references
  • The Cell class helps defining new calibrants.
  • OpenCL Bitonic sort (to be integrated into Bragg/Amorphous separation)
  • Calib is available from the Python interface (procedural API), not only from the shell script.
  • Many new options in calib for reset/assign/delete/validate/validate2/chiplot.
    • reset: set the detector, orthogonal, centered and at 10cm
    • assign: checks the assignment of groups of points to rings
    • delete: remove a group of peaks
    • validate: autocorrelation of images: error on the center
    • validate2: autocorrelation of patterns at 180° apart: error on the center function of chi
    • chiplot: assesses the quality of control points of one/multiple rings.
  • Fix the regression of the initial guess in calib (Thanks Jon Wright)
  • New peak picking algorithm named "watershed" and based on inverse watershed for ridge recognition
  • start factorizing cython regridding engines (work ongoing)
  • Add "--poni" option for pyFAI-calib (Thanks Vadim Dyakin)
  • Improved "guess_binning", especially for Perkin Elmer flat panel detectors.
  • Support for non planar detectors like Curved Imaging plate developped at Aarhus
  • Support for Multi-geometry experiments (tested)
  • Speed improvement for detector initialization
  • Better isotropy in peak picking (add penalization term)
  • Enhanced documentation on http://pyfai.readthedocs.org

- Python
Published by kif over 10 years ago

pyfai - many little features ...

  • Convergence of pyFAI-calib and pyFAI-recalib, the later is now deprecated and will be discarded in the future
  • Integration of an "empty" value for any bin without contribution. It is 0 by default.
  • Python3 compliance (tested on 3.2 and 3.4) along with python 2.6 and 2.7
  • The calibration can be launched from Python (not only from the shell script)
  • Detectors are now able to guess the binning
  • Support of multiframe EDF for diff_tomo
  • Tested on windows 64 bits, MacOSX 10.6 and 10.6, debian 6, 7 and 8. Arm, PPC64LE, i386, amd64, with python 2.6, 2.7, 3.2 and 3.4. The test do not pass under windows 32bits due to the 2GB limit (nor under linux with 1GB of memory)
  • Better support for detectors with gaps.
  • Bunch of new calibrants (14 in total now)
  • Sorting on GPU (works only under linux for now)
  • Eiger detectors (masks, ...)
  • Versoning tool (_version.py)
  • Segmentation of the documentation: user/developer/administrator
  • Clean up on the OpenCL side (factorization)
  • Better workers and support for HDF5 input/output
  • Tests are available in installed library: pyFAI.tests()
  • Separation of third party code: argparse, six, ...
  • Watershed based segmenter for peak-picking (work ongoing)

- Python
Published by kif almost 11 years ago

pyfai - Improved peak-picking

Many small bug-fixes...

- Python
Published by kif over 11 years ago