Skip to content

v4.2.0

Latest

Choose a tag to compare

@pace-builder pace-builder released this 14 Jul 10:56
657748b

Release Notes v4.2.0

Highlights

  • #1925 Horace images now contain references to the Horace objects, plotted from them.
    src(figure) command allows one to retrieve the object from the figure and continue
    analysing this object.

  • #1937 new algorithm draw_mask allows generation of requested mask providing sequence of points
    surrounding masked area.
    If image processing toolbox (IPT) is available, the mask may be drawn on a 2D-Horace image directly.
    If IPT does not available, user needs to read coordinates of the points surrounding area
    he wants to mask manually and provide their coordinates as 2-dimensional array of points.

  • #1668, #1908, #1918 Symmetry operations interface (for SymopReflection and SymopRotation)
    have been modified to define rotation or reflection plane using either normal vector to the
    plane or two vectors within this plane, whatever user prefers.
    Both options produce the same results for orthogonal crystal lattice but for a non-orthogonal lattice
    the definition which uses normal vector needs additional information about the coordinate system this vector is expressed in.
    User documentation have been modified to reflect the changes and describe what is necessary for different lattices.

  • #1822 fixed issues with pixels missing in cuts build using symmetry operations. The cuts now contain pixels modified correctly so that the follow-up cuts from cut objects can be performed properly. Also fixed issues with
    units for offset in symmetry operations which were misleading to users and incorrect in some situations.

  • #896 a-e Updated mex code and enable it for binning pixels. Horace-3 was using mex code for
    binning pixels in some algorithms. Horace-4 have substantially refactored these algorithms
    and disabled mex code. As the result, the algorithms (e.g. cut) which were completely IO bound
    in Horace-3,take 60% of its time in MATLAB calculations in Horace-4. This contribution
    sorts this issue, updates and modifies bin_pixels code to run in all cases where MATLAB code
    is used and makes majority of Horace algorithms which use bin_pixels algorithms significantly IO-speed
    constrained again. The memory-only operations in OMP mode have been accelerated 4-10 times depending
    on operation.

Bugs fixed and code improvements:

  • #1912 Bug where Tobyfit does not accept multiple sqw objects as input i.e. call to Tobyfit in the form:
    tobyfit(sqw1,sqw2,...) have been fixed.

  • #1904 Fixed incorrect treatment of [-inf,inf] cut limits when corresponding direction
    in the original file is described by projection axis. Resulting cut ranges were
    incorrectly reduced by half of original binning step in each direction.

  • #1848 symmetrize_sqw now can work with rotational symmetry operations.
    To achieve that, algorithm which calculates transformation ranges when
    sqw transformation during sqw generation is provided was modified. In addition to that,
    the algorithm to generate sqw objects when transformation is present
    has to be modified too. This fixed bugs and improve the efficiency of this
    algorithm eliminating expensive unnecessary binning within intermediate boundaries.
    The resulting routine works faster and does not cut-off unnecessary pixels.

  • #1925 fixed issue when saved temporary filebacked object moves unnecessary
    to current folder.

    The details of the fixed issues are available on
    GitHub