Skip to main content

AiiDA plugin for the JuKKR codes

Project description

aiida-core Documentation Status Build status codecov MIT license GitHub version PyPI version DOI

aiida-kkr

AiiDA plugin for the Jülich KKR codes plus workflows and utility.

Features

  • KKR calculations for bulk and interfaces
  • treatment of alloys using VCA or CPA
  • self-consistency, DOS and bandstructure calculations
  • extraction of magnetic exchange coupling parameters (J_ij, D_ij)
  • impurity embedding solving the Dyson equation

How to cite

If you use this plugin please cite:

Rüßmann, P., Bertoldo, F. & Blügel, S. The AiiDA-KKR plugin and its application to high-throughput impurity embedding into a topological insulator. npj Comput Mater 7, 13 (2021). https://doi.org/10.1038/s41524-020-00482-5

The ArXiv preprint can be found here:

Philipp Rüßmann, Fabian Bertoldo and Stefan Blügel, The AiiDA-KKR plugin and its application to high-throughput impurity embedding into a topological insulator, arXiv:2003.08315 [cond-mat.mtrl-sci] (2020)

Installation

$ pip install aiida-kkr  # install latest version of aiida-kkr (published on pypi.org)
$ reentry scan -r aiida  # update entry points, needed in order to find kkr.* entrypoints in aiida

# setupt aiida if this was not done already:
$ verdi quicksetup  # better to set up a new profile
$ verdi calculation plugins  # should now show kkr.* entrypoints

To install the developer version download the repository and install the downloaded version (see setup.json for a list of optional packages that are installed with the extras given in [])

$ git clone https://github.com/JuDFTteam/aiida-kkr.git
$ pip install -e aiida-kkr[testing,devtools,docs]
$ reentry scan -r aiida

Remarks about dependencies and extras

  • The aiida-kkr plugin uses the ase and pymatgen packages for structure conversions.
  • For aiida-core>=1.5,<1.6 make sure to use the requirements specified in requirements_aiida-core_1.5.txt (use pip install -r requirements_aiida-core_1.5.txt aiida-kkr for the installation to overwrite the aiida-core dependency).
  • Other extras that can be optionally installed with aiida-kkr are
    • pre-commit which installes the pre-commit hooks that allow style (yapf) and static code checking (pylint)
    • testing which installs pytest and all extension used in the tests
    • docs which installs Sphinx to build the documentation
    • devtools which installs tools that might be helpful during development

Usage and Documentation

Contributing

Thank you for your interest in contributing to aiida-kkr. Check out our contributing guide for some information.

Releasing new versions

To create a new release follow these steps:

  • finish your development and merge it into the develop branch
  • update documentation
  • update / fix tests
  • bump version numbers (in files aiida_kkr/__init__.py, pyproject.toml, .bumpversion.cfg)
  • merge changes from develop back into master and create a tag for the new version number (this triggers publication to pypi)

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page