Skip to content
Tags give the ability to mark specific points in history as being important
This project is mirrored from https://*****@github.com/JuliaMolSim/DFTK.jl.git. Pull mirroring updated .
  • v0.4.1 Release: v0.4.1
    [Diff since v0.4.0](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.4.0...v0.4.1)
    
    **Closed issues:**
    - Convergence issues with HybridMixing and shifed k-Point meshes (#283)
    - Kinetic Terms (#538)
    - Wrong spglib spacegroup (#539)
    
    **Merged pull requests:**
    - Avoid two-step division and rounding (#537) (@antoine-levitt)
    - Fix spglib wrapper bug (wrong transpose) (#540) (@jaemolihm)
  • v0.4.0 Release: v0.4.0
    [Diff since v0.3.10](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.10...v0.4.0)
    
    Note that this release increases the minor version and
    contains a number of breaking changes:
    
    - The bandstructure plotting mechanism (`plot_bandstructure` and friends) now uses [`Brillouin.jl`](https://github.com/thchr/Brillouin.jl) to determine the kpath instead of the `pymatgen` python library. Since this effectively changes the determined kpath from the [Setyawan-Curtarolo](http://doi.org/10.1016/j.commatsci.2010.05.010) convention to the [Hinuma *et. al.*](http://doi.org/10.1016/j.commatsci.2016.10.015) convention the obtained bands will now differ in some cases. (#496)
    
    - [LdosMixing](https://michael-herbst.com/publications/2020.09.03_ldos_preconditioning.pdf) is now the default mixing/preconditioning for self-consistent field iterations. Due to the auto-adapting nature of this approach we expect this to be a better default mixing choice, albeit it likely implies performance penalties for small systems. The old behaviour can be restored by passing `mixing=SimpleMixing()` to `self_consistent_field`. (#509)
    
    - The deprecated `PlaneWaveBasis(model, Ecut; kgrid=...)` constructor has been removed in favour of `PlaneWaveBasis(model; Ecut, kgrid=...)` (i.e. `Ecut` is now a keyword argument). (#517)
    
    - The function `kgrid_size_from_minimal_spacing` has been renamed to  `kgrid_from_minimal_spacing` and its default argument removed (#523)
    
    - The function `compute_fft_size(lattice::AbstractMatrix, Ecut)` has been removed in   favour of `compute_fft_size(model::Model, Ecut)`, i.e. if you want to manually compute the FFT size with this function you must now pass a `Model` and not just the lattice vectors. (#524)
    
    - The interface of the functions `compute_bands` and `plot_bandstructure` has been  made more in line with the rest of the code. Atomic units are now used for all   quantities on input and output. This means that bands are by default plotted  in Hartree (use `unit=u"eV"` to restore old behaviour of plotting in electron volts).  Similarly `kline_density` is no longer assumed to be in Ångström, but in Bohr.  The new interfaces of these functions is  `compute_bands(basis, kcoords; n_bands, ρ, kwargs...)` or  `plot_bandstructure(basis; ρ, n_bands, kwargs...)`, i.e. `n_bands` and `ρ`   have become non-mandatory keyword arguments.  The more high-level interface `plot_bandstructure(scfres; kwargs...)`  remains valid. (#536)
    
    **Closed issues:**
    - Forces and stresses (#47)
    - homogenize kpoint spelling (#326)
    - Debug incompatibility with JLD2 beyond 0.4.7 for MPI-parallel `save_scfres` (#444)
    - Segfault in 1.7 (#480)
    - Replace pymatgen by Brillouin.jl (#483)
    - Stresses: API and symmetries (#484)
    - Windows CI started failing (#501)
    - stresses without unfold_bz (#506)
    - Potential Issue with Stresses and Number of Bands (#512)
    - Applicability of Stresses in Metalic Systems: Comparing Si to Fe (#527)
    
    **Merged pull requests:**
    - Try to lift JLD2 restrictions (#455) (@mfherbst)
    - Replace pymatgen by Brillouin.jl #483 (#496) (@harrisonlabollita)
    - Move from Gitter to the JuliaMolSim slack (#507) (@mfherbst)
    - Make LDOS mixing the default (#509) (@mfherbst)
    - Use more convenient MPI.Init from MPI 0.19 (#510) (@github-actions[bot])
    - Implement stresses without unfold_bz (#511) (@jaemolihm)
    - Fix stresses for very small occupations (#513) (@antoine-levitt)
    - Fix and reword symmetries documentation section. (#516) (@mfherbst)
    - Remove deprecated PlaneWaveBasis constructor (#517) (@mfherbst)
    - [WIP] Forwarddiff dipole moment example (#520) (@niklasschmitz)
    - Fix more edge cases when computing the number of occupied bands (#521) (@mfherbst)
    - Improve basis mapping (#522) (@mfherbst)
    - Implement kgrid_from_minimal_kpoints (#523) (@mfherbst)
    - Improved printing with `Base.show` (#524) (@mfherbst)
    - Some docs explaining periodic problems (#525) (@mfherbst)
    - Add test for self-adjointness of solve_ΩplusK (#528) (@niklasschmitz)
    - homogenize k-points in docs and comments (#531) (@thazhemadam)
    - A collection of various small fixes (#532) (@mfherbst)
    - Remove reference to pymatgen as dependency (#534) (@mfherbst)
    - CompatHelper: bump compat for Spglib to 0.5, (keep existing compat) (#535) (@github-actions[bot])
    - Refactor plot_bandstructure interface (#536) (@mfherbst)
  • v0.3.10 Release: v0.3.10
    [Diff since v0.3.9](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.9...v0.3.10)
    
    **Merged pull requests:**
    - Stresses API (#487) (@antoine-levitt)
    - Improve _apply_plan type stability (#494) (@niklasschmitz)
    - Small updates to the documentation (#497) (@mfherbst)
    - Simplify defining custom elements (#498) (@mfherbst)
    - Add some missing fallbacks for interval arithmetic (#499) (@mfherbst)
    - Separate fft normalizations from plans (#500) (@antoine-levitt)
    - Add Juliacon workshop to DFT materials in the documentation. (#502) (@mfherbst)
    - Adapt potential mixing heuristics for very large model errors (#505) (@mfherbst)
  • v0.3.9 Release: v0.3.9
    [Diff since v0.3.8](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.8...v0.3.9)
    
    **Merged pull requests:**
    - Support band structures for 1D systems (#492) (@mfherbst)
    - Search for more symmetries in larger systems (#493) (@mfherbst)
  • v0.3.8 Release: v0.3.8
    [Diff since v0.3.7](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.7...v0.3.8)
    
    **Closed issues:**
    - Implement conversions between grids (#43)
    - [WIP] Autodiff stresses (#443)
    - Bug Using Charged systems (#485)
    
    **Merged pull requests:**
    - Hellmann-Feynman stresses via ForwardDiff and custom rules (#476) (@niklasschmitz)
    - Avoid mutation in ρ_from_total_and_spin (#482) (@antoine-levitt)
    - Pwbasis refactor (#486) (@antoine-levitt)
    - Extend ForwardDiff fallback for SVector norm to handle multiple partials (#488) (@niklasschmitz)
    - Allow passing Ecut as a keyword argument (#489) (@mfherbst)
    - Simplify loading logic for ForwardDiff workarounds (#490) (@mfherbst)
  • v0.3.7 Release: v0.3.7
    [Diff since v0.3.6](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.6...v0.3.7)
    
    **Merged pull requests:**
    - Ω+K, split version (#477) (@antoine-levitt)
    - Psp sanity check for lower dimensionality (#478) (@mfherbst)
    - Fix documentation generation (#479) (@mfherbst)
  • v0.3.6 Release: v0.3.6
    [Diff since v0.3.5](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.5...v0.3.6)
    
    **Closed issues:**
    - Test real/fourier consistency of local/nonlocal potentials (#141)
    - Adding options for setting the charge and mass of the electrons (#380)
    - New folder for research codes? (#381)
    
    **Merged pull requests:**
    - Solve_Ω at finite temperature, use it for χ0 (#468) (@antoine-levitt)
    - Remove occupation_function (#471) (@antoine-levitt)
    - Remove obsolete warning for forces (#472) (@antoine-levitt)
    - Overhaul pack/unpack routines to not assume that psi are fully occupied (#473) (@antoine-levitt)
    - Centralize spin asserts, error on :full (#474) (@antoine-levitt)
    - Final round of parameter tuning for potential mixing (#475) (@mfherbst)
  • v0.3.5 Release: v0.3.5
    [Diff since v0.3.4](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.4...v0.3.5)
    
    **Closed issues:**
    - Fix and document conventions for response-like computations (#460)
    
    **Merged pull requests:**
    - newton algorithm (#433) (@gkemlin)
    - Workaround reorganization (#463) (@antoine-levitt)
    - A few more tweaks for potential mixing (#464) (@mfherbst)
    - Fermi-Dirac stability improvement (#465) (@antoine-levitt)
    - Remove starring (#469) (@mfherbst)
    - Remove code switching Accelerator off (#470) (@mfherbst)
  • v0.3.4 Release: v0.3.4
    [Diff since v0.3.3](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.3...v0.3.4)
    
    **Merged pull requests:**
    - interpolation from a basis to a smaller basis (#447) (@gkemlin)
    - Potential mixing (#450) (@mfherbst)
    - Remove BlockArrays workaround (#458) (@antoine-levitt)
    - Small minor fixes in docs and dependencies (#462) (@mfherbst)
  • v0.3.3 Release: v0.3.3
    [Diff since v0.3.2](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.2...v0.3.3)
    
    **Closed issues:**
    - Use ETSF nanoquanta file structure for silicon_runners.jl (#26)
    - Thoughts on a New Package (#373)
    - Comparison of DFTK vs QE for magnetic PrNiO3 (#434)
    - Binder tutorial issue (#448)
    - Timing regression due to #442 (#452)
    
    **Merged pull requests:**
    - Workround for timing regression (#457) (@mfherbst)
  • v0.3.2 Release: v0.3.2
    [Diff since v0.3.1](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.1...v0.3.2)
    
    **Closed issues:**
    - How to verify a PlaneWaveBasis has been updated? (#445)
    
    **Merged pull requests:**
    - Fix binder setup (#449) (@mfherbst)
    - Prioritise DFTK-related packages in Binder Manifest (#451) (@mfherbst)
    - Performance workaround for BlockArrays (#453) (@antoine-levitt)
    - Undo performance workaround for newer version of BlockArrays (#454) (@github-actions[bot])
  • v0.3.1 Release: v0.3.1
    [Diff since v0.3.0](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.3.0...v0.3.1)
    
    **Closed issues:**
    - Proper type stability (#60)
    - Decide on r_to_G vs from_fourier().real (#311)
    - Rethink RealFourierArray (#313)
    - Data structure for `ρ` and `ρspin` (#320)
    - Use of Measurements.jl in DFTK (#417)
    - Magnetism warning (#438)
    - Optimize linear algebra in LOBPCG (#441)
    
    **Merged pull requests:**
    - Bail out in density guess if magnetisation is too large (#439) (@mfherbst)
    - Non-allocating dot in kinetic (#440) (@antoine-levitt)
    - Use BlockArrays in LOBPCG (#442) (@antoine-levitt)
  • v0.3.0 Release: v0.3.0
    [Diff since v0.2.8](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.8...v0.3.0)
    
    **Closed issues:**
    - Remove using GenericLinearAlgebra warning when GenericLinearAlgebra is already defined (#429)
    - Documentation for spin not up to date (#436)
    
    **Merged pull requests:**
    - Remove RealFourierArray and refactor internal density datastructures (#413) (@antoine-levitt)
    - Refactor damping out of mixing datastructures (#426) (@mfherbst)
    - Remove remaining from_fourier (#427) (@gkemlin)
    - Remove using GenericLinearAlgebra warning when GenericLinearAlgebra is already defined (#430) (@mfherbst)
    - CompatHelper: bump compat for "MPI" to "0.18" (#432) (@github-actions[bot])
    - Add RWTH Aachen funding (#435) (@mfherbst)
    - Extra forces test for magnetic ground state (#437) (@mfherbst)
  • v0.2.8 Release: v0.2.8
    [Diff since v0.2.7](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.7...v0.2.8)
    
    **Closed issues:**
    - Energy Calculation Discrepency Between Primitive Cell and Conventional Cell (#421)
    
    **Merged pull requests:**
    - CompatHelper: bump compat for "MPI" to "0.17" (#420) (@github-actions[bot])
    - Add a nice introductory DFT reference article (#422) (@mfherbst)
    - Documentation for supported input and output formats (#423) (@mfherbst)
    - Collinear spin GGA kernel (#424) (@mfherbst)
  • v0.2.7 Release: v0.2.7
    [Diff since v0.2.6](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.6...v0.2.7)
    
    **Closed issues:**
    - Integrate with Xtals.jl (#389)
    - dVol as a field (#414)
    - Pymatgen namespaces change v2022.0.0 (#418)
    
    **Merged pull requests:**
    - Do a Rayleigh-Ritz at the end of direct minimization (#411) (@antoine-levitt)
    - Fix GGA non-spin-polarised XC kernel (#412) (@mfherbst)
    - Replace ForwardDiff by manual forces (#415) (@niklasschmitz)
    - CompatHelper: bump compat for "Polynomials" to "2.0" (#416) (@github-actions[bot])
    - Suppress conditional package load warnings (#419) (@mfherbst)
  • v0.2.6 Release: v0.2.6
    [Diff since v0.2.5](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.5...v0.2.6)
    
    **Closed issues:**
    - Support VTK output (#147)
    
    **Merged pull requests:**
    - Write SCF results to VTK files (#392) (@Dsantra92)
    - Support saving results for MPI-parallelised runs (#410) (@mfherbst)
  • v0.2.5 Release: v0.2.5
    [Diff since v0.2.4](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.4...v0.2.5)
    
    **Closed issues:**
    - Windows support (#357)
    
    **Merged pull requests:**
    - Windows support (#398) (@mfherbst)
    - Psp refactor (#401) (@antoine-levitt)
    - Update ewald.jl (#403) (@cyborg1995)
    - Better precision in divided differences (#404) (@antoine-levitt)
    - Use Unitful for all unit-related busyness in DFTK (#405) (@mfherbst)
    - Add CITATION.bib (#408) (@mfherbst)
  • v0.2.4 Release: v0.2.4
    [Diff since v0.2.3](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.3...v0.2.4)
    
    **Closed issues:**
    - Timing of threaded parts (#395)
    - PSP Files For Missing Elements (#397)
    
    **Merged pull requests:**
    - Make GenericLinearAlgebra an optional dependency (#391) (@mfherbst)
    - CompatHelper: bump compat for "AbstractFFTs" to "1.0" (#393) (@github-actions[bot])
    - CompatHelper: bump compat for "IterativeSolvers" to "0.9" (#394) (@github-actions[bot])
    - Make NCDatatests dependency optional (#396) (@mfherbst)
  • v0.2.3 Release: v0.2.3
    [Diff since v0.2.2](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.2...v0.2.3)
    
    **Closed issues:**
    - Integrate with unitful in key constructors (#297)
    - Reduced supersampling can lead to `Input array not real` (#351)
    - Add backref to basis from kpoint (#384)
    
    **Merged pull requests:**
    - Use Unitful in key constructors (#331) (@berquist)
    - Lowpass density for symmetry (#364) (@antoine-levitt)
    - Make pwbasis constructor less of a mess (hopefully) (#386) (@antoine-levitt)
    - CompatHelper: bump compat for "LinearMaps" to "3.0" (#390) (@github-actions[bot])
  • v0.2.2 Release: v0.2.2
    [Diff since v0.2.1](https://github.com/JuliaMolSim/DFTK.jl/compare/v0.2.1...v0.2.2)
    
    **Merged pull requests:**
    - Anyon optimization (#377) (@antoine-levitt)
    - Use JLD2 custom serialisation (#378) (@mfherbst)
    - CompatHelper: bump compat for "NCDatasets" to "0.11" (#383) (@github-actions[bot])
    - Store kgrid and kshift if available (#385) (@mfherbst)
    - Enable codecov and remove Travis completely (#387) (@mfherbst)
    - CompatHelper: bump compat for "StaticArrays" to "1.0" (#388) (@github-actions[bot])