Skip to main content

Introduction

NXRefine implements a complete workflow for both data acquisition and reduction of single crystal diffuse x-ray scattering collected as a series of area detector frames during continuous sample rotation. The data are stored in HDF5 files, which conform to the NeXus data format standard. These files contain a comprehensive set of metadata, including the incident wavelength, powder calibration scans used to define detector distances, beam centers, and yaw, pitch, and roll corrections. Automated peak searches of the three-dimensional data arrays define a set of Bragg peaks that are used to define an orientation matrix, defined according to Busing and Levy, which is then used to transform the data from angular coordinates to reciprocal space coordinates using the CCTW program. Multiple rotations at different detector translations and offset rotation axes are combined to ensure that there are no gaps in the reconstructed data, and allow the construction of masks to eliminate detector artifacts due to Compton scattering within the sensor layers. Finally, the data can be transformed into 3D-ΔPDF maps using the punch-and-fill method after symmetrization.

The workflow is implemented as plugins to the NeXpy package that are used to set up the basic experimental configuration and sample parameters, and determine the orientation matrix. The remaining components of the workflow can be run as command-line scripts, or submitted to a queue for distribution to multiple nodes or processes for simultaneous reduction of multiple datasets.

Instructions for running NXRefine are under development.

The NXRefine package is being developed as part of a DOE-funded project to utilize advanced computational methods for the analysis of single-crystal x-ray scattering from synchrotron sources, such as multidimensional spectral analysis and machine learning. Further details of this project are available on the AXMAS web pages.

Installing and Running

The source code can be downloaded from the NeXpy Git repository:

    $ git clone https://github.com/nexpy/nxrefine.git

To install in the standard Python location:

    $ pip install .

Prerequisites

Python Packages

The following packages are listed as dependencies.

CCTW

CCTW (Crystal Coordination Transformation Workflow) is a C++ package written by Guy Jennings. It is launched as a separate process by NXRefine, which uses the experimental metadata to define the settings file used to define the input and output grids. It has to be separately installed.

User Support

If you are interested in using this package, please contact Ray Osborn (ROsborn@anl.gov). Please report any bugs as a Github issue, with relevant tracebacks.

Metadata

Release files for NXRefine 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for NXRefine 0.1.1
File Size Uploaded
nxrefine-0.1.1.tar.gz 183.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for NXRefine 0.1.1
File Interpreter ABI Platform
nxrefine-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 379.2 kB

Release files / nxrefine-0.1.1.tar.gz

Download URL nxrefine-0.1.1.tar.gz
Size 183.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4c0de863d6a3263bbf2e1f6f57bb8ecc7653c29c7d309e4a84df5f0b3cbaa66c
BLAKE2b-256 checksum
How to use checksums
7e5480703410b99ddac31ff3bbc1cda40f5b147219e7fcd55e947bdbb3cbb78f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / nxrefine-0.1.1-py3-none-any.whl

Download URL nxrefine-0.1.1-py3-none-any.whl
Size 195.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
525b28d842fdd29afcdb4a9b37d11853eec9f064411e5533850f159d27995bc7
BLAKE2b-256 checksum
How to use checksums
c5115905e1fb839ab81a0fc8530f4ba6e863a3b094158805d5045016f9f060d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page