Orix

Latest version: v0.12.1.post0

Safety actively analyzes 622882 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.12.1

===========================

Fixed
-----
- ``ax2qu`` and ``Quaternion.from_axes_angles()`` would raise if the input arrays were
broadcastable but the final dimension was ``1``. This has been fixed.
- ``Phase.from_cif()`` now correctly adjusts atom positions when forcing
``Phase.structure.lattice.base`` to use the crystal axes alignment ``e1 || a``,
``e3 || c*``. This bug was introduced in 0.12.0.

0.12.0

===========================

Added
-----
- ``Vector3d.from_path_ends()`` class method to get vectors between two vectors.
- Convenience function ``plot.format_labels()`` to get nicely formatted vector labels to
use when plotting vectors.
- Two offsets in the stereographic coordinates (X, Y) can be given to
``StereographicPlot.text()`` to offset text coordinates.
- Explicit support for Python 3.11.
- Creating quaternions from neo-eulerian vectors via new class methods
``from_rodrigues()`` and ``from_homochoric()``, replacing the now deprecated
``from_neo_euler()``. ``from_rodrigues()`` accepts an angle parameter to allow passing
Rodrigues-Frank vectors.
- Creating neo-eulerian vectors from quaternions via new methods ``to_axes_angles()``,
``to_rodrigues()`` and ``to_homochoric()``. Rodrigues-Frank vectors can be returned
from ``to_rodrigues()`` by passing ``frank=True``.
- ``inv()`` method for ``Quaternion``, ``Rotation``, ``Orientation``, and
``Misorientation``. For the three first, its behavior is identical to the inversion
operator ``~``. For misorientations, it inverts the direction of the transformation.
Convenient for chaining operations.
- The ``random()`` methods of ``Orientation`` and ``Misorientation`` now accept
``symmetry``. A ``random()`` method is also added to ``Vector3d`` and ``Miller``, the
latter accepting a ``phase``.
- Function ``orix.sampling.get_sample_reduced_fundamental()`` for sampling rotations
that rotate the Z-vector (0, 0, 1) onto the fundamental sector of the Laue group of a
given ``Symmetry``.

Changed
-------
- The ``convention`` parameter in ``from_euler()`` and ``to_euler()`` will be removed in
the next minor release, 0.13, instead of release 1.0 as previously stated.
- Allow passing a tuple of integers to ``reshape()`` methods of 3D objects.
- ``random()`` methods no longer accept a list as a valid shape: pass a tuple instead.
- Increase minimal version of Matplotlib to >= 3.5.

Removed
-------
- Support for Python 3.7.

Deprecated
----------
- Creating quaternions from neo-eulerian vectors via ``from_neo_euler()`` is deprecated
and will be removed in v0.13. Use the existing ``from_axes_angles()`` and the new
``from_rodrigues()`` and ``from_homochoric()`` instead.

Fixed
-----
- Transparency of polar stereographic grid lines can now be controlled by Matplotlib's
``grid.alpha``, just like the azimuth grid lines.
- Previously, ``Phase`` did not adjust atom positions when forcing
``Phase.structure.lattice.base`` to use the crystal axes alignment ``e1 || a``,
``e3 || c*``. This is now fixed.

0.11.1

===========================

Fixed
-----
- Initialization of a crystal map with a phase list with fewer phases than in the phase
ID array given returns a map with a new phase list with correct phase IDs.

0.11.0

===========================

Added
-----
- Creation of one or more ``Quaternion`` (or instances of inheriting classes) from one
or more SciPy ``Rotation``.
- Creation of one ``Quaternion`` or ``Rotation`` by aligning sets of vectors in two
reference frames, one ``Orientation`` by aligning sets of sample vectors and crystal
vectors, and one ``Misorientation`` by aligning two sets of crystal vectors in two
different crystals.
- ``row`` and ``col`` properties to ``CrystalMap`` giving the row and column coordinate
of each map point given by ``CrystalMap.shape``.
- ``Rotation`` class methods ``from_neo_euler()``, ``from_axes_angles()``,
``from_euler()``, ``from_matrix()``, ``random()`` and ``identity()`` and methods
``to_euler()`` and ``to_matrix()`` are now available from the ``Quaternion`` class as
well.
- ``StereographicPlot.restrict_to_sector()`` allows two new parameters to control the
amount of padding (in degrees in stereographic projection) and whether to show the
sector edges. Keyword arguments can also be passed on to Matplotlib's ``PathPatch()``.
- Option to pass degrees to the ``Quaternion`` methods ``from_axes_angles()``,
``from_euler()`` and ``to_euler()`` by passing ``degrees=True``.
- Option to get degrees from all ``angle_with()`` and ``angle_with_outer()`` methods
by passing ``degrees=True``.
- Option to pass degrees to the ``(Mis)Orientation`` method ``get_distance_matrix()``
by passing ``degrees=True``.
- Option to pass degrees to the ``Vector3d`` methods ``from_polar()`` and ``to_polar()``
by passing ``degrees=True``.
- Option to get spherical coordinates from
``InverseStereographicProjection.xy2spherical()`` in degrees or pass them as degrees
to ``StereographicProjection`` methods ``spherical2xy()`` and ``spherical2xy_split()``
by passing ``degrees=True``.


Changed
-------
- Bumped minimal version of ``diffpy.structure >= 3.0.2``.
- Only ASTAR .ang files return crystal maps with ``"nm"`` as scan unit.

Removed
-------
- Parameter ``z`` when creating a ``CrystalMap`` and the ``z`` and ``dz`` attributes of
the class were deprecated in 0.10.1 and are now removed.
- Passing ``shape`` or ``step_sizes`` with three values to
``create_coordinate_arrays()`` was depreacted in 0.10. and will now raise an error.
- Parameter ``depth`` (and ``axes``) in ``CrystalMapPlot.plot_map()`` was depreacted in
0.10.1 and will now raise an error if passed.
- The ``z`` and ``dz`` datasets are not present in new orix HDF5 files. They are not
read if present in older files.

Fixed
-----
- Reading of EDAX TSL .ang files with ten columns should now work.

0.10.2

===========================

Fixed
-----
- ``Miller.symmetrise(unique=True)`` returns the correct number of symmetrically
equivalent but unique vectors, by rounding to 10 instead of 12 decimals prior to
finding the unique vectors with NumPy.

Changed
-------
- Unique rotations and vectors are now found by rounding to 10 instead of 12 decimals.

0.10.1

===========================

Deprecated
----------
- Parameter ``z`` when creating a ``CrystalMap`` and the ``z`` and ``dz`` attributes of
the class are deprecated and will be removed in 0.11.0. Support for 3D crystal maps is
minimal and brittle, and it was therefore decided to remove it altogether.
- Passing ``shape`` or ``step_sizes`` with three values to ``create_coordinate_arrays()``
is depreacted and will raise an error in 0.11.0. See the previous point for the reason.
- Parameter ``depth`` in ``CrystalMapPlot.plot_map()`` is depreacted and will be removed
in 0.11.0. See the top point for the reason.

Fixed
-----
- ``StereographicPlot.scatter()`` now accepts both ``c``/``color`` and ``s``/``sizes``
to set the color and sizes of scatter points, in line with
``matplotlib.axes.Axes.scatter()``.
- Indexing/slicing into an already indexed/sliced ``CrystalMap`` now correctly returns
the index/slice according to ``CrystalMap.shape`` and not the original shape of the
un-sliced map.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.