aiida_hubbard.calculations.hp#

CalcJob implementation for the hp.x code of Quantum ESPRESSO.

Module Contents#

Classes#

HpCalculation

CalcJob implementation for the hp.x code of Quantum ESPRESSO.

Functions#

validate_parent_scf(parent_scf, _)

Validate the parent_scf input.

validate_parent_hp(parent_hp, _)

Validate the parent_hp input.

validate_parameters(parameters, _)

Validate the parameters input.

validate_qpoints(qpoints, _)

Validate the qpoints input.

validate_inputs(inputs, _)

Validate inputs that depend on one another.

Attributes#

aiida_hubbard.calculations.hp.PwCalculation[source]#
aiida_hubbard.calculations.hp.HubbardStructureData[source]#
aiida_hubbard.calculations.hp.validate_parent_scf(parent_scf, _)[source]#

Validate the parent_scf input.

Make sure that it is created by a PwCalculation that was run with an HubbardStructureData.

aiida_hubbard.calculations.hp.validate_parent_hp(parent_hp, _)[source]#

Validate the parent_hp input.

Each entry in the parent_hp mapping should be a retrieved folder of a HpCalculation.

aiida_hubbard.calculations.hp.validate_parameters(parameters, _)[source]#

Validate the parameters input.

aiida_hubbard.calculations.hp.validate_qpoints(qpoints, _)[source]#

Validate the qpoints input.

aiida_hubbard.calculations.hp.validate_inputs(inputs, _)[source]#

Validate inputs that depend on one another.

class aiida_hubbard.calculations.hp.HpCalculation(*args, **kwargs)[source]#

Bases: aiida_quantumespresso.calculations.CalcJob

CalcJob implementation for the hp.x code of Quantum ESPRESSO.

blocked_keywords = [('INPUTHP', 'iverbosity'), ('INPUTHP', 'prefix'), ('INPUTHP', 'outdir'), ('INPUTHP', 'nq1'),...[source]#
compulsory_namelists = ['INPUTHP'][source]#
prefix = 'aiida'[source]#
classmethod define(spec)[source]#

Define the process specification.

filename_output_hubbard_chi()[source]#

Return the relative output filename that contains chi.

filename_output_hubbard()[source]#

Return the relative output filename that contains the Hubbard values and matrices.

filename_input_hubbard_parameters()[source]#

Return the relative input filename for Hubbard parameters, for QuantumESPRESSO version below 7.1.

filename_output_hubbard_dat()[source]#

Return the relative input filename for generalised Hubbard parameters, for QuantumESPRESSO v.7.2 onwards.

dirname_output()[source]#

Return the relative directory name that contains raw output data.

dirname_output_hubbard()[source]#

Return the relative directory name that contains raw output data written by hp.x.

dirname_output_scf()[source]#

Return the relative directory name that contains raw output data written by pw.x.

prepare_for_submission(folder)[source]#

Create the input files from the input nodes passed to this instance of the CalcJob.

Parameters:

folder – an aiida.common.folders.Folder to temporarily write files on disk

Returns:

aiida.common.datastructures.CalcInfo instance

get_retrieve_list() list[tuple][source]#

Return the retrieve_list.

A HpCalculation can be parallelized over atoms by running individual calculations, but a final post-processing calculation will have to be performed to compute the final matrices. The final calculation that computes chi requires the perturbation files for all

Returns:

list of resource retrieval instructions

get_remote_copy_list(is_symlink) list[tuple][source]#

Return the remote_{copy/symlink}_list.

Parameters:

is_symlink – whether to use symlink for the remote list

Returns:

list of resource copy instructions

get_local_copy_list() tuple[list, list][source]#

Return the local_copy_list.

Returns:

tuple,list of resource copy instructions

prepare_parameters() dict[source]#

Prepare the parameters based on the input parameters.

The returned input dictionary will contain all the necessary namelists and their flags that should be written to the input file of the calculation.

Returns:

a dictionary with input namelists and their flags

write_input_files(folder, parameters)[source]#

Write the prepared parameters to the input file in the sandbox folder.

Parameters:
  • folder – an aiida.common.folders.Folder to temporarily write files on disk.

  • parameters – a dictionary with input namelists and their flags.