Euphonic

Latest version: v1.3.1

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

Scan your dependencies

Page 1 of 5

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>`_.

1.0.0

- Changes:

- Support for Python 3.6 has been dropped. This has also resulted in
changes to the following dependencies:

- numpy requirement increased from ``1.12.1`` to ``1.14.5``
- scipy requirement increased from ``1.0.0`` to ``1.1.0``
- pint requirement increased from ``0.9`` to ``0.10.1``
- matplotlib requirement increased from ``2.0.0`` to ``2.2.2``
- h5py requirement increased from ``2.7.0`` to ``2.8.0``

- The following deprecated features have been removed:

- The ``return_mode_widths`` argument in ``ForceConstants.calculate_qpoint_phonon_modes``
and ``ForceConstants.calculate_qpoint_frequencies`` has been removed
- The ``eta_scale`` argument in ``calculate_qpoint_phonon_modes/frequencies``
has been removed
- The alias command-line tool argument ``--weights`` has been removed
- The alias arguments ``x_label``, ``y_label``, ``y_min`` and ``y_max`` to
``plot_1d/2d`` have been removed
- The ``modes_from_file`` and ``force_constants_from_file`` functions from
``euphonic.cli.utils`` have been removed
- Calling ``broaden`` on a ``Spectrum`` with uneven bin widths without
specifying the ``method='convolve'`` argument will now raise a ``ValueError``

- DOS and PDOS calculated by the ``calculate_dos`` and
``calculate_dos_map`` methods of ``QpointPhononModes`` and
``QpointFrequencies``, and ``QpointPhononModes.calculate_pdos`` are
now calculated per atom rather than per unit cell (integrated area
is ``3`` rather than ``3*N_atom``). This is to keep consistency with
the structure factors calculated by
``QpointPhononModes.calculate_structure_factor`` which are calculated
per atom.

- The option ``average_repeat_points`` when importing q-point modes or
frequencies from a CASTEP .phonon file with
``QpointFrequencies/QpointPhononModes.from_castep`` is now ``True``
by default. To recover previous behaviour set this to ``False``.

Page 1 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.