Skip to main content

Software library for grazing-incidence/fibre X-Ray data analysis

Project description

pygix

Pygix is a generic python library for performing reduction of grazing-incidence and fiber X-ray scattering data.


The pygix library has been developed to reduce 2D X-ray scattering data for experiments recorded in grazing-incidence (GISAXS, GIWAXS, GIXRD, GIXD, collectively referred to as GIXS) and fiber diffraction modes. Both 2D image projections and 1D line profile extraction are handled. The package is designed to be as generic as possible, i.e., it makes no assumptions about the data (passed by the user as numpy arrays) and all detector and geometric corrections can be handled at the point of data reduction.


Please refer to the wiki for more detailed discussion!


Example usage:

    import pygix
    import pygix.plotting as pp

    pg = pygix.Transform()
    pg.load('detector_calibration.poni')
    pg.indcident_angle = 0.2

    # transform image into reciprocal space:
    i, qxy, qz = pg.transform_reciprocal(data)

    pp.implot(i, qxy, qz, xlim=(-5, 28), ylim=(-.5, 32), mode='rsm')

Which will generate the following image: alt text

Pygix uses the fiber transformation originally described by Stribeck [1] (based on earlier work by Polayni [2]), which has recently been formulated for the case of grazing-incidence scattering [3]. The reciprocal space transformation for the fiber and grazing-incidence X-ray scattering are thus equivalent, meaning this python library is generic for both classes of experiments.

Pygix is heavily based on the pyFAI library for conventional 2D transmission azimuthal integration [4].

References

  1. Stribeck and Nöchel, J. Appl. Crystallogr., (2009), 42, 295–301
  2. Polanyi, Z. Physik, (1921), 7, 149-180
  3. Lilliu and Dane, arXiv:1511.06224 [cond-mat.soft]
  4. Ashiotis, Deschildre, Nawaz, Wright, Karkoulis, Picca and Kieffer, J. Appl. Crystallogr., 2015, 48, 510–519 (https://github.com/silx-kit/pyFAI/)

Installation

In the near future, pygix will be available via PIP. In the meantime, download the source code in .zip format from the github repository and unpack it.

    unzip pygix-master.zip

Go to the pygix-master directory, build and install the package:

    cd pygix-master
    python setup.py build install

Credits

  • pygix was written by Thomas Dane with contributions and assistance from Jerome Kieffer.
  • The derivation of the reciprocal space transformation was done in collaboration with Samuele Lilliu.
  • pygix relies heavily on the pyFAI library.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygix-2022.11.14.tar.gz (44.1 kB view details)

Uploaded Source

Built Distribution

pygix-2022.11.14-py3-none-any.whl (43.9 kB view details)

Uploaded Python 3

File details

Details for the file pygix-2022.11.14.tar.gz.

File metadata

  • Download URL: pygix-2022.11.14.tar.gz
  • Upload date:
  • Size: 44.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for pygix-2022.11.14.tar.gz
Algorithm Hash digest
SHA256 2d0f8c59f7036acc4e1433b21bb0c7e823ef1416bfa8a0d50c685bd6c82f36bb
MD5 de809247de9bc002dd3b50d421245a22
BLAKE2b-256 24a7569a5c7459afedda683b9cf1e3f8934db543aab953f950204d015cf371d5

See more details on using hashes here.

File details

Details for the file pygix-2022.11.14-py3-none-any.whl.

File metadata

  • Download URL: pygix-2022.11.14-py3-none-any.whl
  • Upload date:
  • Size: 43.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for pygix-2022.11.14-py3-none-any.whl
Algorithm Hash digest
SHA256 27eb639a3df657a5ace953b07b15dabcf4f3a7fd4c0dee188cbe4b3274ae99ab
MD5 0612ecf3c9dae72bac55c49533f93c89
BLAKE2b-256 3d73b4209eb0a9098c2f97d47fcf510fd7528ea6a94ef1351334c13a3f34fac5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page