Skip to content

Releases: SMTG-Bham/doped

2.3.2

01 Mar 16:56
Compare
Choose a tag to compare
  • Update to match breaking change in pymatgen==2024.3.1 (released today), handling incar_params.

2.3.1

01 Mar 14:58
Compare
Choose a tag to compare
  • Refactor (phase diagram) facet to (chemical potential) limit in doped chemical potential
    functions, as this is more intuitive for most users.
  • Tests updates.
  • Minor efficiency/verbosity/robustness/docs improvements.
  • Update default KPOINTS for convergence/production runs in chemical_potentials based on testing.
  • Add optional projections of site displacements upon given vectors by @ireaml

2.3.0

14 Feb 20:10
Compare
Choose a tag to compare
  • DefectsThermodynamics class has been added to replace and greatly expand the functionality of the
    DefectPhaseDiagram object. See tutorials for functionality and usage (plotting, Fermi level /
    concentration analysis, dopability, transition levels (with/out metastable etc).
  • Overhaul supercell generation as discussed, now optimises directly off minimum periodic image distance
    (thanks to efficient optimisation algorithm) with some prudent constraints. Significantly reduces
    supercell sizes required in most cases.
  • Overhaul defect grouping as discussed, to use the distance between equivalent defect sites (with this
    controllable via the dist_tol parameter).
  • Add point symmetry and orientational/spin degeneracy parsing, automatically included in thermodynamics
    analysis (and customisable by user).
  • Many efficiency improvements (particularly in defect & input file generation, and symmetry functions).
  • Check and warning for large defect displacements far from defect site.
  • Site displacement (local strain) plotting by @ireaml 🙌
  • Auto determination of X-poor/rich facets.
  • More control over site selection for eFNV correction.
  • Clean, grouped parsing warnings for DefectsParser (in case many warnings...)
  • __repr__ methods for all doped classes for informative outputs.
  • Tests and tutorials updates.

2.2.0

21 Nov 12:07
Compare
Choose a tag to compare
  • Added DefectsParser class for parsing defect calculations:
    • Uses multiprocessing and shared bulk data to massively speed up parsing of many defect supercell
      calcs at once (e.g. from 17 min to < 3 mins for 54 defects in CdTe).
    • Automatically checks INCAR, KPOINTS, POTCAR and charge correction compatibility between
      all calculations, and warns the user if any are likely to affect formation energies.
  • Make csv input to CompetingPhasesAnalyzer more flexible, along with other code and docstrings updates.
  • Format point group symbol in formation energy plots.
  • Refactor elt/elt_refs to el/el_refs by @adair-nicolson
  • Charge states can now be automatically determined even when POTCARs are not setup by the user.

Updates reflected in the doped parsing tutorial.

2.1.0

03 Nov 09:37
Compare
Choose a tag to compare
  • Update finite-size defect corrections implementations:
    • pydefect used directly for eFNV correction (with optimisation for efficiency). Moreover, the
      fully relaxed defect structure (with defect site determined by doped) is used.
    • FNV correction now uses optimised version of pymatgen-analysis-defects implementation.
    • Updated corrections plotting (much nicer formats, more informative etc)
    • The actual energy error in the correction is now estimated, and the user is warned if this exceeds
      error_tolerance (optional parameter, 0.05 eV by default)
    • Bandfilling corrections no longer automatically calculated as (1) almost always not recommended
      and (2) will show an example of calculating these if needed using our code in pymatgen on the docs
  • Efficiency improvements in obtaining defect site info (Wyckoff positions)
  • Additional utils and functions for defect generation and manipulation.
  • (Many) updated tests.
  • Added functionality for robustly determining the point group symmetry of relaxed defects 🔥

2.0.5

18 Sep 12:56
Compare
Choose a tag to compare
  • Update oxi-state handling to:
    • Use pre-assigned oxi states if present
    • Handle pymatgen oxi-state guessing failures (non-integer oxi states, inaccurate oxi states with
      max_sites, failures for extremely large systems etc)
  • Update default probability_threshold from 0.01 to 0.0075.
  • Account for rare possibility of user being on a non UTF-8 system.
  • Italicise "V" for vacancy in plotting.
  • SMTG-UCL -> SMTG-Bham
  • Tests and formatting updates.

2.0.4

04 Sep 16:35
Compare
Choose a tag to compare
  • Add supercell re-ordering tests for parsing
  • Ensure final relaxed defect site (for interstitials and substitutions) is used for finite-size
    charge corrections
  • Consolidate functions and input sets with ShakeNBreak
  • Update defect generation tests
  • Use more efficient Wyckoff determination code

2.0.3

30 Aug 14:38
Compare
Choose a tag to compare
  • Sort defect entries in DefectPhaseDiagram for deterministic behaviour (particularly for plotting).
  • Tests updates (archive test plots, update extrinsic generation tests etc).
  • Avoid long stacklevel issue which cropped up in python3.8 tests for SnB
  • Update PDF figure savefig settings, and add _get_backend function.

2.0.2

29 Aug 17:48
Compare
Choose a tag to compare
  • Refactor _check_user_potcars() to DefectDictSet rather than DefectRelaxSet, and add write_input () method (which runs _check_user_potcars() first).
  • Update defect generation tests
  • Add troubleshooting docs page and update tips docs page

2.0.1

25 Aug 17:08
Compare
Choose a tag to compare
  • Update naming handling in DefectPhaseDiagram to be more robust/flexible, following failure case
    noted by @utf 🙌
  • Ensure package data files are correctly included in the package distribution, again noted by @utf 🙌
  • Updates to chemical potentials code.
  • Refactoring of site-matching code.
  • Tests updates and code cleanup.