Changelog
Git master branch
2025-01-12
I/O
Moved Postgres, MariaDB and MySQL backends to separate project: https://gitlab.com/ase/ase-db-backends. Install from PyPI with
pip install ase-db-backends
(MR: !3545).
Development
Changelog is now generated using scriv.
Version 3.24.0
Requirements
Atoms
New method
get_number_of_degrees_of_freedom()
(MR: !3380)New methods
get_kinetic_stress()
,get_kinetic_stresses()
(MR: !3362)Prevent truncation when printing Atoms objects with 1000 or more atoms (MR: !2518)
DB
Ensure correct float format when writing to Postgres database (MR: !3475)
Structure tools
Add atom tagging to
ase.build.general_surface
(MR: !2773)Fix bug where code could return the wrong lattice when trying to fix the handedness of a 2D lattice (MR: !3387)
Major improvements to
find_optimal_cell_shape()
: improve target metric; ensure rotationally invariant results; avoid negative determinants; improved performance via vectorisation (MR: !3404, MR: !3441, MR: !3474). Thenorm
argument toget_deviation_from_optimal_cell_shape()
is now deprecated.Performance improvements to
ase.spacegroup.spacegroup.Spacegroup
(MR: !3434, MR: !3439, MR: !3448)Deprecated
ase.spacegroup.spacegroup.get_spacegroup()
as results can be misleading (MR: !3455).
Calculators / IO
Amber: Fix scaling of velocities in restart files (MR: !3427)
Amber: Raise an error if cell is orthorhombic (MR: !3443)
CASTEP
EAM: Fix calculations with self.form = “eam” (MR: !3399)
FHI-aims
FileIOSocketClientLauncher: Fix an unintended API change (MR: !3453)
FiniteDifferenceCalculator: added new calculator which wraps other calculator for finite-difference forces and strains (MR: !3509)
GenericFileIOCalculator fix interaction with SocketIO (MR: !3381)
LAMMPS
MixingCalculator: remove requirement that mixed calculators have common
implemented_properties
(MR: !3480)MOPAC: Improve version-number parsing (MR: !3483)
MorsePotential: Add stress (by finite differences) (MR: !3485)
NWChem: fixed reading files from other directories (MR: !3418)
Octopus: Improved IO testing (MR: !3465)
ONETEP calculator: allow
pseudo_path
to be set in config (MR: !3385)Orca: Only parse dipoles if COM is found. (MR: !3426)
Quantum Espresso
Siesta: support version 5.0 (MR: !3464)
Turbomole: fixed formatting of “density convergence” parameter (MR: !3412)
VASP
Fixed a bug handling the ICHAIN tag from VTST (MR: !3415)
Fixed bugs in CHG file writing (MR: !3428) and CHGCAR reading (MR: !3447)
Fix parsing POSCAR scale-factor line that includes a comment (MR: !3487)
Support use of unknown INCAR keys (MR: !3488)
Drop “INCAR created by Atomic Simulation Environment” header (MR: !3488)
Drop 1-space indentation of INCAR file (MR: !3488)
Use attached atoms if no atom argument provided to
ase.calculators.vasp.Vasp.calculate()
(MR: !3491)
GUI
Refactoring of
ase.gui.view.View
to improve API for external projects (MR: !3419)Force lines to appear black (MR: !3459)
Fix missing Alt+X/Y/Z/1/2/3 shortcuts to set view direction (MR: !3482)
Fix incorrect frame number after using Page-Up/Page-Down controls (MR: !3481)
Fix incorrect double application of \(repeat\) to \(energy\) in GUI (MR: !3492)
Molecular Dynamics
Added Bussi thermostat
ase.md.bussi.Bussi
(MR: !3350)Added Nose-Hoover chain NVT thermostat
ase.md.nose_hoover_chain.NoseHooverChainNVT
(MR: !3508)Improve
force_temperature
to work with constraints (MR: !3393)Add
**kwargs
to MolecularDynamics, passed to parent Dynamics (MR: !3403)Support modern Numpy PRNGs in Andersen thermostat (MR: !3454)
Optimizers
Phonons
Fix scaling of phonon amplitudes (MR: !3438)
Implement atom-projected PDOS, deprecate
ase.phonons.Phonons.dos()
in favour ofase.phonons.Phonons.get_dos()
(MR: !3460)Suppress warnings about imaginary frequencies unless
ase.phonons.Phonons.get_dos()
is called with new parameterverbose=True
(MR: !3461)
Pourbaix (MR: !3280)
New module
ase.pourbaix
written to replacease.phasediagram.Pourbaix
Improved energy definition and diagram generation method
Improved visualisation
Spectrum
BREAKING
ase.spectrum.band_structure.BandStructurePlot
: theplot_with_colors()
has been removed and its features merged into theplot()
method.
Misc
Cleaner bandgap description from
ase.dft.bandgap.GapInfo
(MR: !3451)
Documentation
Testing
Units
Maintenance and dev-ops
Earlier releases
Releases earlier than ASE 3.24.0 do not have separate release notes and changelog. Their changes are only listed in the Release notes.