Fleur structure optimization workchain

  • Class: FleurRelaxWorkChain
  • String to pass to the WorkflowFactory(): fleur.relax
  • Workflow type: Basic workflow
  • Aim: Structure optimization of a given structure
  • Computational demand: Several FleurScfWorkChain
  • Database footprint: Output node with information, full provenance, ~ 10+10*FLEUR Jobs nodes

Import Example:

from aiida_fleur.workflows.relax import FleurRelaxWorkChain
#or
WorkflowFactory('fleur.relax')

Description/Purpose

Optimizes the structure in a way the largest force is lower than a given threshold.

Uses FleurScfWorkChain to converge forces first, checks if the largest force is smaller than the threshold. If the largest force is bigger, submits a new FleurScfWorkChain for next step structure proposed by FLEUR.

Input nodes

  • fleur: Code - Fleur code using the fleur.fleur plugin
  • inpgen, optional: Code - Inpgen code using the fleur.inpgen plugin
  • wf_parameters: Dict, optional - Settings of the workflow behavior
  • structure: StructureData, optional: Crystal structure data node.
  • calc_parameters: Dict, optional - FLAPW parameters, used by inpgen
  • fleurinp: FleurinpData, optional: Fleur input data object representing the fleur input files
  • remote_data: RemoteData, optional - The remote folder of the previous calculation
  • options: Dict, optional - AiiDA options (queues, cpus)
  • settings: Dict, optional - special settings

Returns nodes

  • out: Dict - Information of workflow results
  • optimized_structure: StructureData - Optimized structure

Default inputs

Workflow parameters.

wf_parameters_dict = {'fleur_runmax': 4,       # needed for SCF
               'alpha_mix': 0.015,             # Sets alpha mixing parameter
               'relax_iter': 5,                # Maximum number of optimization iterations
               'force_criterion': 0.001,       # Sets the threshold of the largest force
               'force_converged' : 0.002,      # needed for SCF
               'serial' : False,               # needed for SCF
               'force_dict': {'qfix': 2,       # needed for SCF
                              'forcealpha': 0.5,
                              'forcemix': 2},
               'itmax_per_run' : 30,           # needed for SCF
               'inpxml_changes' : [],          # needed for SCF
               }

Layout

Geometry optimization workchain has several input combinations that implicitly define the workchain layout. Depending on the setup of the inputs, one of four supported scenarios will happen:

  1. fleurinp:

    Files, belonging to the fleurinp, will be used as input for the first FLEUR calculation.

  2. fleurinp + parent_folder (FLEUR):

    Files, belonging to the fleurinp, will be used as input for the first FLEUR calculation. Moreover, initial charge density will be copied from the folder of the parent calculation.

  3. parent_folder (FLEUR):

    inp.xml file and initial charge density will be copied from the folder of the parent FLEUR calculation.

  4. structure:

    inpgen code will be used to generate a new fleurinp using a given structure.

Error handling

Still has to be documented