Euphonic

Latest version: v1.3.2

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

Scan your dependencies

Page 1 of 4

1.3.2

-----------------------------------------------------------------------------

- Requirements

- ``packaging`` library added to dependencies.

- Bug fixes

- Fixed an error loading QpointPhononModes from JSON when there is a
single q-point in the data

- Improvements

- When loading ``.castep_bin`` files, explicitly check the CASTEP
version number and give a useful error message if this is < 17.1.
(These files are missing information about the unit cell origins,
and would previously cause an error with an unhelpful message.)

- Maintenance

- Compatibility fix for spglib 2.4 update: a new sanity-check in
spglib raises TypeError when using empty unit cell and this needs
handling when looking for high-symmetry labels

- Compatibility fix for Numpy 2.0 update: avoid some
broadcasting issues with array shape returned by ``np.unique``

- Update reference to scipy.integrate.simpson (scipy.integrate.simps
is deprecated)

- Filter out spglib deprecation warnings caused by SeeK-path.

1.3.1

-----------------------------------------------------------------------------

- Maintenance

- Updated versioneer for compatibility with Python 3.12
- In tests, avoid checking an attribute of 3D plots which is unreliable in
recent matplotlib versions
- Update readthedocs configuration to fix documentation builds

1.3.0

-----------------------------------------------------------------------------

- Requirements

- Python 3.7 is no longer supported

- Minimum version of scipy increased from 1.1 to 1.10

- This requires numpy >= 1.19.5

- Minimum version of matplotlib increased from 2.2.2 to 3.2.0

- Minimum version of pint increased from 0.10.1 to 0.19

- Minimum version of h5py increaased form 2.8 to 2.10

- Improvements

- Added variable-width broadening for 1-D and 2-D spectra. An
arbitrary Callable can be provided relating the axis position to
Gaussian or Lorentzian width parameter. ``euphonic-dos`` and
``euphonic-powder-map`` CLI tools accept polynomial coefficients
as input. The broadening is implemented with the fast approximate
interpolation method already available for adaptive broadening of
DOS.

- Added features to Spectrum classes

- Added ``copy()`` methods returning an independent duplicate of data

- Added ``__mul__`` and ``__imul__`` methods to Spectrum
classes. This allows results to be conveniently scaled with
infix notation ``*`` or ``*=``

- Added `--scale` parameter to ``euphonic-dos``,
``euphonic-intensity-map``, ``euphonic-powder-map`` to allow
arbitrary scaling of results from command-line. (e.g. for
comparison with experiment, or changing DOS normalisation from 1
to 3N.)

- Bug Fixes:

- Changed the masking logic for kinematic constraints: instead of
requiring energy bin to _entirely_ fall within accessible range at
Q-bin mid-point, unmask bins if _any_ part of energy range is
accessible at this Q value. This gives much more intuitive
behaviour, especially for narrow angle ranges.

1.2.1

-----------------------------------------------------------------------------

- Improvements

- Added "prefer_non_loto" option to Castep *.phonon* file
importers. When this is enabled, a block of q-points are
encountered with splitting directions, and one q-point does not
have a splitting direction, the data at this "exact" q-point is
preferred and the other weights in the group are set to zero.

This provides the *intended* behaviour of the Abins Castep parser
and should give a reasonable result for Gamma-point only Castep
calculations.

The option is disabled by default, so existing scripts will not be
affected.

- Bug Fixes:

- Allow ``color`` to be passed as an extra kwarg to ``plot_1d`` and
``plot_1d_to_axis``. Previously this caused a ``TypeError``.
- Fix bug where ``Py_None`` was not incremented before returning from
``calculate_phonons()`` in the C-extension causing a deallocation crash
- Support phonopy.yaml files from Phonopy versions >= 1.18, which
have moved the data relating to dipole-dipole
corrections. (i.e. Born effective charges, static dielectric
tensor and a related unit conversion factor.)

- Maintenance:

- A deprecation in Numpy 1.25, which indirectly caused a test failure, has been addressed.

1.2.0

-----------------------------------------------------------------------------

- Improvements:

- Euphonic now tests on Python 3.11
- Euphonic now provides PyPI wheels for Python 3.11

- New features:

- You can now perform linear interpolation of phonon frequencies and
eigenvectors with the `Brille <https://brille.github.io/stable/index.html>`_
library using the new
``euphonic.brille.BrilleInterpolator`` object. This should provide
performance improvements for large unit cells which require the
dipole correction.
- There is a new command-line tool ``euphonic-brille-convergence`` to
assist with choosing the ``BrilleInterpolator.from_force_constants``
arguments to achieve the desired accuracy.
- Brille interpolation can be accessed from the ``euphonic-powder-map`` tool
using the new ``--use-brille``, ``--brille-grid-type``, ``--brille-npts``
and ``--brille-npts-density`` arguments.

1.1.0

-----------------------------------------------------------------------------

- New features:

- There is a new function ``ForceConstants.from_total_fc_with_dipole`` to allow
reading force constants from other programs which contain long-ranged
dipole-dipole interactions.

- Bug fixes:

- Avoid occasional segmentation faults when using OpenBLAS, workaround for
`191 <https://github.com/pace-neutrons/Euphonic/issues/191>`_
- Correctly read force constants from Phonopy with dipole-dipole
interactions, see `239 <https://github.com/pace-neutrons/Euphonic/issues/239>`_.

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.