Skip to content

Releases: HEXRD/hexrd

Bug fixes and a few more features.

01 Feb 21:38
4ae0a3e
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.8.17...0.8.18

Bug fixes and additional utilites, and build env fixes

07 Jan 22:37
88c6f8a
Compare
Choose a tag to compare

An important update that includes a bumpy to python 3.9 and important updates to the build environment to avoid potential incompatibilities with the numpy C API between build/runtime environments that was seen for the latter 0.8.16 conda packages.

What's Changed

Full Changelog: 0.8.16...0.8.17

Add 2-D Lebail fitting, some bug fixes and PEP8 cleanup

09 Dec 19:10
5bb7557
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.8.15...0.8.16

CIF import Bug fixes, some performance enhancements.

12 Nov 19:00
872aff2
Compare
Choose a tag to compare
  1. There was a new error case for CIF formats (there are seemingly an infinite number of edge cases) that was causing an exception when no charge states were specified for atoms.
  2. Some additional minor typos in the periodic table data
  3. A new calibration package was added to hexrd.fitting to house common calibration functions, starting with the routines needed to calibrate an instrument from a rotation series (i.e., ff-HEDM result).
  4. Removed a legacy memoization in xrdutil that was causing hard-to-track bugs (it was unnecessary from a performance standpoint anyhow)

Full Change Log

Minor updates and feature enhancements.

01 Oct 17:10
1155462
Compare
Choose a tag to compare

A minor update that adds a few new features and fixes a few bugs. The most salient changes are:

  • Powder line intensities, I_p, (simple formula) are now an attribute of the hexrd.crystallography.PlaneData class under powder_intensity
  • An HDF5 class writer was added to hexrd.imageseries.save.write to facilitate state saving in hexrdgui
  • There was an overflow error fix to hexrd.imageseries.stats.average_iter
  • A check for distortion functions against the registry was added to hexrd.instrument.PlanarDetector
  • A fix to hexrd.instrument.PlanarDetector.angularPixelSize was added to handle the &eta: branch cut; also switched the calc to use the 2θ and η gradient arrays instead of hexrd.xrdutil.angularPixelSize function
  • Added an unpolarized lorentz factor correction to hexrd.instrument.PlanarDetector
  • Updated hexrd.material.Material for better I/O consistency in the state save.
  • Performance improvements to hexrd.wppf

Some cleanup, and new support for setting ionization state of atoms in material spec

30 Jul 20:04
a2f7a9a
Compare
Choose a tag to compare

The only API change (affecting the GUI) is that now the ionization state can be specified for atoms comprising the unit cell. Note that this version of hexrd with not work with hexrdgui < 0.8.8!

Other changes since 0.8.9 include:

  1. reinstated the --version flag in the CLI
  2. updated the conversion script for legacy instrument configurations to the current
  3. added option for HEDMInstrument.pull_spots to return spot data tables
  4. removed the vestigial sglite package
  5. the solid angle correction is now normalized.

Some cleanup and changes to image interpolation

30 Jun 20:43
300f43f
Compare
Choose a tag to compare

The main change centers around HEDMInstrument.extract_powder_lines() method, which now can take in a specific list of η bin centers. The output for collapse_eta=True is also averaged instead of summed now. The new API is documented in the help.

extract_line_positions(plane_data, imgser_dict, tth_tol=None, eta_tol=1.0, npdiv=2, eta_centers=None, collapse_eta=True, collapse_tth=False, do_interpolation=True) method of hexrd.instrument.HEDMInstrument instance
    Perform annular interpolation on diffraction images.
    
    Provides data for extracting the line positions from powder diffraction
    images, pole figure patches from imageseries, or Bragg peaks from
    Laue diffraction images.
    
    Parameters
    ----------
    plane_data : hexrd.crystallography.PlaneData object or array_like
        Object determining the 2theta positions for the integration
        sectors.  If PlaneData, this will be all non-excluded reflections,
        subject to merging within PlaneData.tThWidth.  If array_like,
        interpreted as a list of 2theta angles IN RADIAN (this may change).
    imgser_dict : dict
        Dictionary of powder diffraction images, one for each detector.
    tth_tol : scalar, optional
        The radial (i.e. 2theta) width of the integration sectors
        IN DEGREES.  This arg is required if plane_data is array_like.
        The default is None.
    eta_tol : scalar, optional
        The azimuthal (i.e. eta) width of the integration sectors
        IN DEGREES. The default is 1.
    npdiv : int, optional
        The number of oversampling pixel subdivision (see notes).
        The default is 2.
    eta_centers : array_like, optional
        The desired azimuthal sector centers.  The default is None.  If
        None, then bins are distrubted sequentially from (-180, 180).
    collapse_eta : bool, optional
        Flag for summing sectors in eta. The default is True.
    collapse_tth : bool, optional
        Flag for summing sectors in 2theta. The default is False.
    do_interpolation : bool, optional
        If True, perform bilinear interpolation. The default is True.
    
    Raises
    ------
    RuntimeError
        DESCRIPTION.
    
    Returns
    -------
    panel_data : dict
        Dictionary over the detctors with the following structure:
            [list over (merged) 2theta ranges]
              [list over valid eta sectors]
                [angle data <input dependent>,
                 bin intensities <input dependent>]
    
    Notes
    -----
    TODO: May change the array_like input units to degrees.
    TODO: rename function.

Add Lorentz factor correction, WPPF bug fixes

18 Jun 18:45
8aa2cfd
Compare
Choose a tag to compare

This release adds a correction for the Lorentz polarization factor, and includes bug fixes in WPPF. This branch will work with hexrdgui=0.8.7 (to be released...)

Updated WPPF package

08 Jun 18:49
ab052ce
Compare
Choose a tag to compare

This major change in this release is an overhaul to the WPPF package; this version will not work with hexrdgui <= 0.8.6.

Performance improvements and bug fixes

13 May 18:28
8587d78
Compare
Choose a tag to compare

Some nice performance updates are included in this release, including the addition of memoization for detector pixel angles. No changes to any APIs; this release is preferred for working with hexrdgui >= 0.8.5