- Current version: 0.1.2
- Class: :py
~aiida_fleur.workflows.relax.FleurRelaxWorkChain
- String to pass to the :py
~aiida.plugins.WorkflowFactory
:fleur.relax
- Workflow type: Technical
- Aim: Structure optimization of a given structure
- Computational demand: Several :py
~aiida_fleur.workflows.scf.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')
Optimizes the structure in a way the largest force is lower than a given threshold.
Uses :py~aiida_fleur.workflows.scf.FleurScfWorkChain
to converge forces first, checks if the largest force is smaller than the threshold. If the largest force is bigger, submits a new :py~aiida_fleur.workflows.scf.FleurScfWorkChain
for next step structure proposed by FLEUR.
All structure optimization routines implemented in the FLEUR code, the workchain only wraps it.
The FleurSSDispWorkChain employs exposed feature of the AiiDA, thus inputs for the nested SCF<scf_wc>
workchain should be passed in the namespace scf
.
name | type | description | required |
---|---|---|---|
scf | namespace | inputs for nested SCF WorkChain | yes |
wf_parameters | :py~aiida.orm.Dict |
Settings of the workchain | no |
wf_parameters
: :py~aiida.orm.Dict
- Settings of the workflow behavior. All possible keys and their defaults are listed below:code/relax_parameters.py
out
: :py~aiida.orm.Dict
- Information of workflow resultsoptimized_structure
: :py~aiida.orm.StructureData
- Optimized structure
Geometry optimization workchain always submits SCF WC using inputs given in the scf
namespace. Thus one can start with a structure, FleurinpData or converged/not-fully-converged charge density.
name | type | comment |
---|---|---|
out | :py~aiida.orm.Dict |
results of the workchain |
optimized_structure | :py~aiida_fleur.data.fleurinp.FleurinpData |
FleurinpData that was used (after all modifications) |
For now output node contains the minimal amount of information. The content can be easily extended on demand, please contact to developers for request.
# this is a content of out output node
{
"errors": [],
"force": [
0.03636428
],
"force_iter_done": 1,
"info": [],
"initial_structure": "181c1e8d-3c56-4009-b0bb-e8b76cb417e2",
"warnings": [],
"workflow_name": "FleurRelaxWorkChain",
"workflow_version": "0.1.0"
}
A list of implemented exit codes:
+-----------+----------------------------------------------------------| Code | Meaning | +-----------+----------------------------------------------------------| 350 | The workchain execution did not lead to | | | relaxation criterion. Thrown in the very | | | end of the workchain. | +-----------+---------------------------------------------------------+ | 351 | SCF Workchains failed for some reason. | +-----------+---------------------------------------------------------+ | 352 | Found no relaxed structure info in the output of SCF | +-----------+---------------------------------------------------------+ | 353 | Found no SCF output | +-----------+---------------------------------------------------------+ | 354 | Force is small, switch to BFGS | +-----------+---------------------------------------------------------+
Exit codes duplicating FleurCalculation exit codes:
Exit code | Reason |
---|---|
311 | FLEUR calculation failed because atoms spilled to the vacuum |
313 | Overlapping MT-spheres during relaxation |
code/relax_submission.py