Notable project changes since release 1.3.1 (2017-02-22).
- MPI-parallelization of Waveplot
- Generalization of mixers to also handle complex density matrices
- General range-separated, long-range corrected CAM hybrid functionals for ground-state periodic systems (MPI-parallel Fock-type exchange and energy gradient construction by neighbour-list and matrix-multiplication based algorithms)
- Generalization of non-periodic, ground-state LC-DFTB Hamiltonian to general range-separated, long-range corrected CAM hybrid functionals (MPI-parallelization of matrix-multiplication based Fock-type exchange construction, MPI-parallel matrix-multiplication based energy gradient evaluation, restart of matrix-multiplication based hybrid-DFTB calculations)
- Hybrid functionals for (molecular) non-collinear spin groundstate
- Electronic constraints on arbitrary regions, targeting the electronic ground state by determining a self-consistent constraint potential (restricted to Mulliken populations at the moment)
- Density Matrix construction on GPU using MAGMA-BLAS routines
- More control over output of data and band structures during MD calculations. By default, requesting printing of atomic charges, energies or forces in the input leads them to also be included in the md.out file.
- Printing of atom-resolved dispersion energies in detailed.out
- MAGMA GPU accelerated solver for the modes code
- Explicit keyword for gaussian electron temperature smearing (MP order 0)
- Linear response derivatives for atom positions (DFTB1/DFTB2 only) for cluster boundary conditions in low symmetry (non-degenerate) systems (and currently not MPI parallel)
- Addition of developer documentation for code internals in doc/dftb+/code/
- Optional GPU acceleration for the modes code via the MAGMA library and support for the divide and conquer and relatively robust LAPACK solvers
- ASI interface for accessing H, S and density matrix
- Components of xtb energies are now resolved
- Use least squares solution instead of inversion for XLBOMD force corrections
- Raise error if a non-SCC calculation is using hybrid functionals
- Raise a warning if neither the input of parser version is set in the input
- Degeneracy tolerance for perturbation theory switched to absolute tolerance of differences between eigenvalues.
- Incorrect superposition of atomic densities written by Waveplot
- SK-file parser extra-/spline-tag sequence dependent
- Incorrect excited gradients for spin-polarized long-range corrected linear-response TD-DFTB calculations.
- Temporarily remove free energy for Delta-DFTB calculations, as this is not formally derived in the general case.
- DeltaDFTB purified forces used correctly.
- COSMO solvent models had a bug leading to the energy showing a dependence on the ordering of the atoms in the system.
- The GBSA model had a bug, leading to differences for various GFN models from xTB results (also affects DFTB hamiltonians).
- Solvents where RadiiScaling was specified with a unit conversion were scaled by the square of the conversion. Affects calculations using constructs of the form: Radii = * [AA] = {} where * is Values, vanDerWaalsRadiiBondi vanDerWaalsRadiiCosmo or vanDerWaalsRadiiD3
- Corrected the order of Methfessel-Paxton filling. It was producing filling that was 1 order lower than the one requested in the input. This is probably safe in most applications, the lowest order beyond Gauss smearing (0th order) is default for several other codes and already has linear and quadratic independence of the free energy wrt temperature. Default for Methfessel-Paxton smearing is now set to 1 (matching the results from the old default value).
- Remove duplicate printing of internal energy in results.tag
- Correct testing for incompatible Poisson boundary overrides when only one side of the box is marked as periodic
- Geometry error for periodic structures with open boundary contacts
- Enable CI test cases and fix a parser bug
- Fix backward compatibility bug from release 22.2 which led to dftb_pin.hsd files containing obsolete keywords
- CI optimizer to locate conical intersections
- Memory leak for MPI enabled code with many geometric steps.
- API call to setExternalCharges was not marking calculation to be re-evaluated.
- Calls to setExternalCharges were failing if number of external charges changes.
- Non-adiabatic coupling vectors for linear response calculations
- Hellmann-Feynman testing for the xTB hamiltonian dipoles
- Born charges and derivatives can now be calculated for a subset of the desired atoms (similar to the Hessian).
- Binary output is done using stream I/O to enable processing of those files in Python or C. The BinaryAccessTypes option can be used to restore the old (compiler dependent) sequential I/O.
- Tool dp_dos produced obviously incorrect results for Pauli-Hamiltonians (e.g. when using spin-orbit coupling). Other Hamiltonians were not affected.
- Born charges and polarizability derivatives from finite difference derivatives.
- Infrared and Raman intensities from the modes code.
- Spin-orbit coupling for xTB
- Dual American and British English spelling for various input keywords
- Onsite and +U potentials in real time-propagation, which was broken in October 2019 by commit 11abba39b
- Corrected units for electrostatic gate potentials in transport
- Stratmann solver available without ARPACK
- Real time electronic dynamics for xTB Hamiltonian
- Real time electronic dynamics for range separated DFTB
- Support for MPI-parallel GPU accelerated calculations via ELPA/ELSI library
- (Optionally) rescale externally applied fields and dipole moments when implicit solvents are used
- Enable lattice constraints in new geometry optimization driver
- Dynamic polarizability and response kernel at finite frequencies
- API call for CM5 charges
- Numerical Hessian calculation can be split over multiple runs
- PLUMED simulations may deliver due to an incompatible change in version 2.8.0 of the external PLUMED library slightly different results as before. See also the change log of PLUMED 2.8.
- Allow electric fields in periodic systems even when interactions cross the sawtooth in the field
- Allow printing of dipole moments, even in cases where the absolute value is ill-defined (charged systems or periodic cases), but its derivative may be meaningful.
- Use the DFTB+ xyz writer for the modes program, removing the XMakemol output option.
- Re-enable q=0 (sawtooth) electric fields for periodic/helical structures
- incorrect atomic mass unit for xTB calculations
- electronic temperature read for Green's function solver
- MPI code for spin polarised metallic perturbation at q=0 for spin polarized molecules with processor groups
- On-site potentials added
- Support for extended tight binding (xTB) Hamiltonian via tblite library
- DFTBPLUS_PARAM_DIR for searching Slater-Koster parameter files, solvation parameter files, and xTB parameter files
- Atomic potential responses (enables atom resolved response kernel evaluation and condensed Fukui functions)
- Internal changes for response evaluation for DFTB ground state hamiltonians (except self-consistent dispersion) with molecular, periodic and helical boundary conditions.
- Stratmann solver for excited state, including range separated calculations
- Rational function geometry optimization driver
- ChIMES force field corrections of the repulsive potentials implemented
- New geometry optimization drivers with coupled cartesian and lattice parameter optimization
- Source tree reorganised to match the Fortran package manager preferred structure.
- Updated parser version to 10.
- Replace backend to implement DFT-D3 dispersion correction.
Use s-dftd3 instead of
dftd3-lib.
Option
WITH_DFTD3is removed and replaced withWITH_SDFTD3.
- CM5 correction added with incorrect sign to charge populations
- External fields disabled for XLBOMD
- self-consistent DFT-D4 uses populations instead of partial charges in potential shift, energy expression and derivatives
- Number of electrons for Fixed / spin-common Fermi energies and transport in results.tag
- D3(BJ)-ATM calculator was not being passed the exponent for ATM zero damping calculations
- LBFGS implementation fixed in new geometry optimization driver
- Conductor like screening model (COSMO) implicit solvation model for SCC calculations
- Printout of cavity information as a cosmo file
- Extended syntax for selecting atoms in HSD input
- Static coupled perturbed response for homogeneous electric fields (evaluating molecular electric polarisability)
- DFT-D4 can now be evaluated self-consistently within the SCC procedure
- Self-consistent DFT-D4 with REKS
- Upgraded to libMBD 0.12.1 (TS-forces are calculated analytically)
- Fix bug in binary eigenvector output in non-MPI builds (only eigenvectors belonging to the first k-point and spin channel were stored)
- Fix transpose of lattice vectors on return from iPI (thanks to Bingqing Cheng and Edgar Engel)
- Lattice derivatives are now correctly written into detailed.out
- Upgraded to libNEGF version 1.0.1 fixing usage of uninitialized variables
- Removed '-heap-arrays' option from ifort compiler options to work around Intel compiler bug causing steadily increasing memory consumption during long runs
- Many body and Tkatchenko-Scheffler dispersion
- Delta DFTB for lowest singlet excitated state
- Electron transport for system with colinear spin polarisation
- Phonon transport calculations with new code
- Linear response gradients for spin polarisation
- FIRE geometry optimizer
- Simple D3-dispersion implementation (can be used without needing the external D3-library)
- MPI parallelisation for UFF, Slater-Kirkwood and DFT-D4 dispersion
- OMP parallelisation for UFF and Slater-Kirkwood dispersion
- Option to take quasi-Newton steps in lBFGS (set as default)
- CMake cache variable names in accordance with CMake devel documentation
- Stress tensor is now calculated with Slater-Kirkwood dispersion
- Cube format closer to the files expected by several external tools
- REKS (spin-Restricted Ensemble Kohn-Sham) calculations for ground and low-lying exited states
- Support for meta-dynamics in MD via the Plumed library
- Option to set mass of atoms in the modes code input file (syntax matches existing DFTB+ feature)
- Use of processor groups with transport calculations, enabling better parallelism for systems that need k-points
- Reading of input coordinates in XYZ format
- Reading of input coordinates in the VASP POSCAR format
- The DFT-D4 dispersion model
- Helical geometries supported for non-SCC calculations
- Generalised Born (GB) and Analytical Linearised Poisson-Boltzmann (ALPB) implicit solvation models for SCC calculations
- Non-polar solvent accessible surface area solvation model
- Particle-particle random-phase approximation available for suitable excitation calculations
- Range separated excited state calculations for spin free singlet systems
- New algorithm for the ground state range-separated hamiltonian
- Real time electronic and coupled electron-ion Ehrenfest dynamics
- New build system using CMake (the old makefile system has been retired)
- Input in GEN format now strictly follows the description in the manual
- Versioned format for transport contact shift files (backward compatible), also enables the Fermi energy to be read directly from the contact file.
- Removed residual XML input (leaving detailed.xml export, depreciating the undocumented <<! tag in HSD)
- Output of energies clarified (total energy when electron entropy is not available, Mermin free energy when it is and force related energy when the energy associated with Helmann-Feynman forces is available)
- API extended for MPI parallel calculations and interfaces added to obtain API version and DFTB+ release.
- Poisson solver available without libNEGF enabled compilation
- Parser input can now be set according to the code release version (20.1)
- Correct update of block Mulliken population for onsite correction with range-separation hybrid DFTB.
- MD temperature profiles that do not start with an initial constant temperature
- Free energy for PEXSI calculations
- ELSI calculations for spin-orbit and onsite corrected corrections
- Non-equilibrium Green's function transport.
- Use of the ELSI library.
- Ability to perform ground state MD with excitation energies.
- Caching for transition charges in excited state.
- DFTB+ can be compiled as a library and accessed via high level API (version number is in the file api/mm/API_VERSION below the main directory).
- Onsite corrected hamiltonian for ground state energies.
- Range-separated hybrid DFTB.
- GPU acceleration using the MAGMA library for eigensolution. WARNING: this is currently an experimental feature, so should be used with care.
- Labelling of atomic orbital choices in output.
- Halogen X correction.
- Updated parser version to 7.
- Orbital-resolved projected eigenstates (shell-resolved were correct)
- Corrected Orbital to Shell naming conventions
- Option for removing translational and rotational degrees of freedom in modes.
- H5 correction for hydrogen bonds.
- Updated parser version to 6.
- Syntax for H5 and DampedHX corrections for hydrogen bonds unified.
- Compilation when socket interface disabled.
- Stress tensor evaluation for 3rd order DFTB.
- Tollerance keyword typo.
- Corrected erroneous Lennard-Jones-dispersion for periodic cases (broken since release 1.3)
- Forces/stresses for dual spin orbit.
- MPI-parallelism.
- Various user settings for MPI-parallelism.
- Improved thread-parallelism.
- LBGFS geometry driver.
- Evaluation of electrostatic potentials at specified points in space.
- Blurred external charges for periodic systems.
- Option to read/write restart charges as ASCII text.
- Timer for collecting timings and printing them at program end.
- Tolerance of Ewald summation can be set in user input.
- Shutdown possibility when using socket driver.
- Header for code prints release / git commit version information.
- Warning when downloading license incompatible external components.
- Tool straingen for distorting gen-files.
- Using allocatables instead of pointers where possible.
- Change to use the Fypp-preprocessor.
- Excited state (non-force) properties for multiple excitations.
- Broyden-mixer does not use file I/O.
- Source code documentation is Ford-compatible.
- Various refactorings to improve on modularity and code clarity.
- Keyword Atoms in modes_in.hsd consider only the first specified entry.
- Excited window selection in Cassida time-dependent calculation.
- Formatting of eigenvalues and fillings in detailed.out and band.out
- iPI socket interface with cluster geometries fixed (protocol contains redundant lattice information in these cases).
- Add dptools toolkit.
- Convert to LGPL 3 license.
- Restructure source tree.
- Streamline autotest suite and build system.
- Skip irrelevant tests that give false positives for particular compilation modes.
- Make geometry writing in gen and xyz files consistent.