All plugins

aiida-kkr

AiiDA plugin for the JuKKR codes

status stable AiiDA >=2.0.0,<3.0.0

General information

Install pip install aiida-kkr
Python import import aiida_kkr
Latest version 2.3.1
Released 2024-12-05

Registry checks

W005: Development status in classifiers (beta) does not match development_status in metadata (stable)
W006: 'development_status' key is deprecated. Use PyPI Trove classifiers in the plugin repository instead.
W008: Unable to reach documentation URL: https://aiida-kkr.readthedocs.io/
Click any code (W001, E001…) to jump to troubleshooting instructions .

Plugins provided

Calculations 5 Parsers 5 Data 1 Workflows 14 Console scripts 1

Entry points

CalcJobs and calculation functions aiida.calculations
  • kkr.kkr

    class: aiida_kkr.calculations.kkr:KkrCalculation

    AiiDA calculation plugin for a KKR calculation.

    InputRequiredValid typesDescription
    parameters true Dict Use a node that specifies the input parameters
    parent_folder true RemoteData Use a remote or local repository folder as parent folder (also for restarts and similar). It should contain all the needed files for a KKR calc, only edited files should be uploaded from the repository.
    anomalous_density false FolderData, NoneType FolderData that contains anomalous density input files for the KKRhost BdG calculation. If these are not give the code looks for them in the retrieved of the parent calculation and takes them from there.
    bfield false Dict, NoneType Non-collinear exteral B-field used for constraint calculations. The Dict node should be of the form initial_noco_angles = Dict(dict={ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'magnitude': [magnitude at_1, ..., magnitude at_N] # list of magnitude of the applied fields in Ry units }) Note: The length of the theta, phi and magnitude lists have to be equal to the number of atoms.
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    deciout_parent false RemoteData, NoneType KkrCalculation RemoteData folder from deci-out calculation
    impurity_info false Dict, NoneType Use a Parameter node that specifies properties for a following impurity calculation (e.g. setting of impurity cluster in scoef file that is automatically created).
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict(dict={ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True/False at_1, ..., True/False at_N] # list of booleans indicating if the direction of the magnetic # moment should be fixed or is allowed relax (True means keep the # direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms.
    kpoints false KpointsData, NoneType Use a KpointsData node that specifies the kpoints for which a bandstructure (i.e. 'qdos') calculation should be performed.
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    retrieve_kkrflex false Bool, NoneType For a GF writeout calculation, determine whether or not the kkrflex_* files are copied to the retrieved (can clutter the database) or are ony left in the remote folder.
    settings_LDAU false Dict, NoneType Settings for running a LDA+U calculation. The Dict node should be of the form settings_LDAU = Dict(dict={'iatom=0':{ 'L': 3, # l-block which gets U correction (1: p, 2: d, 3: f-electrons) 'U': 7., # U value in eV 'J': 0.75, # J value in eV 'Eref_EF': 0., # reference energy in eV relative to the Fermi energy. This is the energy where the projector wavefunctions are calculated (should be close in energy where the states that are shifted lie (e.g. for Eu use the Fermi energy)) }}) Note: you can add multiple entries like the one for iatom==0 in this example. The atom index refers to the corresponding atom in the impurity cluster.
    OutputRequiredValid typesDescription
    output_parameters true Dict results of the KKR calculation
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    301 KKR output file not found
    302 KKR parser retuned an error
    303 Could not find shapefun from voronoi parent
  • kkr.kkrimp

    class: aiida_kkr.calculations.kkrimp:KkrimpCalculation

    AiiDA calculation plugin for a KKRimp calculation.

    InputRequiredValid typesDescription
    host_Greenfunction_folder true RemoteData Use a node that specifies the host KKR calculation contaning the host Green function and tmatrix (KkrCalculation with impurity_info input).
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    host_Greenfunction_folder_Efshift false RemoteData, NoneType Use a node that specifies the host KKR calculation contaning the host Green function and tmatrix with Fermi level shift (used to set Fermi level).
    impurity_info false Dict, NoneType Use a parameter node that specifies properties for a immpurity calculation.
    impurity_potential false SinglefileData, NoneType Use a node that contains the input potential.
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict({ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True, False, ..., True/False], # list of booleans indicating of the direction of the magentic moment should be fixed or is allowed to be updated (True means keep the direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms in the impurity cluster.
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    parameters false Dict, NoneType Use a node that specifies the input parameters (calculation settings).
    parent_calc_folder false RemoteData, NoneType Use a node that specifies a parent KKRimp calculation.
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    rimpshift false Dict, NoneType Shift for atoms in the impurity cluster used in U-transformation. The Dict node should be of the form rimpshift = Dict({'shifts': [[0., 0., 0.], ... ]}) where the shifts are given in atomic units (i.e. the internal KKR units). Note: The length of the 'shifts' attribute should be an array with three numbers indicating the shift for each atom in the impurity cluster.
    settings_LDAU false Dict, NoneType Settings for running a LDA+U calculation. The Dict node should be of the form settings_LDAU = Dict({'iatom=0':{ 'L': 3, # l-block which gets U correction (1: p, 2: d, 3: f-electrons) 'U': 7., # U value in eV 'J': 0.75, # J value in eV 'Eref_EF': 0., # reference energy in eV relative to the Fermi energy. This is the energy where the projector wavefunctions are calculated (should be close in energy where the states that are shifted lie (e.g. for Eu use the Fermi energy)) }}) Note: you can add multiple entries like the one for iatom==0 in this example. The atom index refers to the corresponding atom in the impurity cluster.
    OutputRequiredValid typesDescription
    output_parameters true Dict results of the KKRimp calculation
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    301 Retrieved folder of KKRimp calculation not found.
    302 KKRimp parser returned an error.
  • kkr.kkrimporter

    class: aiida_kkr.calculations.kkrimporter:KkrImporterCalculation

    Importer dummy calculation for a previous KKR run :param remote_workdir: Absolute path to the directory where the job was run. The transport of the computer you link ask input to the calculation is the transport that will be used to retrieve the calculation's files. Therefore, ``remote_workdir`` should be the absolute path to the job's directory on that computer. :type remote_workdir: str :param input_file_names: The file names of the job's input file. :type input_file_name: dict with str entries :param output_file_name: The file names of the job's output file (i.e. the file containing the stdout of kkr.x). :type output_file_name: dict with str entries

    InputRequiredValid typesDescription
    parameters true Dict Use a node that specifies the input parameters
    parent_folder true RemoteData Use a remote or local repository folder as parent folder (also for restarts and similar). It should contain all the needed files for a KKR calc, only edited files should be uploaded from the repository.
    anomalous_density false FolderData, NoneType FolderData that contains anomalous density input files for the KKRhost BdG calculation. If these are not give the code looks for them in the retrieved of the parent calculation and takes them from there.
    bfield false Dict, NoneType Non-collinear exteral B-field used for constraint calculations. The Dict node should be of the form initial_noco_angles = Dict(dict={ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'magnitude': [magnitude at_1, ..., magnitude at_N] # list of magnitude of the applied fields in Ry units }) Note: The length of the theta, phi and magnitude lists have to be equal to the number of atoms.
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    deciout_parent false RemoteData, NoneType KkrCalculation RemoteData folder from deci-out calculation
    impurity_info false Dict, NoneType Use a Parameter node that specifies properties for a following impurity calculation (e.g. setting of impurity cluster in scoef file that is automatically created).
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict(dict={ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True/False at_1, ..., True/False at_N] # list of booleans indicating if the direction of the magnetic # moment should be fixed or is allowed relax (True means keep the # direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms.
    kpoints false KpointsData, NoneType Use a KpointsData node that specifies the kpoints for which a bandstructure (i.e. 'qdos') calculation should be performed.
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    retrieve_kkrflex false Bool, NoneType For a GF writeout calculation, determine whether or not the kkrflex_* files are copied to the retrieved (can clutter the database) or are ony left in the remote folder.
    settings_LDAU false Dict, NoneType Settings for running a LDA+U calculation. The Dict node should be of the form settings_LDAU = Dict(dict={'iatom=0':{ 'L': 3, # l-block which gets U correction (1: p, 2: d, 3: f-electrons) 'U': 7., # U value in eV 'J': 0.75, # J value in eV 'Eref_EF': 0., # reference energy in eV relative to the Fermi energy. This is the energy where the projector wavefunctions are calculated (should be close in energy where the states that are shifted lie (e.g. for Eu use the Fermi energy)) }}) Note: you can add multiple entries like the one for iatom==0 in this example. The atom index refers to the corresponding atom in the impurity cluster.
    OutputRequiredValid typesDescription
    output_parameters true Dict results of the KKR calculation
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    301 KKR output file not found
    302 KKR parser retuned an error
    303 Could not find shapefun from voronoi parent
  • kkr.kkrnano

    class: aiida_kkr.calculations.kkrnano:KKRnanoCalculation

    AiiDA calculation plugin for a KKRnano calculation

    InputRequiredValid typesDescription
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    convert false Bool, NoneType Activate to use together with set up convert code in order to retrieve potential files.
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    nocoangles false Dict, NoneType Dict node that specifies the starting angles for non-colinear calculations (only needed in conjunction with non-colinear calculations, i. e. KORBIT=1 (which is also necessary for SOC calculations!))
    parameters false Dict, NoneType Dict node that specifies the input parameters for KKRnano (k-point density etc.)
    parent_folder false RemoteData, NoneType Use a node that specifies a parent KKRnano or voronoi calculation
    passed_lattice_param_angs false Float, NoneType Use a prespecified lattice constant in Angstrom as input for KKRnano, i. e. in the input.conf file. Default is the length of the longest Bravais vector in the structure object used for the voronoi calculation. This can be useful in the context of treating supercells.
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    strucwithpot false StrucWithPotData, NoneType
    OutputRequiredValid typesDescription
    output_parameters true Dict results of the calculation
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    301 KKRnano output file not found
    302 KKRnano parser retuned an error
  • kkr.voro

    class: aiida_kkr.calculations.voro:VoronoiCalculation

    AiiDA calculation plugin for a voronoi calculation (creation of starting potential and shapefun).

    InputRequiredValid typesDescription
    parameters true Dict Use a node that specifies the input parameters
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    parent_KKR false RemoteData, NoneType Use a node that specifies a parent KKR calculation
    potential_overwrite false SinglefileData, NoneType Use a node that specifies the potential which is used instead of the voronoi output potential
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    shapefun_overwrite false SinglefileData, NoneType Use a node that specifies the shapefun which is used instead of the voronoi output
    structure false StructureData, NoneType Use a node that specifies the input crystal structure
    OutputRequiredValid typesDescription
    output_parameters true Dict results of the calculation
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    301 Voronoi output file not found
    302 Voronoi parser retuned an error
Data node types aiida.data
  • kkr.strucwithpot

    aiida_kkr.data.strucwithpot:StrucWithPotData
CalcJob parsers aiida.parsers
  • kkr.kkrimporterparser

    aiida_kkr.parsers.kkrimporter:KkrImporterParser
  • kkr.kkrimpparser

    aiida_kkr.parsers.kkrimp:KkrimpParser
  • kkr.kkrnanoparser

    aiida_kkr.parsers.kkrnano:KKRnanoParser
  • kkr.kkrparser

    aiida_kkr.parsers.kkr:KkrParser
  • kkr.voroparser

    aiida_kkr.parsers.voro:VoronoiParser
WorkChains and work functions aiida.workflows
  • kkr.STM

    class: aiida_kkr.workflows.kkr_STM:kkr_STM_wc

    Workchain for the Simulation of a (superconducting) STM tip around a magnetic impurity. The workchain uses the (converged) impurity calculation of a host system and combines them with vacuum sites in positions inputs:: :param options: (Dict), computer options :param tip_position: (Dict), specify the position of the STM tip :param impurity_info: (Dict), information about the impurity cluster :param host_calc: (RemoteData), information about the host structure of the sample :param wf_parameters: (Dict), parameters that are used to run the workflow :param kkr: (Code), KKR host code for the writing out kkrflex files :param kkrimp: (Code), KKR impurity code for the normal state impurity scf and BdG impurity DOS calculation :param gf_writeout.params_kkr_overwrite (Dict), overwrite parameters for the GF calculation :param kkr_imp_sub.params_overwrite (Dict), overwrite parameters for the impurity calculation returns:: :return workflow_info: (Dict), Information of workflow results like success, last result node, list with convergence behavior :return STM_dos_data: (XYData), Returns the plot of the lmDOS of the calculation :retrun STM_lmdos_data: (XYData), Returns the interpolated lmDOS of the calculation

    InputRequiredValid typesDescription
    BdG true Data
    gf_writeout true Data
    host_remote true RemoteData Remote Data containing the remote folder from the outputs of the host calculation
    imp_info true Dict Information of the impurity like position in the unit cell, screening cluster, atom type.
    imp_potential_node true SinglefileData Impurity potential node
    kkrimp true Code KKRimp code, always needed.
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict({ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True, False, ..., True/False], # list of booleans indicating of the direction of the magentic moment should be fixed or is allowed to be updated (True means keep the direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms in the impurity cluster.
    kkr false Code, NoneType KKRhost code, needed if gf_dos_remote is not given.
    kkrflex_files false RemoteData, NoneType with this input we can directly load the gf_dos files without calculating them
    metadata false
    options false Dict, NoneType Computer options (resources, quene name, etc.).
    rimpshift false Dict, NoneType Shift for atoms in the impurity cluster used in U-transformation. The Dict node should be of the form rimpshift = Dict({'shifts': [[0., 0., 0.], ... ]}) where the shifts are given in atomic units (i.e. the internal KKR units). Note: The length of the 'shifts' attribute should be an array with three numbers indicating the shift for each atom in the impurity cluster.
    tip_position false Dict, NoneType How many sites will be scanned in the da and db direction (Bravais Lattice). And the layer that is being scanned.
    wf_parameters false Dict, NoneType Workflow parameter (see `kkr_dos_wc.get_wf_defaults()`).
    OutputRequiredValid typesDescription
    STM_dos_data true XyData
    STM_dos_data_lmdos true XyData
    combined_imp_info true Dict
    combined_imp_potential true SinglefileData
    kkrflexfiles true RemoteData
    tip_position true Dict
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The position provided for the STM probe are incorrect
    101 The node provided for the impurity info is not valid
    102 No impurity node has been given in the intput
    103 No impurity info has been given in the input
    104 Neither the kkrflex files nor the KKR builder have been given. Please provide already converged kkrflex files, or the kkr builder to evaluate them
    201 A step in the kkr_imp_dos workflow has failed
  • kkr.bs

    class: aiida_kkr.workflows.bs:kkr_bs_wc

    Workchain for BandStructure calculation, starting from RemoteFolderData of the previous converged KKR calculation remote folder data inputs: :param wf_parameters: (Dict), (optional); Workchain Specifications, contains nepts, tempr, emin (in eV relative to EF), emax (in eV), and RCLUSTZ (can be used to increase the screening cluster radius) keys. :param options: (Dict), (optional); Computer Specifications, scheduler command, parallel or serial :param kpoints: (KpointsData),(optional); Kpoints data type from the structure, but not mendatory as it can be extracted from structure internaly from the remote data :param remote_data: (RemoteData)(mendaory); From the previous kkr-converged calculation. :param kkr: (Code)(mendaory); KKR code specifiaction :param label: (Str) (optional) ; label for WC but will be found in the 'result_wf' output Dict as 'BS_wf_label' key :param description: (Str) (optional) : description for WC but will be found in the 'result_wf' output Dict as 'BS_wf_description' key returns: :out BS_Data : (ArrayData) ; Consist of BlochSpectralFunction, k_points (list), energy_points (list), special_kpoints(dict) :out result_wf: (Dict); work_chain_specifications node, BS_data node, remote_folder node

    InputRequiredValid typesDescription
    kkr true Code KKRhost code, needed to run the qdos KkrCalculation
    remote_data true RemoteData Parent folder of previously converged KkrCalculation
    description false Str, NoneType description for the workflow
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments. See KkrCalculation for details. If this is found in the input potentially extracted nonco angles from the parent calulation are overwritten!
    kpoints false KpointsData, NoneType K-points data for the calculation. If not given the seekpath library is used to find the irreducable k-points of a structure.
    label false Str, NoneType label for the workflow
    metadata false
    options false Dict, NoneType Computer options (walltime etc.) passed onto KkrCalculation
    params_kkr_overwrite false Dict, NoneType Overwrite some input parameters of the parent KKR calculation.
    settings_LDAU false Dict, NoneType Settings for running a LDA+U calculation. The Dict node should be of the form settings_LDAU = Dict(dict={'iatom=0':{ 'L': 3, # l-block which gets U correction (1: p, 2: d, 3: f-electrons) 'U': 7., # U value in eV 'J': 0.75, # J value in eV 'Eref_EF': 0., # reference energy in eV relative to the Fermi energy. This is the energy where the projector wavefunctions are calculated (should be close in energy where the states that are shifted lie (e.g. for Eu use the Fermi energy)) }}) Note: you can add multiple entries like the one for iatom==0 in this example. The atom index refers to the corresponding atom in the impurity cluster.
    wf_parameters false Dict, NoneType Parameters of the bandstructure workflow (see output of kkr_bs_wc.get_wf_default() for more details).
    OutputRequiredValid typesDescription
    BS_Data true ArrayData
    results_wf true Dict
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    161 No remote_data was provided as Input
    162 The code you provided for kkr does not use the plugin kkr.kkr
    163 calc_parameters given are not consistent! Hint: did you give an unknown keyword?
    164 calc_parameters not complete
    165 KKR Band Structure calculation failed
    166 No K-POINTS can be extracted from the structure data
    167 No K-POINTS can be extracted from the primtive structure data rather conventional structure data
    168 Input remote_data node neither output of a KKR/voronoi calculation nor of kkr_scf_wc workflow
  • kkr.combine_imp

    class: aiida_kkr.workflows._combine_imps:combine_imps_wc

    Workchain that combines 2 converged single-impurity calculations to a bigger impurity, reusing the preconverged potentials. This is useful, for example, to study co-doping. Inputs: :param impurity1_output_node:(Dict), required, output node from singel impurity wc, and should be one of the following: * for `kkr_imp_wc`: single_imp_worlfow.outputs.workflow_info * for `kkr_imp_sub_wc`: single_imp_worlfow.outputs.workflow_info * for `KkrimpCalculation`: single_imp_worlfow.outputs.output_parameters :param impurity2_output_node:(Dict), required, output node from second singel impurity wc, and should be one of the following: * for `kkr_imp_wc`: single_imp_worlfow.outputs.workflow_info * for `kkr_imp_sub_wc`: single_imp_worlfow.outputs.workflow_info * for `KkrimpCalculation`: single_imp_worlfow.outputs.output_parameters :offset_imp2:(Dict), required, offset of the second impurity with respect to the first impurity position. e.g. {'index:0 or 1}, the replacement by the second impurity will take place at the same cell or at the next nearest cell respectively. :param scf.kkrimp: (Code), mandatory, KKRimp code needed to submit kkr_imp_wc :param scf.wf_parameters: (Dict), optional, KKRimp code needed to submit kkr_imp_sub_wc :param scf.options: (Dict), optional, computer options for kkr_imp_sub_wc :param host_gf.kkr: (Code), optional, KKR code for submit kkr_flex_wc, needed if remote_data_gf is not given :param host_gf.options: (Dict), optional, computer options for kkr_flex_wc :param host_gf.params_kkr_overwrite: (Dict), optional, needed for kkr calculation for GF writeout :param wf_parameters_overwrite: (Dict), optional, specifications for wf_parameters of kkr_imp_sub_wc as well as well as wf_parameters of kkr_flex_wc. :param gf_host_remote: (RemoteData), optional, remote folder of a previous kkrflex writeout step calculations containing the flexfiles and will be used for combine host GF. Returns: :return workflow_info: (Dict), Information of workflow results :return last_calc_output_parameters: (Dict), link to output parameters of the last called calculation of the scf kkr_imp_sub_wc. :return last_potential: (SingleFileData) link to last output potential of scf kkr_imp_sub_wc step. :return last_calc_remote: (RemoteData) link to remote data of last called calculation of the scf step. :return remote_data_gf: (RemoteData) link to GF_host_remote of outputs of kkr_flex_wc e.g. gf_writeou step (only present of host GF was generated here). :return JijData: (ArrayData) Consists magnetic interaction data among the magnetic impurity atoms, such as vector distance(rx, ry, rz) between atoms, spin interaction magnetude J, Dzyaloshinskii-Moriya vector magnitude, and Dzyaloshinskii-Moriya vector component(Dx, Dy, Dz) :return JijInfo :(Dict) Consists description about the JijData.

    InputRequiredValid typesDescription
    impurity1_output_node true Dict Output node of a single impurity calculation. This can be the output of either the `kkr_imp_wc`, `kkr_imp_sub_wc` workflows or of an `KkrimpCalculation`. Use these output Dict nodes: * for `kkr_imp_wc`: single_imp_workfow.outputs.workflow_info * for `kkr_imp_sub_wc`: single_imp_workfow.outputs.workflow_info * for `KkrimpCalculation`: single_imp_workfow.outputs.output_parameters
    impurity2_output_node true Dict Output node of second single impurity calculation. See help string of `impurity1_output_node` for more details.
    offset_imp2 true Dict Offset of the secon impurity with respect to the first impurity. Can be given either via the 'vector' or the 'index' keys in the dictionary. The 'vector' option allows to give the offset vector in cartesian units and the 'index' option allows to five the offset vector in units of the lattice vectors of the host system's structure.
    scf true Data
    gf_host_remote false RemoteData, NoneType RemoteData node of pre-calculated host Green function (i.e. with kkr_flex_wc). If given then the writeout step of the host GF is omitted.
    host_gf false Data
    metadata false
    wf_parameters_overwrite false Dict, NoneType To add or edit wf_parameters in scf namespace and add run optioins, if needed
    OutputRequiredValid typesDescription
    last_calc_output_parameters true
    last_calc_remote true
    last_potential true
    workflow_info true
    JijData false
    JijInfo false
    remote_data_gf false
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    700 The writeout of the host GF failed
    800 Impurity input is not a single impurity calculation.
    850 i_neighbor_inplane needs to be positive and bigger than 0 for in-plane neighbors
    900 Host structures of impurity 1 and impurity 2 are not identical!
    950 The impurity calculations have different NSPIN values
    999 ERROR: take a look
  • kkr.decimation

    class: aiida_kkr.workflows._decimation:kkr_decimation_wc

    Workchain a decimation calculation with KKR starting from a thick slab (center potential should be bulk-like). The workchain - creates the structure nodes of the substrate and decimation region from thick slab structure - creates starting potentials of the slab structure - runs auxiliary voronoi steps to get starting setup correctly for the KKR calculations - runs the deci-out step in serial - runs the decimation step The workflow starts either from a converged thick film of from a previous decimation calculation (skips the structure and starting potential setup and the voronoi steps). The workflow parameters input can be: {'nkz' : 30, # number of k-points in z-direction for substrate 'nprinc': 4, # number of layer in principle layer 'nplayer': 4, # number of principle layers (naez deci: nprinc*nplayer) 'dosmode': False, # run DOS calculation 'dos_params': {'emin_EF': -5.0, # EMIN-EF in eV 'emax_EF': 3.0, # EMAX-EF in eV 'nepts': 96, # number of points in contour 'tempr': 100, # smearing temperature 'kmesh': [50, 50, 50]}, # k-mesh used in dos calculation } :param wf_parameters: Dict node with workchain parameters (see kkr_decimation_wc.get_wf_defaults()) :param options: Dict node with specifications for the computer (used in decimation step only) :param remote_data: mandatory RemoteData node of either a parent slab or previous decimation calculation :param kkr: mandatory Code node with KKR code for running deci-out and decimation steps :param voronoi: Code node that is mandatory if starting from slab calculation. Is the voronoi code for auxiliary calculations :param kpoints: KpointsData node that triggers a band structure calculation. The kpoints specify the k-point path along which the bandstructure is computed with the qdos mode of KKRhost. :param calc_parameters: Dict node that contains KKR parameters which overwrites settings from the slab parent. :returns structure_decimate: StructureData node of the structure of the decimation region. :returns structure_substrate: StructureData node of the structure of thesubstrate lattice continuation. :returns out_params_calc_deci_out: Dict node of the output parameters of the deci-out calculation. :returns out_params_calc_decimate: Dict node of the output parameters of the decimation calculation. :returns out_remote_calc_decimate: RemoteData node of the decimation calculation. :returns out_retrieved_calc_decimate: retrieved FolderData node of the decimation calculation. :returns dos_data: XyData node with the DOS data at finite imaginary part in the energy contour. Only present in DOS mode. :returns dos_data_interpol: XyData node with the interpolated DOS data onto the real axis. Only present in DOS mode.

    InputRequiredValid typesDescription
    kkr true Code KKRhost code.
    remote_data true RemoteData Parent calculation (either previous decimation calculation, then voronoi steps are skipped or slab calculation).
    calc_parameters false Dict, NoneType If given overwrites KKR parameters starting from slab params (can be used to run DOS for instance).
    calc_parameters_decimate false Dict, NoneType Overwrite calculation parameters in the decimation step
    kpoints false KpointsData, NoneType If given this triggers a bandstructure (i.e. qdos) calculation.
    metadata false
    options false Dict, NoneType Computer options used in the deicmation step (voronoi and deci-out steps run serially but use the walltime given here).
    options_deci_out false Dict, NoneType Computer options used in the deci-out step (createion of decifile, if not provided, this step will run in serial).
    shapefun_deci_overwrite false SinglefileData, NoneType Use a node that specifies the shapefun which is used instead of the voronoi output for the decimation step
    shapefun_substrate_overwrite false SinglefileData, NoneType Use a node that specifies the shapefun which is used instead of the voronoi output for the deci-out step
    voronoi false Code, NoneType Voronoi code. Only needed if remote_data is slab claculation and not a previous decimation run.
    wf_parameters false Dict, NoneType parameters for decimation setup (used only if not started from previous decimation calculation).
    OutputRequiredValid typesDescription
    out_params_calc_deci_out true Dict Output parameter node of deci-out calculation.
    out_params_calc_decimate true Dict Output parameter node of decimation calculation.
    out_remote_calc_decimate true RemoteData Remote folder of decimation calculation.
    out_retrieved_calc_decimate true FolderData Retrieved folder of decimation calculation.
    structure_decimate true StructureData Structure of decimation region.
    structure_substrate true StructureData Structure of substrate lattice continuation.
    dos_data false XyData DOS data with finite imaginary part in the energy contour.
    dos_data_interpol false XyData interpolated DOS data onto the real axis.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    300 Given remote_data is not correct (needs to be a slab or decimation KKR calculation)
    301 The code you provided for kkr does not use the plugin kkr.kkr
    302 The code you provided for voronoi does not use the plugin kkr.voro
    303 The voronoi step for the starting potential of the substrate failed.
    304 The voronoi step for the starting potential of the decimation region failed.
    305 The deci-out step (writeout of continuation GF) failed.
  • kkr.dos

    class: aiida_kkr.workflows.dos:kkr_dos_wc

    Workchain a DOS calculation with KKR starting from the remoteData node of a previous calculation (either Voronoi or KKR). :param wf_parameters: (Dict); Workchain specifications :param options: (Dict); specifications for the computer :param remote_data: (RemoteData), mandatory; from a KKR or Vornoi calculation :param kkr: (Code), mandatory; KKR code running the dos calculation :return result_kkr_dos_wc: (Dict), Information of workflow results like Success, last result node, list with convergence behavior

    InputRequiredValid typesDescription
    kkr true Code KKRhost Code node used to run the DOS calculation.
    remote_data true RemoteData RemoteData node of the parent calculation.
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments. See KkrCalculation for details. If this is found in the input potentially extracted nonco angles from the parent calulation are overwritten!
    metadata false
    options false Dict, NoneType Computer options used by the workflow.
    params_kkr_overwrite false Dict, NoneType Overwrite some input parameters of the parent KKR calculation.
    settings_LDAU false Dict, NoneType Settings for running a LDA+U calculation. The Dict node should be of the form settings_LDAU = Dict(dict={'iatom=0':{ 'L': 3, # l-block which gets U correction (1: p, 2: d, 3: f-electrons) 'U': 7., # U value in eV 'J': 0.75, # J value in eV 'Eref_EF': 0., # reference energy in eV relative to the Fermi energy. This is the energy where the projector wavefunctions are calculated (should be close in energy where the states that are shifted lie (e.g. for Eu use the Fermi energy)) }}) Note: you can add multiple entries like the one for iatom==0 in this example. The atom index refers to the corresponding atom in the impurity cluster.
    wf_parameters false Dict, NoneType Workflow parameter (see `kkr_dos_wc.get_wf_defaults()`).
    OutputRequiredValid typesDescription
    results_wf true Dict Results collected by the workflow.
    dos_data false XyData XyData node of the parsed DOS output.
    dos_data_interpol false XyData XyData node of the parsed DOS output, interpolated onto the real axis.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    161 No remote_data was provided as Input
    162 The code you provided for kkr does not use the plugin kkr.kkr
    163 calc_parameters given are not consistent! Hint: did you give an unknown keyword?
    164 calc_parameters not complete
    165 dos_params given in wf_params are not valid
    166 KKR dos calculation failed
  • kkr.eos

    class: aiida_kkr.workflows.eos:kkr_eos_wc

    Workchain of an equation of states calculation with KKR. Layout of the workflow: 1. determine V0, scale_range, etc. from input 2. run voro_start for V0 and smallest volume 2.1 get minimum for RMTCORE (needs to be fixed for all calculations to be able to compare total energies 3. submit kkr_scf calculations for all volumes using RMTCORE setting determined in step 2 4. collect results

    InputRequiredValid typesDescription
    kkr true Code Code entry for the KKRhost calculations.
    structure true StructureData Initial structure for which the EOS will be calculated.
    voronoi true Code Code entry for the Voronoi calculations.
    calc_parameters false Dict, NoneType KKR input parameters. Everything (except structural factors) which would normally be written in the inputcard.
    metadata false
    options false Dict, NoneType
    wf_parameters false Dict, NoneType Workfunction specific parameters, controlling the behavior of the EOS workchain.
    OutputRequiredValid typesDescription
    eos_results true Dict
    explicit_kpoints false KpointsData
    get_explicit_kpoints_path_parameters false Dict
    gs_structure false StructureData
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    221 ERROR: inputs invalid
    222 ERROR: need at least 3 successful calculations
    223 ERROR: nsteps is smaller than 3, need at least three data points to do fitting
    224 given fitfunction name not valid
    225 ERROR: kkr_startpot was not successful. Check you inputs.
  • kkr.gf_writeout

    class: aiida_kkr.workflows.gf_writeout:kkr_flex_wc

    Workchain of a kkr_flex calculation to calculate the Green function with KKR starting from the RemoteData node of a previous calculation (either Voronoi or KKR). :param options: (Dict), Workchain specifications :param wf_parameters: (Dict), Workflow parameters that deviate from previous KKR RemoteData :param remote_data: (RemoteData), mandatory; from a converged KKR calculation :param kkr: (Code), mandatory; KKR code running the flexfile writeout :param impurity_info: Dict, mandatory: node specifying information of the impurities in the system :return workflow_info: (Dict), Information of workflow results like success, last result node, list with convergence behavior :return GF_host_remote: (RemoteData), host GF of the system

    InputRequiredValid typesDescription
    impurity_info true Dict
    remote_data true RemoteData
    kkr false Code, NoneType
    metadata false
    options false Dict, NoneType
    params_kkr_overwrite false Dict, NoneType Set some input parameters of the KKR calculation.
    wf_parameters false Dict, NoneType
    OutputRequiredValid typesDescription
    GF_host_remote true RemoteData
    workflow_info true Dict
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    101 ERROR: the 'impurity_info' input Dict node could not be used
    102 ERROR: the code you provided for kkr does not use the plugin kkr.kkr
    103 ERROR: No remote_data was provided as Input
    104 ERROR: calc_parameters given are not consistent! Hint: did you give an unknown keyword?
    105 ERROR: calc_parameters misses keys
    106 ERROR: KKR calculation to write out kkrflex files unsuccessful
    107 ERROR: Could not extract value for Fermi level from parent calculation
  • kkr.imp

    class: aiida_kkr.workflows.kkr_imp:kkr_imp_wc

    Workchain of a kkrimp calculation starting either from scratch (with a structure and impurity_info node), or with a converged host potential and impurity startpotentials, ... to calculate the converged host-impurity potential of the system. :param options: (Dict), Workchain specifications :param wf_parameters: (Dict), specifications for the kkr impurity workflow :param voro_aux_parameters: (Dict), specification for the auxiliary voronoi calculation for the impurity :param kkrimp: (Code), mandatory: KKRimp code converging the host-imp-potential :param kkr: (Code), mandatory: KKR code for calculation the host potential :param voronoi: (Code), mandatory: Voronoi code to generate the impurity startpot :param remote_data_gf: (RemoteData): remote folder of a previous kkrflex calculation containing the flexfiles ... :param remote_data_host: (RemoteData): remote folder of a converged KKR host calculation :return workflow_info: (Dict), Information of workflow results :return last_calc_output_parameters: (Dict), output parameters of the last called calculation :return last_calc_info: (Dict), information of the last called calculation

    InputRequiredValid typesDescription
    gf_writeout true Data
    impurity_info true Dict Information of the impurity like position in the unit cell, screening cluster, atom type.
    kkrimp true Code KKRimp code used to converge the impurity calculation
    scf true Data
    voronoi true Code Voronoi code used to create the impurity starting potential.
    kkr false Code, NoneType KKRhost code used to run GF writeout step.
    metadata false
    options false Dict, NoneType Options for running the codes (walltime etc.).
    options_voronoi false Dict, NoneType Options for running the Voronoi code (if differing from general `options` node)
    params_kkr_overwrite false Dict, NoneType Set some input parameters of the KKR calculation for the GF writeout step.
    remote_data_gf false RemoteData, NoneType RemoteData node of precomputed host Green function.
    remote_data_gf_Efshift false RemoteData, NoneType RemoteData node of precomputed host Green function with Fermi level shift (overwrite kkrflex_green and tmat files from first remote_data_gf node.
    remote_data_host false RemoteData, NoneType RemoteData node of the converged host calculation. Used to write out the host Green function.
    startpot false SinglefileData, NoneType Set starting potential (e.g. from preconverged calculation
    voro_aux_parameters false Dict, NoneType Parameters for the auxiliary voronoi starting potential workflow.
    voro_params_overwrite false Dict, NoneType If given, overwrite the some parameters used as input for auxiliary voronoi calculation of starting potential.
    wf_parameters false Dict, NoneType Parameters for the KKRimp selfconsistency workflow.
    OutputRequiredValid typesDescription
    last_calc_info true Dict
    last_calc_output_parameters true Dict
    remote_data_gf true RemoteData
    workflow_info true Dict
    converged_potential false SinglefileData
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    141 ERROR: one or more of the codes you provided do not use the necessary plugins: kkr.voro, kkr.kkr, kkr.kkrimp
    142 ERROR: since GF writeout step has to be conducted, 'kkrcode' is needed as an input
    143 ERROR: neither converged host remote nor GF writeout remote is given as an input. One of them is needed to proceed with this workflow!
    144 ERROR: sub-workflow for KKRimp convergence failed
    145 ERROR: sub-workflow Kkr_startpot failed (look for failure of voronoi calculation).
  • kkr.imp_BdG

    class: aiida_kkr.workflows.imp_BdG:kkrimp_BdG_wc

    Workchain for one-shot BdG impurity DOS calculation from a converged normal state host calculation. 1) Normal state impurity potential scf 2) One-shot BdG DOS calcluation a) Writing out of the BdG kkrflex DOS files b) One-shot BdG impurity DOS The intermediate steps (1 & 2a) can be skipped by providing the corresponding nodes as inputs to the workflow. inputs:: :param options: (Dict), computer options :param impurity_info: (Dict), information about the impurity cluster :param voronoi: (Code), Voronoi code for creating the impurity starting potential :param kkr: (Code), KKR host code for the writing out kkrflex files :param kkrimp: (Code), KKR impurity code for the normal state impurity scf and BdG impurity DOS calculation :param BdG_settings: (Dict), set BdG parameters :param imp_scf.startpot: (SinglefileData), pre-converged impurity potential used to start the impurity scf calculation :param imp_scf.converged_potential: (SinglefileData), converged impurity potential, skips the impurity scf calculation if provided :param imp_scf.wf_parameters: (Dict), parameters for the kkr impurity scf :param imp_scf.gf_writeout.params_kkr_overwrite: (Dict), set some input parameters of the KKR calculation for the GF writeout step of impurity scf workchain :param imp_scf.gf_writeout.options: (Dict), computer settings :param imp_scf.scf.params_overwrite: (Dict), set some input parameters of the KKR impurity scf :param imp_scf.options: (Dict), computer settings :param imp_scf.remote_data_host: (RemoteData), parent folder of converged host normal state KkrCalculation :param dos.wf_parameters: (Dict), parameters for the DOS calculation :param dos.gf_dos_remote: (RemoteData), node of precomputed host GF for DOS energy contour :param dos.gf_writeout.params_kkr_overwrite: (Dict), set some input parameters of the KKR calculation for the GF writeout step of imßpurity dos workchain :param dos.gf_writeout.host_remote: (RemoteData), parent folder of kkrflex writeout step for DOS calculation :param dos.gf_writeout.kkr: (Code), KKR code for writing out of kkrflex files for impurity DOS calculation :param dos.gf_writeout.options: (Dict), computer settings :param dos.options: (Dict), computer settings returns:: :return workflow_info: (Dict), Information on workflow results :return output_parameters: (Dict), output parameters of the workflow :return dos_data: (XyData), impurity DOS data output node :return dos_data_interpol: (XyData), interpolated DOS data output node :return impurity_potential: (SinglefileData), converged normal state impurity potential node :return gf_host_BdG: (RemoteData), kkrflex writeout step files of DOS calculation

    InputRequiredValid typesDescription
    BdG_scf true Data
    dos true Data
    imp_scf true Data
    kkrimp true Code KKRimp code used to converge the impurity calculation
    BdG_settings false Dict Define BdG parameters
    calc_DOS false Bool, NoneType Set this to TRUE to calculate DOS
    impurity_info false Dict, NoneType Information of the impurity like position in the unit cell, screening cluster, atom type.
    kkr false Code, NoneType KKRhost code, needed to run the KkrCalculation
    metadata false
    options false Dict, NoneType Computer options (walltime etc.) passed onto KkrCalculation, fall back to settings from parent calculation if not given
    voronoi false Code, NoneType Voronoi code used to create the impurity starting potential.
    OutputRequiredValid typesDescription
    impurity_potential true SinglefileData
    dos_data false XyData
    dos_data_interpol false XyData
    dos_data_lm false XyData
    dos_data_lm_interpol false XyData
    gf_host_BdG false RemoteData
    output_parameters false Dict
    workflow_info false Dict
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The code you provided for kkr does not use the plugin kkr.kkr
    101 The code you provided for kkrimp does not use the plugin kkr.kkrimp
    102 The code you provided for voronoi does not use the plugin kkr.voronoi
    200 Parent calculation is not valid
  • kkr.imp_dos

    class: aiida_kkr.workflows.kkr_imp_dos:kkr_imp_dos_wc

    Workchain of a DOS calculation for an impurity system starting from a converged impurity calculation or workflow :param options: (Dict), computer options :param wf_parameters: (Dict), specifications for the DOS :param kkr: (Code), mandatory: KKR code for gf_writeout step :param kkrimp: (Code), mandatory: KKRimp code for DOS calculation :param imp_host_pot: (SinglefileData), mandatory: impurity startpotential :return workflow_info: (Dict), Information on workflow results :return last_calc_output_parameters: (Dict), output parameters of the last called calculation :return last_calc_info: (Dict), information of the last called calculation

    InputRequiredValid typesDescription
    BdG true Data
    gf_writeout true Data
    kkrimp true Code KKRimp code, always needed.
    gf_dos_remote false RemoteData, NoneType RemoteData node of precomputed host GF for DOS energy contour.
    host_remote false RemoteData, NoneType RemoteData node of the (converged) host calculation.
    imp_pot_sfd false SinglefileData, NoneType impurity potential single file data. Needs also impurity_info node.
    impurity_info false Dict, NoneType impurity info node that specifies the relation between imp_pot_sfd to the host system. Mandatory if imp_pot_sfd is given.
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict({ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True, False, ..., True/False], # list of booleans indicating of the direction of the magentic moment should be fixed or is allowed to be updated (True means keep the direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms in the impurity cluster.
    kkr false Code, NoneType KKRhost code, needed if gf_dos_remote is not given.
    kkrimp_remote false RemoteData, NoneType RemoteData node of previous (converged) KKRimp calculation.
    metadata false
    options false Dict, NoneType Computer options (resources, quene name, etc.).
    params_kkr_overwrite false Dict, NoneType Set some input parameters of the KKR calculation.
    rimpshift false Dict, NoneType Shift for atoms in the impurity cluster used in U-transformation. The Dict node should be of the form rimpshift = Dict({'shifts': [[0., 0., 0.], ... ]}) where the shifts are given in atomic units (i.e. the internal KKR units). Note: The length of the 'shifts' attribute should be an array with three numbers indicating the shift for each atom in the impurity cluster.
    settings_LDAU false Dict, NoneType Settings for LDA+U run (see KkrimpCalculation for details).
    wf_parameters false Dict, NoneType DOS workflow parameters (energy range, etc.).
    OutputRequiredValid typesDescription
    dos_data true XyData
    last_calc_info true Dict
    last_calc_output_parameters true Dict
    workflow_info true Dict
    dos_data_interpol false XyData
    dos_data_interpol_lm false XyData
    dos_data_lm false XyData
    gf_dos_remote false RemoteData RemoteData node of the computed host GF.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    220 Unknown problem detected.
    221 Unable to find the parent remote_data node that led to the input impurity calculation. You need to specify `host_remote` and `impurity_info` nodes.
    222 The gf_writeout workflow was not succesful, cannot continue.
    223 The input nodes `imp_pot_sfd` and `kkrimp_remote` are given but are mutually exclusive
    224 KKRhost code node (`inputs.kkr`) is missing if gf_dos_remote is not given.
    225 `host_remote` node is missing if gf_dos_remote is not given.
    226 KKRimp sub-workflow failed.
  • kkr.imp_sub

    class: aiida_kkr.workflows.kkr_imp_sub:kkr_imp_sub_wc

    Workchain of a kkrimp self consistency calculation starting from the host-impurity potential of the system. (Not the entire kkr_imp workflow!) :param options: (Dict), Workchain specifications :param wf_parameters: (Dict), specifications for the calculation :param host_imp_startpot: (RemoteData), mandatory; input host-impurity potential :param kkrimp: (Code), mandatory; KKRimp code converging the host-imp-potential :param remote_data: (RemoteData), mandatory; remote folder of a previous kkrflex calculation containing the flexfiles ... :param kkrimp_remote: (RemoteData), remote folder of a previous kkrimp calculation :param impurity_info: (Dict), Parameter node with information about the impurity cluster :return workflow_info: (Dict), Information of workflow results like success, last result node, list with convergence behavior :return host_imp_pot: (SinglefileData), output potential of the sytem

    InputRequiredValid typesDescription
    kkrimp true Code
    host_imp_startpot false SinglefileData, NoneType
    impurity_info false Dict, NoneType
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. These values will be written into the `kkrflex_angle` input file of KKRimp. The Dict node should be of the form initial_noco_angles = Dict({ 'theta': [theta_at1, theta_at2, ..., theta_atN], # list theta values in degrees (0..180) 'phi': [phi_at1, phi_at2, ..., phi_atN], # list phi values in degrees (0..360) 'fix_dir': [True, False, ..., True/False], # list of booleans indicating of the direction of the magentic moment should be fixed or is allowed to be updated (True means keep the direction of the magnetic moment fixed) }) Note: The length of the theta, phi and fix_dir lists have to be equal to the number of atoms in the impurity cluster.
    kkrimp_remote false RemoteData, NoneType
    metadata false
    options false Dict, NoneType
    params_overwrite false Dict, NoneType Dict of parameters that are given to the KKRimpCalculation. Overwrites automatically set values!
    remote_data false RemoteData, NoneType
    remote_data_Efshift false RemoteData, NoneType
    rimpshift false Dict, NoneType Shift for atoms in the impurity cluster used in U-transformation. The Dict node should be of the form rimpshift = Dict({'shifts': [[0., 0., 0.], ... ]}) where the shifts are given in atomic units (i.e. the internal KKR units). Note: The length of the 'shifts' attribute should be an array with three numbers indicating the shift for each atom in the impurity cluster.
    settings_LDAU false Dict, NoneType LDA+U settings. See KKRimpCalculation for details.
    wf_parameters false Dict, NoneType
    OutputRequiredValid typesDescription
    workflow_info true Dict
    host_imp_pot false SinglefileData
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    121 ERROR: Not both host-impurity potential and GF remote found in the inputs. Provide either both of them or a RemoteData from a previous kkrimp calculation.
    122 ERROR: The code you provided for KKRimp does not use the plugin kkr.kkrimp
    123 ERROR: Unable to extract parent paremeter node of input remote folder
    124 ERROR: No calculation parameters provided
    125 ERROR: Last KKRcalc in SUBMISSIONFAILED state! stopping now
    126 ERROR: Maximal number of KKR restarts reached. Exiting now!
    127 ERROR: Last_remote could not be set to a previous succesful calculation
    128 ERROR: There are still missing calculation parameters
    129 ERROR: Parameters could not be updated
    130 ERROR: Last calculation is not in finished state
    131 The input `remote_data` node has no valid calculation parent.
    132 The parent calculation of the input `remote_data` node was not succesful.
    133 ERROR: Last calculation does not have an output potential.
  • kkr.jij

    class: aiida_kkr.workflows.jijs:kkr_jij_wc

    Workchain for calculation of exchange coupling constants Jij and Dij if parent calculation used the SOC solver. inputs:: :param wf_parameters: optional Dict node of workchain specifications, contains settings like Jij radius cutoff, selection of sites for i and j and numerical cutoffs. None values in the accuracy sub-dict means that values from parent calculation are coptied. :param remote_data: mandatory RemoteData node of parent (i.e. converged) KkrCalculation :param kkr: optional Code for KKRhost executable (if not given the same as in the parent calculation is used) :param options: optional Dict computer options like scheduler command or parallelization returns:: :return jij_data: ArrayData with the arrays 'Jij_expanded' (Table of all Jij and Dij pairs) and 'positions_expanded' (positions of all ij pairs) :return structure_jij_sites: StructureData

    InputRequiredValid typesDescription
    kkr true Code KKRhost code, needed to run the Jij KkrCalculation
    remote_data true RemoteData Parent folder of previously converged KkrCalculation
    metadata false
    options false Dict, NoneType Computer options (walltime etc.) passed onto KkrCalculation, fall back to settings from parent calculation if not given
    params_kkr_overwrite false Dict, NoneType Overwrite some input parameters of the parent KKR calculation.
    wf_parameters false Dict, NoneType Parameters of the bandstructure workflow (see output of kkr_bs_wc.get_wf_default() for more details).
    OutputRequiredValid typesDescription
    jij_data true ArrayData
    results_wf true Dict
    structure_jij_sites true StructureData
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    160 The code you provided for kkr does not use the plugin kkr.kkr
    161 Parent calculation is not valid
    162 KKR Band Structure calculation failed
    163 Parsing of Jij calculations failed
  • kkr.scf

    class: aiida_kkr.workflows.kkr_scf:kkr_scf_wc

    Workchain for converging a KKR calculation (SCF). It converges the charge potential. Two paths are possible: (1) Start from a structure and run a voronoi calculation first, optional with calc_parameters (2) Start from an existing Voronoi or KKR calculation, with a remoteData :param wf_parameters: (Dict), Workchain Specifications :param options: (Dict); specifications for the computer :param structure: (StructureData), Crystal structure :param calc_parameters: (Dict), Voronoi/Kkr Parameters :param remote_data: (RemoteData), from a KKR, or Voronoi calculation :param voronoi: (Code) :param kkr: (Code) :return output_kkr_scf_wc_para: (Dict), Information of workflow results like Success, last result node, list with convergence behavior minimum input example: 1. Code1, Code2, Structure, (Parameters), (wf_parameters) 2. Code2, remote_data, (Parameters), (wf_parameters) maximum input example: 1. Code1, Code2, Structure, Parameters wf_parameters: {'queue_name' : String, 'resources' : dict({"num_machines": int, "num_mpiprocs_per_machine" : int}) 'walltime' : int} 2. Code2, (remote-data), wf_parameters as in 1. Hints: 1. This workflow does not work with local codes!

    InputRequiredValid typesDescription
    kkr true Code KKRhost code node which will run the KkrCalculations
    calc_parameters false Dict, NoneType KKR-specific calculation parameters (LMAX etc.), usually set up with the help of the `kkrparams` class.
    initial_noco_angles false Dict, NoneType Initial non-collinear angles for the magnetic moments of the impurities. See KkrCalculation for details.
    metadata false
    options false Dict, NoneType Computer settings used by the calculations in the workflow (see also help string of wf_parameters).
    params_kkr_overwrite false Dict, NoneType Set some input parameters of the KKR calculation.
    remote_data false RemoteData, NoneType RemoteFolder node of a preconverged calculation. Can be used as a starting point to skip the Voronoi step.
    startpot_overwrite false SinglefileData, NoneType Potential SinglefileData, can be used to overwrite the starting potential from Voronoi (the shapefun will be used though and thus needs to be compatible). This can be used to construct a better starting potential from a preconverged calculation (e.g. in a smaller unit cell).
    structure false StructureData, NoneType Input structure for which a calculation is started with a VoronoiCalculation. Can be skipped if a previous KkrCalculation is given with the `remote_data` input node.
    voronoi false Code, NoneType Voronoi code node, needed only if `structure` input node is given.
    wf_parameters false Dict, NoneType Settings for the workflow. Use `KkrCalculation.get_wf_defaults()` to get the default values and default options.
    OutputRequiredValid typesDescription
    output_kkr_scf_wc_ParameterResults true Dict
    final_dosdata_interpol false XyData
    last_InputParameters false Dict
    last_RemoteData false RemoteData
    last_calc_out false Dict
    last_noco_angles false Dict
    results_vorostart false Dict
    starting_dosdata_interpol false XyData
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    221 Unable to extract parent paremeter node of input remote folder
    222 The code you provided for kkr does not use the plugin kkr.kkr
    223 The code you provided for voronoi does not use the plugin kkr.voro
    224 ERROR: StructureData was provided, but no voronoi code was provided
    225 ERROR: No StructureData nor remote_data was provided as Input
    226 ERROR: kkr_startpot_wc step failed!
    227 DOS run unsuccessful. Check inputs.
    228 ERROR: calc_parameters given are not consistent! Missing mandatory keys
    229 ERROR: calc_parameters given are not consistent! Hint: did you give an unknown keyword?
    230 ERROR: calc_parameters not given as input but are needed!
    231 ERROR: parameter update unsuccessful: some key, value pair not valid!
    232 ERROR: calc_parameters misses keys
    233 ERROR: last_remote could not be set to a previous successful calculation
    234 ERROR: maximal number of KKR restarts reached. Exiting now!
    235 ERROR: last KKRcalc in SUBMISSIONFAILED state
  • kkr.startpot

    class: aiida_kkr.workflows.voro_start:kkr_startpot_wc

    Workchain create starting potential for a KKR calculation by running voronoi and getting the starting DOS for first checks on the validity of the input setting. Starts from a structure together with a KKR parameter node. :param wf_parameters: (Dict), Workchain specifications :param options: (Dict), specifications for the computer :param structure: (StructureData), aiida structure node to begin calculation from (needs to contain vacancies, if KKR needs empty spheres) :param kkr: (Code) :param voronoi: (Code) :param calc_parameters: (Dict), KKR parameter set, passed on to voronoi run. :return result_kkr_startpot_wc: (Dict), Information of workflow results like Success, last result node, dos array data

    InputRequiredValid typesDescription
    voronoi true Code Voronoi code
    calc_parameters false Dict, NoneType KKR-specific parameters passed onto the VoronoiCalculation (lmax etc.).
    kkr false Code, NoneType Kkr code, only needed only if DOS is calculated.
    metadata false
    options false Dict, NoneType Computer options passed onto the calculations
    parent_KKR false RemoteData, NoneType RemoteData node of a KKR calculation which is used to overwrite the output potential Voronoi constructs (typically used to increase lmax). Cannot be used with a different structure in the input since the structure is extracted from the parent_KKR.
    startpot_overwrite false SinglefileData, NoneType Potential which can be used instead of the output potential Voronoi constructs.
    structure false StructureData, NoneType Structure for which the starting potential should be constructed, not needed if parent_KKR is given (typically used to increase the lmax but use the output potential of the parent_KKR as starting potential).
    wf_parameters false Dict, NoneType Parameters that control the behavior of the workflow
    OutputRequiredValid typesDescription
    results_vorostart_wc true Dict
    last_doscal_dosdata false XyData
    last_doscal_dosdata_interpol false XyData
    last_doscal_results false Dict
    last_params_voronoi false Dict
    last_voronoi_remote false RemoteData
    last_voronoi_results false Dict
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    201 The code you provided for kkr does not use the plugin kkr.kkr
    202 The code you provided for voronoi does not use the plugin kkr.voro
    203 Voronoi calculation unsuccessful. Check inputs
    204 Voronoi calculation unsuccessful. Check inputs.
    205 Voronoi calculation unsuccessful. Structure inconsistent. Maybe you need empty spheres?
    206 DOS run unsuccessful. Check inputs.
    207 Can only take either structure or parent_KKR as input.
    208 Need either structure or parent_KKR as input.
Console scripts console_scripts
  • aiida-kkr

    aiida_kkr.cmdline:cmd_root