Releases: pyxem/orix
orix 0.10.0
NOTE: This release has been yanked and should not be used. A relevant patch fix (and little else) has been added in 0.10.1
.
orix 0.10.0 is a minor release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry
See below, the changelog or the GitHub changelog for all updates from the previous release.
Added
- Support for type hints has been introduced and a section on this topic has been added to the contributing guide.
Vector3d.pole_density_function()
has been implemented which allows for calculation of the Pole Density Function (PDF) and quantification of poles in the stereographic projection.- Seven methods for sampling unit vectors from regular grids on S2 via
orix.sampling.sample_S2()
. - Calculation of the Inverse Pole Density Function (IPDF), ie. pole density in the crystal point group fundamental sector, through
InversePoleFigurePlot.pole_density_function()
. - The
orix.measure
module has been introduced. Themeasure
module is related to quantification of orientation and vector data. - Plotting the IPF color key on a created
InversePoleFigurePlot
is now possible withplot_ipf_color_key()
. - Examples gallery to documentation.
Changed
- Moved part of documentation showing plotting of Wulff net and symmetry markers from the tutorials to examples.
- Renamed user guide notebooks to tutorials in documentation.
- Reference frame labels of stereographic projection of
Symmetry.plot()
from (a, b) to (e1, e2), signifying the standard Cartesian reference frame attached to a crystal. - Tighten distribution of random orientation clusters in tutorial showing clustering across fundamental region boundaries, to avoid clustering sometimes giving two clusters instead of three.
Removed
- Support for Python 3.6 has been removed. The minimum supported version in
orix
is now Python 3.7. Object3d.check()
,Quaternion.check_quaternion()
andVector3d.check_vector()
, as these methods were not used internally.- Deprecated method
distance()
ofMisorientation
andOrientation
classes, useget_distance_matrix()
instead.
Fixed
- Plotting of unit cells works with Matplotlib v3.6, at the expense of a warning raised with earlier versions.
orix 0.9.0.post0
orix 0.9.0.post0 is a post-release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
This release is necessary so that the 0.9.0 release is successfully uploaded to Zenodo.
See v0.8.2...v0.9.0.post0 for a complete list of changes.
orix 0.9.0
orix 0.9.0 is a minor release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
This version contains many small and some larger changes, including enhancements to existing classes and bug fixes. See the changelog or v0.8.2...v0.9.0 for a complete list of changes.
Notable changes:
orix.scalar.Scalar
has been removed, so the data held byScalar
, like class propertiesRotation.angle
,Vector3d.azimuth
and so on, are returned directly as anumpy.ndarray
.- Creating rotations from Euler angles interprets the angles in the Bunge convention by default, i.e. rotations are transformations from the sample to the crystal.
- Reducing memory usage when computing the misorientation distance matrix, rotation outer products and quaternion-vector outer products have been added via lazy computation with
dask
. - The alignment of crystal axes in the package is documented in the user guide.
orix 0.9.0rc2
orix 0.9.0 is a minor release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
This version contains many small and some larger changes, including enhancements to existing classes and bug fixes. See the changelog or v0.8.2...v0.9.0rc2 for a complete list of changes.
Notable changes:
orix.scalar.Scalar
has been removed, so the data held byScalar
, like class propertiesRotation.angle
,Vector3d.azimuth
and so on, are returned directly as anumpy.ndarray
.- Creating rotations from Euler angles interprets the angles in the Bunge convention by default, i.e. rotations are transformations from the sample to the crystal.
- Reducing memory usage when computing the misorientation distance matrix, rotation outer products and quaternion-vector outer products have been added via lazy computation with
dask
. - The alignment of crystal axes in the package is documented in the user guide.
orix 0.9.0rc1
orix 0.9.0 is a minor release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
This version contains many small and some larger changes, including enhancements to existing classes and bug fixes. See the changelog or v0.8.2...v0.9.0rc1 for a complete list of changes.
Notable changes:
orix.scalar.Scalar
has been removed, so the data held byScalar
, like class propertiesRotation.angle
,Vector3d.azimuth
and so on, are returned directly as anumpy.ndarray
.- Creating rotations from Euler angles interprets the angles in the Bunge convention by default, i.e. rotations are transformations from the sample to the crystal.
- Reducing memory usage when computing the misorientation distance matrix, rotation outer products and quaternion-vector outer products have been added via lazy computation with
dask
. - The alignment of crystal axes in the package is documented in the user guide.
orix 0.8.2
orix 0.8.2 is a patch release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
Changed
orix.quaternion.Quaternion
now relies onnumpy-quaternion
for quaternion conjugation, quaternion-quaternion and quaternion-vector multiplication, and quaternion-quaternion and quaternion-vector outer products.- Rounding in functions, e.g.
Object3d.unique()
andRotation.unique()
, is now set consistently at 12 dp.
Fixed
Miller.in_fundamental_sector()
doesn't raise errors.Miller.unique()
now correctly returns unique vectors due to implemented rounding.
See the changelog or v0.8.1...v0.8.2 for a complete list of changes.
orix 0.8.1
orix 0.8.1 is a patch release of orix, an open-source Python library for handling orientations, rotations and crystal symmetry.
The patch fixes a few smaller bugs and corrects the following:
- Disorientation angles and dot products returned from
Orientation
methodsangle_with()
anddot()
anddot_outer()
which now calculates the misorientation asother * ~self
, instead of the other way around. Disorientation angles(o2 - o1).angle
ando1.angle_with(o2)
are now the same. - The inverse indices returned from
Rotation.unique()
, which now recreate the originalRotation
instance.
See the changelog or v0.8.0...v0.8.1 for a complete list of changes.
orix 0.8.0
orix 0.8.0 is a minor release of orix, an open-source python library for handling orientations, rotations and crystal symmetry.
0.8.0 provides a number of exciting new features as well as internal improvements. For a comprehensive list of changes please refer to the CHANGELOG.
Highlights
orix 0.7.0
orix 0.7.0 is a minor release of orix, an open-source python library for handling orientations, rotations and crystal symmetry.
0.7.0 provides improvements to the speed, ease of use and flexibility of the package.
For a comprehensive list of changes please refer to the CHANGELOG.
Highlights
- Memory-efficient calculation of a misorientation angle (geodesic distance) matrix between orientations using Dask.
- New convenience method Misorientation.scatter() to plot orientations in either axis-angle or Rodrigues fundamental zone.
- Further streamlining of the documentation.
- Reading of a crystal map from orientation data in Bruker's HDF5 file format.
- Uniform sampling of orientation space using cubochoric sampling.
orix 0.6.0
orix 0.6.0 is a minor release of orix, an open-source python library for handling orientations, rotations and crystal symmetry. It significantly extends the functionality of the package. For a comprehensive list of changes please refer to the CHANGELOG.
Highlights
- Documentation continues to improve, in this version we have added user guides (based off of Jupyter notebooks) as part of the .rtfd suite
- Several new plotting options have been added, the most obvious of which is the CrystalMap.plot() method.
- CrystalMap objects can now be written to .ang files
- New architecture allows for handling operations with direct lattice vectors (uvw/UVTW) and reciprocal lattice vectors (hkl/hkil).