aiida_vasp.utils.workchains#

Utils for the workchains.

Auxiliary routines that are not part of any of the workchain classes, but needed to make code more compact in the workchains.

Module Contents#

Functions#

prepare_process_inputs

Prepare the inputs dictionary for a calculation.

compare_structures

Compare two StructureData objects A, B and return a delta (A - B) of the relevant properties.

fetch_k_grid

Suggest a sensible k-point sampling based on a supplied spacing.

compose_exit_code

Compose an ExitCode instance based on a status and message.

site_magnetization_to_magmom

Convert site magnetization to MAGMOM used for restart NOTE: Only tested for colinear cases

API#

aiida_vasp.utils.workchains.prepare_process_inputs(inputs: Any, namespaces: Optional[List[str]] = None, exclude_parameters: Optional[List[str]] = None) aiida.common.extendeddicts.AttributeDict[source]#

Prepare the inputs dictionary for a calculation.

Any remaining bare dictionaries in the inputs dictionary will be wrapped in a Dict data node except for the ‘options’, ‘metadata’, ‘potential’ and any key specified in the parameters namespaces. They all should remain a standard dictionary. Another exception are dictionaries whose keys are not strings but for example tuples.

aiida_vasp.utils.workchains.compare_structures(structure_a: Any, structure_b: Any) aiida.common.extendeddicts.AttributeDict[source]#

Compare two StructureData objects A, B and return a delta (A - B) of the relevant properties.

aiida_vasp.utils.workchains.fetch_k_grid(rec_cell: Any, k_spacing: Any) List[int][source]#

Suggest a sensible k-point sampling based on a supplied spacing.

Parameters:
  • rec_cell – A two dimensional ndarray of floats defining the reciprocal lattice with each vector as row elements.

  • k_spacing – The k-point spacing.

Return kgrid:

The k-point grid given the supplied rec_cell and kstep

This is usable for instance when performing plane wave cutoff convergence tests without a base k-point grid.

aiida_vasp.utils.workchains.compose_exit_code(status: int, message: str) aiida.engine.processes.exit_code.ExitCode[source]#

Compose an ExitCode instance based on a status and message.

aiida_vasp.utils.workchains.site_magnetization_to_magmom(site_dict: Any) List[Any][source]#

Convert site magnetization to MAGMOM used for restart NOTE: Only tested for colinear cases