Welcome to the AiiDA-FLEUR’s documentation! — AiiDA-FLEUR 1.1.0 documentation

# Welcome to the AiiDA-FLEUR’s documentation!

The AiiDA-FLEUR python package enables the use of the all-electron Density Functional Theory (DFT) code FLEUR (http://www.flapw.de) with the AiiDA framework (http://www.aiida.net).

It is open source under the MIT license and is available under (https://github.com/JuDFTteam/aiida-fleur). The package is developed within the MaX EU Center of Excellence (www.max-center.eu) at Forschungszentrum Jülich GmbH (http://www.fz-juelich.de/pgi/pgi-1/DE/Home/home_node.html), (IAS-1/PGI-1), Germany. Check out the AiiDA registry to find out more about what other packages for AiiDA exists, that might be helpful for you.

If you use this package please cite:

- The plugin and workflows:

  J. Broeder, D. Wortmann, and S. Blügel, Using the AiiDA-FLEUR package for all-electron ab initio electronic structure data generation and processing in materials science, In Extreme Data Workshop 2018 Proceedings, 2019, vol 40, p 43-48

- The FLEUR code: http:/www.flapw.de

## Features, Illustrations, Usage examples:

Example 1, Full Provenance tracking trough AiiDA:

AiiDA graph visualization of a small database containing about 130 000 nodes from Fleur calculations. (Visualized with Gephi)

Example 2, Material screening:

Fleur SCF convergence of 1362 different screened Binary systems managed by the scf workchain

Example 3 Method robustness, tuning:

FLAPW muffin tin radii for all materials (>820000) in the OQMD .

Example 4, DFT Code Interoperability:

If an DFT code has an AiiDA plugin, one can run successive calculations using different codes. For example, it is possible to perform a structure relaxation with VASP or Quantum Espresso and run an all-electron FLEUR workflow for the output structure.

Example 5, Quick Visualizations:

AiiDA-FLEUR contains a function (‘plot_fleur’) to get a quick visualization of some database node(s). For example, to make a convergence plot of one or several SCF runs in your scripts, or notebook.:

    plot_fleur(scf_node)

    plot_fleur(scf_node_list)

## Basic overview

### Requirements to use this code:

- A running AiiDA version (and postgresql database)

- Executables of the Fleur code

Other packages (in addition to all requirements of AiiDA):

- lxml

- ase

- masci-tools

### AiiDA-package Layout:

1. Fleur input generator

2. FleurinpData structure

3. Fleur code

The overall plugin for Fleur consists out of three AiiDA plugins. One for the Fleur input generator (inpgen), one data structure (fleurinpData) representing the inp.xml file and a plugin for the Fleur code (fleur, fleur_MPI). Other codes from the Fleur family (GFleur) or which build on top (Spex) are not supported.

The package also contains workflows

1. Fleur base workchain

2. Self-Consistent Field (Scf)

3. Density Of States (DOS)

4. Structure optimization (relax)

5. Band structure

6. Equation of States (EOS)

7. Initial corelevel shifts

8. Corehole

9. Force-theorem Magnetic Anisotropy Energy

10. Force-theorem Spin Spiral Dispersion

11. Force-theorem Dzjaloshinskii-Moriya Interaction energy dispersion

12. Scf Magnetic Anisotropy Energy

13. Scf Spin Spiral Dispersion

The package also contains AiiDA dependent tools around the workflows and plugins. All tools independent on aiida-core are moved to the masci-tools repository, to be available to other non AiiDA related projects and tools.

### Acknowledgments:

We acknowledge partial support from the EU Centre of Excellence “MaX – Materials Design at the Exascale” (http://www.max-centre.eu). (Horizon 2020 EINFRA-5, Grant No. 676598). We thank the AiiDA team for their help and work. Also the vial exchange with developers of AiiDA packages for other codes was inspiring.

## User’s Guide

Everything you need for using AiiDA-FLEUR

- User’s guide
  - Getting started
    - Installation of AiiDA-FLEUR
      - Installation of python packages
    - AiiDA setup
      - Profile setup
      - Computers setup
      - FLEUR and inpgen setup
      - Installation test
  - AiiDA-FLEUR Data Plugins
    - FleurinpData
      - Description/Features
      - Properties
      - User Methods
      - Setting up atom labels
    - FleurinpModifier
      - Description
      - Usage
      - User Methods
  - AiiDA-FLEUR Calculations
    - Fleur input generator plugin
      - Description
      - Inputs
      - Outputs
      - Errors
      - Additional advanced features
    - FLEUR code plugin
      - Description
      - Inputs
      - Outputs
      - Errors
      - Additional advanced features
  - AIIDA-FLEUR WorkChains
    - General design
      - Inputs
      - Outputs
    - Workchain classification
      - Basic (Technical) Workchains
      - More advanced (Scientific) Workchains
  - Verdi command line extentions
  - Tools
  - Tutorials
    - Basic AiiDA tutorials:
    - How calculation plugins work:
      - Run inpgen calculation tutorial
      - Run fleur calculation tutorial
    - Running workflows:
      - Run fleur SCF tutorial
      - Run fleur eos tutorial
      - Run fleur bandstructure/dos tutorial
    - Data extraction and evaluation:
      - General calculation, workflow
      - Total database
  - Hints
    - For Users
    - FAQ
  - Exit codes

## Developer’s Guide

Some things to notice for AiiDA-FLEUR developers. Conventions, programming style, Integrated testing, things that should not be forgotten

- Developer’s guide
  - Package layout
  - Automated tests
  - Plugin development
  - Workflow/chain development
    - General Workflow development guidelines:
    - FLEUR specific desgin suggestions, conventions:
  - Entrypoints
  - Other information
    - Useful to know

## Module reference (API)

Automatic generated documentation for all modules, classes and functions with reference to the source code. The search is your friend.

- Source code Documentation (API reference)
  - Fleur input generator plug-in
    - Fleurinputgen Calculation
    - Fleurinputgen Parser
  - Fleur-code plugin
    - Fleur Calculation
    - Fleur Parser
  - Fleur input Data structure
    - Fleur input Data structure
    - Fleurinp modifier
  - Workflows/Workchains
    - Base: Fleur-Base WorkChain
    - SCF: Fleur-Scf WorkChain
    - Band: Bandstructure WorkChain
    - DOS: Density of states WorkChain
    - EOS: Calculate a lattice constant
    - Relax: Relaxation of a Cystalstructure WorkChain
    - initial_cls: Caluclation of inital corelevel shifts
    - corehole: Performance of coreholes calculations
    - delta: Calculates a Delta Factor
    - MAE: Force-theorem calculation of magnetic anisotropy energies
    - MAE Conv: Self-consistent calculation of magnetic anisotropy energies
    - SSDisp: Force-theorem calculation of spin spiral dispersion
    - SSDisp Conv: Self-consistent calculation of spin spiral dispersion
    - DMI: Force-theorem calculation of Dzjaloshinskii-Moriya interaction energy dispersion
  - Fleur tools/utility
    - Dealing with XML Schema files
    - Structure Data util
    - XML utility
    - Parameter utility
      - General Parameter
      - Merge Parameter
    - Corehole/level utility
    - Common aiida utility
    - Reading in Cif files
    - IO routines
    - Common utitlity for fleur workchains

## Indices and tables

- Index

- Module Index

- Search Page