Skip to content

v0.0.11

Compare
Choose a tag to compare
@github-actions github-actions released this 02 Sep 09:48
6788a31

Task Document Changes

We have merged the atomate2 VASP task document with the one in emmet. The changes to the atomate2 schemas are:

  • PsuedoPotentialSummary -> Potcar
    • labels -> symbols
  • AnalysisSymmary -> AnalysisDoc
    • delta_volume_as_percent -> delta_volume_percent
  • InputSummary -> InputDoc
  • OutputSummary -> OutputDoc
    • density added
  • Status -> TaskState
  • TaskDocument -> TaskDoc
    • task_type added
  • Status -> TaskState

VASP input set updates

The VASP input sets have been reconfigured based on user feedback. The auto_kspacing option has been removed and KSPACING is no longer used in the atomate2 input sets by default. We have returned to using reciprocal_density as in atomate1. These changes mean the k-point mesh is no longer dependent on the precise band gap of the system. Instead, there are now two k-points settings, one for insulators and one for metals. This should remove issues when changing the functional from PBEsol -> HSE, in which the band gap increases but the k-point mesh would be expected to stay the same.

Two new options have been added to the BaseVaspInputSetGenerator:

  • auto_metal_kpoints: If true and the system is metallic, try and use reciprocal_density_metal instead of reciprocal_density for metallic systems.
  • auto_ismear: If true, the values for ISMEAR and SIGMA will be set automatically depending on the bandgap of the system. If the bandgap is not known (e.g., there is no previous VASP directory) then ISMEAR=0 and SIGMA=0.2; if the bandgap is zero (a metallic system) then ISMEAR=2 and SIGMA=0.2; if the system is an insulator, then ISMEAR=-5 (tetrahedron smearing).

New Features 🎉

Bug Fixes 🐛

Enhancements 🛠

  • Extension of Lobster schema and additional tests by @JaGeo in #272
  • Use emmet VASP task document by @utf in #269
  • VASP inputset updates by @utf in #270
  • Linting by @utf in #274
  • Improve Lobster workflow preconverge step, kpoints, docs by @JaGeo in #277
  • add has_doscar_lso field to Lobsterout schema model and update lobsterpy version by @naik-aakash in #286
  • added simple chg check by @jmmshn in #320
  • Switch to emmet's MoleculeMetadata by @arosen93 in #301
  • Update update-precommit.yml by @utf in #330
  • Update dependencies by @utf in #329
  • Add missing molecule field to cclib TaskDocument by @arosen93 in #353
  • allow elastically unstable structures by @matthewkuner in #355
  • update lobstertask schema: add bandoverlaps,grosspop and sitepotentials fields by @naik-aakash in #404
  • Update CondensedBondingAnalysis schema by @naik-aakash in #469
  • Phonon tweaks by @utf in #276
  • Update to Defects WF by @jmmshn in #430
  • Small change to gunzip to allow better restarting by @jmmshn in #476
  • Remove VASP calc types schema by @mjwen in #407
  • Optionally zip files at the end of jobs by @gpetretto in #414

Documentation 📖

  • Add more documentation for Lobster by @JaGeo in #267
  • Use furo for docs theme by @utf in #331
  • Update Lobster documentation by @JaGeo in #376
  • Fix docs typos by @janosh in #373
  • Update FireWorks section of docs by @arosen93 in #378
  • Add a copy button to code blocks by @arosen93 in #382
  • clean up doc, remove left-overs from amset example by @JaGeo in #394
  • More details for lobster documentation by @JaGeo in #431
  • Deploy docs on every commit to main by @janosh in #422
  • Add clearer documentation on lobster worker by @JaGeo in #440
  • Docs: add basic workflow tutorial by @rkingsbury in #408
  • Use GitHub's deploy-pages action to deploy docs by @janosh in #475

House-Keeping 🧹

  • More ruff by @janosh in #344
  • Move all type-hint only imports behind if TYPE_CHECKING by @janosh in #354
  • ruff select perflint flake8-slots by @janosh in #395
  • Bump ruff and fix PERF401: Use a list comprehension to create transformed list by @janosh in #421
  • Simplify: dict.get(key, None) -> dict.get(key) by @janosh in #429
  • dict.setdefault instead of if key not in dict: dict[key] = ... by @janosh in #452

New Contributors

Full Changelog: v0.0.10...v0.0.11)